{"id":1263,"date":"2010-08-06T11:42:07","date_gmt":"2010-08-06T14:42:07","guid":{"rendered":"http:\/\/meiradarocha.jor.br\/news\/?p=1263"},"modified":"2017-12-31T11:32:43","modified_gmt":"2017-12-31T14:32:43","slug":"scribus-script-para-cortar-imagens-pelo-tamanho-do-quadro","status":"publish","type":"post","link":"https:\/\/meiradarocha.jor.br\/news\/2010\/08\/06\/scribus-script-para-cortar-imagens-pelo-tamanho-do-quadro\/","title":{"rendered":"Scribus: script para cortar imagens pelo tamanho do quadro"},"content":{"rendered":"<div id=\"attachment_1270\" style=\"width: 310px\" class=\"wp-caption alignright\"><a href=\"http:\/\/meiradarocha.jor.br\/news\/wp-content\/uploads\/2010\/05\/Propriedades_007.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-1270\" class=\"size-medium wp-image-1270 \" title=\"Corte de foto\" src=\"http:\/\/meiradarocha.jor.br\/news\/wp-content\/uploads\/2010\/08\/foto_cesnors_antonio_marcos_demeneghi_2009-300x199.jpg\" alt=\"Corte de foto\" width=\"300\" height=\"199\" \/><\/a><p id=\"caption-attachment-1270\" class=\"wp-caption-text\">Corte de foto: apenas as vaquinhas apareceriam, mas toda a foto seria inclu\u00edda no arquivo PDF<\/p><\/div>\n<p>Desenvolvi este <a href=\"http:\/\/wiki.scribus.net\/index.php\/Image_crop,_resize_and_CMYK_conversion._Save_and_reload_in_TIFF_format\"><em>script<\/em> Python para cortar uma imagem conforme o tamanho do quadro<\/a>, ajustar sua resolu\u00e7\u00e3o em DPI, grav\u00e1-la e recarreg\u00e1-la em formato TIFF, no programa de editora\u00e7\u00e3o Scribus.<\/p>\n<p>O objetivo disto \u00e9 deixar menor o arquivo PDF de sa\u00edda, aumentar sua velocidade de processamento pela gr\u00e1fica e diminuir a chance de erros &#8220;de sa\u00edda&#8221; pelo RIP PostScript. Se isto n\u00e3o for feito, as fotos inteiras s\u00e3o inclu\u00eddas no arquivo de sa\u00edda, mesmo que uma pequena parte delas seja enquadrada (veja imagem das vaquinhas).<!--more--><\/p>\n<p>Por exemplo, a <a href=\"http:\/\/issuu.com\/meiradarocha\/docs\/meio_mundo_2009-08-06a-web\">revista-laborat\u00f3rio do curso\u00a0 de Jornalismo da UFSM<\/a> em Frederico Westphalen usa uma p\u00e1gina \u00edndice com dezenas de miniaturas das fotos usadas nas mat\u00e9rias. Esta p\u00e1gina ficaria muito &#8220;pesada&#8221; para ser processada, pois s\u00f3 um detalhe das fotos \u00e9 usado e, em tamanho pequeno, os DPI ficam muito altos desnecessariamente.<\/p>\n<p>O <em>script<\/em> s\u00f3 deve ser usado quando toda a\u00a0 diagrama\u00e7\u00e3o estiver pronta. Cortar as imagens antes disto s\u00f3 dificultaria a diagrama\u00e7\u00e3o, pois, durante este trabalho, as fotos normalmente s\u00e3o redimensionadas v\u00e1rias vezes para que se ajuste o texto ao espa\u00e7o dispon\u00edvel (as imagens s\u00e3o os elementos &#8220;el\u00e1sticos&#8221; da diagrama\u00e7\u00e3o).<\/p>\n<h3>[Atualiza\u00e7\u00e3o]<\/h3>\n<div id=\"attachment_2878\" style=\"width: 282px\" class=\"wp-caption alignright\"><a href=\"http:\/\/meiradarocha.jor.br\/news\/wp-content\/uploads\/2010\/08\/crop_image_gui.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-2878\" class=\"size-full wp-image-2878\" title=\"Interface gr\u00e1fica do cortador\/conversor de fotos\" src=\"http:\/\/meiradarocha.jor.br\/news\/wp-content\/uploads\/2010\/08\/crop_image_gui.png\" alt=\"Interface gr\u00e1fica do cortador\/conversor de fotos\" width=\"272\" height=\"222\" srcset=\"https:\/\/meiradarocha.jor.br\/news\/wp-content\/uploads\/2010\/08\/crop_image_gui.png 272w, https:\/\/meiradarocha.jor.br\/news\/wp-content\/uploads\/2010\/08\/crop_image_gui-150x122.png 150w\" sizes=\"auto, (max-width: 272px) 100vw, 272px\" \/><\/a><p id=\"caption-attachment-2878\" class=\"wp-caption-text\">Interface gr\u00e1fica do cortador\/conversor de fotos<\/p><\/div>\n<p>Coloquei uma <a href=\"http:\/\/wiki.scribus.net\/canvas\/Image_crop,_resize_and_color_conversion_GUI\">interface gr\u00e1fica no script<\/a> que facilita muito.<\/p>\n<h3>Ajustes<\/h3>\n<p>No in\u00edcio do <em>script<\/em> h\u00e1 vari\u00e1veis que posso definir conforme o tipo de sa\u00edda:<\/p>\n<pre>imageResolution = 200  # resolution for printing\r\nfileType = '.tif' # force tiff format<\/pre>\n<p>A resolu\u00e7\u00e3o normal de imagens para trabalhos impressos \u00e9 de 200 dots per inch (DPI) para jornais e 300 DPI para revistas e trabalhos com mais qualidade. Coloco o\u00a0 valor desejado em &#8220;<strong>imageResolution<\/strong>&#8220;. Tamb\u00e9m poderia escolher o formato de imagem &#8220;<strong>.jpg<\/strong>&#8220;, mas \u00e9 desaconselh\u00e1vel, pois TIFF \u00e9 o formato padr\u00e3o para impressos e gera menos problemas de sa\u00edda. Nunca se deve usar formato PNG ou GIF pois muitos RIPs PostScript n\u00e3o os aceitam. A imagem n\u00e3o sai no fotolito ou na chapa.<\/p>\n<h3>Instala\u00e7\u00e3o<\/h3>\n<p>Para instalar o <em>script<\/em>, coloquei-os nos diret\u00f3rios default (<strong>\/usr\/share\/scribus-ng\/scripts<\/strong> no Ubuntu, <strong>c:\\Arquivos de programas\\Scribus 1.5.1\\share\\scripts\\<\/strong> no Windows). Assim, o <em>script<\/em> aparece no menu &#8220;<strong>Script &gt; Scripts do Scribus<\/strong>&#8220;.<\/p>\n<p>De outra forma, tamb\u00e9m pode-se ir ao menu &#8220;<strong>Script &gt; Executar script&#8230;<\/strong>&#8221; e procurar o arquivo de <em>script<\/em> em qualquer lugar onde se tenha colocado-o. Depois de usado a primeira vez, ele fica em &#8220;<strong>Script &gt; Scripts recentes&#8230;<\/strong>&#8220;.<\/p>\n<h3>Uso<\/h3>\n<p>Uso o <em>script<\/em> selecionando o quadro de imagem e escolhendo o <em>script<\/em> pelo menu. A convers\u00e3o \u00e9 feita em segundos. O arquivo gerado tem o mesmo nome do arquivo original, mais\u00a0 o final &#8220;<strong>_cortado(1).tif<\/strong>&#8220;. O n\u00famero \u00e9 incrementado se o arquivo j\u00e1 existe, caso a mesma foto seja usada v\u00e1rias vezes na mesma publica\u00e7\u00e3o.<\/p>\n<h3>Usando a Python ImageLibrary (PIL)<\/h3>\n<p>Para a manipula\u00e7\u00e3o das imagens, usei a PIL. Tive dificuldades com nomes de arquivos acentuados, que geravam erros de &#8220;arquivo n\u00e3o encontrado&#8221;, embora o Scribus trabalhasse sem problemas com eles. Depois de muita pesquisa pela internet, estudo de manuais e tentativas e erros, descobri a solu\u00e7\u00e3o do problema: usar &#8220;encode&#8221; nos nomes de arquivos passados \u00e0 PIL:<\/p>\n<pre># Pegar a codifica\u00e7\u00e3o do sistema operacional\r\nencoding = sys.getfilesystemencoding()\r\n# Abrir imagem pelo PIL\r\nimport Image\r\nimageFile = 'arquivo_com_acentua\u00e7\u00e3o.jpg'\r\nimg = Image.open(imageFile<span style=\"color: #ff0000;\">.encode(encoding)<\/span>) # encode to let PIL handle accented filenames\r\n# gravar imagem pelo PIL\r\nimageResolution = 200\r\nimg.save(imageFile<span style=\"color: #ff0000;\">.encode(encoding)<\/span>,dpi=(imageResolution,imageResolution))<\/pre>\n<h3>Bugs<\/h3>\n<p>O <em>script<\/em> funciona sem problemas no Windows, mas\u00a0 no <strong>Ubuntu 10.04<\/strong> ele congela o Scribus, depois que termina, se rodado como <em>script<\/em> pelos menus. Mas pode ser colado no console do Scripter e executado com a tecla <kbd>F9<\/kbd>. Deve ser problema no m\u00f3dulo PIL do Python, j\u00e1 que o comando que causa o problema \u00e9 &#8220;import Image&#8221;.<\/p>\n<p>Al\u00e9m disso, o Scribus n\u00e3o coloca o caminho principal do Pythoon em sys.path, provocando erro na biblioteca regular expression (re). Isto \u00e9 corrigido no script:<\/p>\n<pre>if sys.platform\u00a0!= 'win32':\r\n    sys.path.append(\"\/usr\/lib\/python2.6\") # prevent 'import re' PIL bug in Scribus 1.3.8, Ubuntu 10.04<\/pre>\n<p>Isto foi resolvido a partir do Ubuntu 12.04, a agora o PIL n\u00e3o tranca mais o Scribus.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Desenvolvi este script Python para cortar uma imagem conforme o tamanho do quadro, ajustar sua resolu\u00e7\u00e3o em DPI, grav\u00e1-la e recarreg\u00e1-la em formato TIFF, no programa de editora\u00e7\u00e3o Scribus. O [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24,25,15,16,53],"tags":[],"class_list":["post-1263","post","type-post","status-publish","format-standard","hentry","category-design-grafico","category-diagramacao","category-editoracao","category-scribus","category-software-livre"],"_links":{"self":[{"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/posts\/1263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/comments?post=1263"}],"version-history":[{"count":2,"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/posts\/1263\/revisions"}],"predecessor-version":[{"id":4418,"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/posts\/1263\/revisions\/4418"}],"wp:attachment":[{"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/media?parent=1263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/categories?post=1263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/meiradarocha.jor.br\/news\/wp-json\/wp\/v2\/tags?post=1263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}