Desenvolvi este script Python para cortar uma imagem conforme o tamanho do quadro, ajustar sua resolução em DPI, gravá-la e recarregá-la em formato TIFF, no programa de editoração Scribus.
O objetivo disto é deixar menor o arquivo PDF de saída, aumentar sua velocidade de processamento pela gráfica e diminuir a chance de erros “de saída” pelo RIP PostScript. Se isto não for feito, as fotos inteiras são incluídas no arquivo de saída, mesmo que uma pequena parte delas seja enquadrada (veja imagem das vaquinhas).
Por exemplo, a revista-laboratório do curso de Jornalismo da UFSM em Frederico Westphalen usa uma página índice com dezenas de miniaturas das fotos usadas nas matérias. Esta página ficaria muito “pesada” para ser processada, pois só um detalhe das fotos é usado e, em tamanho pequeno, os DPI ficam muito altos desnecessariamente.
O script só deve ser usado quando toda a diagramação estiver pronta. Cortar as imagens antes disto só dificultaria a diagramação, pois, durante este trabalho, as fotos normalmente são redimensionadas várias vezes para que se ajuste o texto ao espaço disponível (as imagens são os elementos “elásticos” da diagramação).
Coloquei uma interface gráfica no script que facilita muito.
No início do script há variáveis que posso definir conforme o tipo de saída:
imageResolution = 200 # resolution for printing fileType = '.tif' # force tiff format
A resolução normal de imagens para trabalhos impressos é de 200 dots per inch (DPI) para jornais e 300 DPI para revistas e trabalhos com mais qualidade. Coloco o valor desejado em “imageResolution“. Também poderia escolher o formato de imagem “.jpg“, mas é desaconselhável, pois TIFF é o formato padrão para impressos e gera menos problemas de saída. Nunca se deve usar formato PNG ou GIF pois muitos RIPs PostScript não os aceitam. A imagem não sai no fotolito ou na chapa.
Para instalar o script, coloquei-os nos diretórios default (/usr/share/scribus-ng/scripts no Ubuntu, c:\Arquivos de programas\Scribus 1.5.1\share\scripts\ no Windows). Assim, o script aparece no menu “Script > Scripts do Scribus“.
De outra forma, também pode-se ir ao menu “Script > Executar script…” e procurar o arquivo de script em qualquer lugar onde se tenha colocado-o. Depois de usado a primeira vez, ele fica em “Script > Scripts recentes…“.
Uso o script selecionando o quadro de imagem e escolhendo o script pelo menu. A conversão é feita em segundos. O arquivo gerado tem o mesmo nome do arquivo original, mais o final “_cortado(1).tif“. O número é incrementado se o arquivo já existe, caso a mesma foto seja usada várias vezes na mesma publicação.
Para a manipulação das imagens, usei a PIL. Tive dificuldades com nomes de arquivos acentuados, que geravam erros de “arquivo não encontrado”, embora o Scribus trabalhasse sem problemas com eles. Depois de muita pesquisa pela internet, estudo de manuais e tentativas e erros, descobri a solução do problema: usar “encode” nos nomes de arquivos passados à PIL:
# Pegar a codificação do sistema operacional encoding = sys.getfilesystemencoding() # Abrir imagem pelo PIL import Image imageFile = 'arquivo_com_acentuação.jpg' img = Image.open(imageFile.encode(encoding)) # encode to let PIL handle accented filenames # gravar imagem pelo PIL imageResolution = 200 img.save(imageFile.encode(encoding),dpi=(imageResolution,imageResolution))
O script funciona sem problemas no Windows, mas no Ubuntu 10.04 ele congela o Scribus, depois que termina, se rodado como script pelos menus. Mas pode ser colado no console do Scripter e executado com a tecla F9. Deve ser problema no módulo PIL do Python, já que o comando que causa o problema é “import Image”.
Além disso, o Scribus não coloca o caminho principal do Pythoon em sys.path, provocando erro na biblioteca regular expression (re). Isto é corrigido no script:
if sys.platform != 'win32': sys.path.append("/usr/lib/python2.6") # prevent 'import re' PIL bug in Scribus 1.3.8, Ubuntu 10.04
Isto foi resolvido a partir do Ubuntu 12.04, a agora o PIL não tranca mais o Scribus.
Colheita de soja. Foto: Wenderson Araujo/Trilux Fotógrafos de mídias rurais já perderam a conta das…
João Batista MezzomoAuditor fiscal O que está por trás de tudo o que está acontecendo…
A.k.a. "SexyCyborg". A mulher do século 21. Naomi Wu testa seu iluminador de implantes na…
A principal ferramenta do jornalista de dados é a planilha, tipo LibreOffice Calc, M.S. Excel…
Rita Almeida, 9 de março de 2019 Psicóloga Rita Almeida: não delirantes, mas deliroides. Não…
Rafael Azzi5 de outubro de 2018 Você se pergunta como um candidato com tão poucas…
View Comments
Marvellous script. Thx!
Now, there are a GUI.
You're welcome! :)