Importação automática de imagens através de script: Difference between revisions

From Scribus Wiki
Jump to navigation Jump to search
Line 32: Line 32:
* Todas as imagens são ajustadas para coresponder ao tamanho do quadro, sendo o mesmo tamanho de quadro em cada script.. Ajustar um quadro para uma imagem individual é uma tarefa melhor feita no Scribus após você ter feito e carregado o arquivo. Estes scripts foram desenvolvidos para fazerem o trabalho "grosso". Vamos deixar que o Scribus faça o trabalho refinado.
* Todas as imagens são ajustadas para coresponder ao tamanho do quadro, sendo o mesmo tamanho de quadro em cada script.. Ajustar um quadro para uma imagem individual é uma tarefa melhor feita no Scribus após você ter feito e carregado o arquivo. Estes scripts foram desenvolvidos para fazerem o trabalho "grosso". Vamos deixar que o Scribus faça o trabalho refinado.


* Once you have entered the directory, selected the image formats, then click OK. Expect some time to go by, during which Scribus frames and icons may blink in and out.
* Uma vez que você tenha fornecido o diretório e selecionado os formatos das imagens, basta clicar em OK. Aguarde um tempo (durante este processo os quadros e os ícones do Scribus podem piscar).


* When the script is done, the formerly blank Tk window now says, "Now click the X in the upper right corner of this window", meaning the X in the corner of the Tk window to delete this window. This ends the script, and Scribus takes over.
* Quando o script terminar, a janela TK que estava branca agora dirá: "Now click the X in the upper right corner of this window" ''(Agora clique no X no canto superior direito desta janela)'', significando que o X no canto da janela Tk irá apagar esta janela. Isto termina o script e o Scribus assume.


* At this point, Scribus is, in essence, loading this file for display, so you may have some considerable time (minutes) go by, depending on the number and size of the images and the speed of your processor.
* Até este ponto o Scribus está - em teoria - carregando o arquivo para exibição. Esse processo pode demorar até minutos dependendo do número e tamanhos de imagens, além das configurações da sua máquina (memória, processador etc).


* If at this point Scribus crashes, you most likely have used up all your RAM and swap memory, and at this time there is no protection built into the script. If you're lucky, Scribus may have saved an emergency file starting with ''"DocumentN..."'', but if it's too big (the file itself may not be very large, it's the memory requirements of all the images that's the source of the problem), Scribus still won't be able to load it, since it will still bump up against the memory problem.
* Se nesse ponto o Scribus quebrar/travar, provavelmente toda a memória RAM e swap foi usada no seu sistema. Neste ponto ainda não há uma proteção incluida neste script contra essa possibilidade. Se você tiver sorte, o Scribus terá salvo um arquivo de emergência começando com '''DocumentN...''', mas se o arquivo for grande demais, o Scribus não conseguirá o carregar, já que a memória continuará criando essa restição (o arquivo por sí só não é grande, o requerimento de memória para todas as imagens. que é a fonte do problema).


== Additional Notes ==
== Additional Notes ==

Revision as of 19:24, 28 January 2006

Este artigo é parte da seção de Scripts_e_Plugins.
Scripts para iniciantes Scripts de extensão/PyQt Questões sobre Py Plugins Outros
Voltar para a página principal

Versão em inglês.

Básico

A razão de eu ter criado esse scripts, primeiramente, foi a de aprender alguma coisa sobre Python, e poder cirar um arquivador de imagens ou album no Scribus. Geralmente eu uso o script para organizar as imagens digitais que eu tiro nas minhas viagens. Uma das vantagens do Scribus, é que o seu formato de arquivo .sla não inclui nenhum dado de imagem mas apenas suas referências, então este arquivo de catálogo é relativamente pequeno. Em algums coleções, eu irei adicionar anotações, fazer um PDF e as imprimir em um album de verdade.

Inicialmente eu criei um programa em Perl a parte (scribalbum.pl) para fazer isto fora do Scribus. Isto ainda funciona, mesmo tendo sido projetado para os formatos de arquivo da versão 1.2.x. Uma de suas vantagens é a velocidade com que ele gera diversas páginas com informações. Já sua desvantagem, é que ele foi criado para o formato 1.2.x, ou seja, potêncialmente incompatível com as novas versões (e até um tanto quanto perigoso). Ajustar-lo para gerar os documentos na nova versão é mais trabalho do que eu gostaria. Melhor carregar-lo no Scribus 1.3.x e então salvar de lá mesmo.

As implementações Python tem a vantagem de usar o próprio Scribus para criar i documento, então, enquanto o script funcionar, o arquivo resultante estará atualizado. Outro benefício é a facilidade de modificação do script para ser ajustado para outras necessidades.

scribalbum.pl

Eu não irei dizer nada sobre este programa. Se você conhece alguma coisa de Perl, você verá que isto não é "elegante", mas faz o trabalho. Ele opera através da linha de comando.

scribalbum.py e scribalbuma4.py

Estes scripts são similares, ambos criam um novo documento e quantas páginas forem necessárias. O scribalbum.py coloca quatro imagens desalinhadas uma das outras em uma página tamanho carta americana, permitindo anotações nos espaços remanescentes. Já o scribalbum4.py coloca 8 imagens por página A4 com pouco espaço livre remanescente. Ambas as versões farão um quadro de texto no canto superior esquerdo de cada página, indicando qual o diretório que a imagem está. Cada imagem possui um título indicando o nome de arquivo da imagem.


Aqui estão alguns dos recursos que ambos os scripts compartilham:

  • Quando você executa o script no Scribus, você verá duas janelas Tk, uma branca e outra que pergunta o nome do diretório e possui caixas de marcação. Você pode usar um caminho relativo mas um absoluto será mais preciso.
  • Você pode marcar um ou mais formatos de imagens que você quer. TODAS as imagens daquele tipo serão incluidas - você não pode selecionar e/ou escolher imagens individuais. Como escrita, elas aparecerão na ordem alfa-numérica no seu documento, sendo a coluna da esquerda a primeira. Você poderia ir esquerda-direita esquerda abaixo mudando a lógica.
  • PDFs serão importados, mas somente a primeira página.
  • Por enquanto este script não irá importar SVGs. O que você tem é um quadro branco. Essa é uma das coisas na lista do meu "a fazer" (TODO).
  • Todas as imagens são ajustadas para coresponder ao tamanho do quadro, sendo o mesmo tamanho de quadro em cada script.. Ajustar um quadro para uma imagem individual é uma tarefa melhor feita no Scribus após você ter feito e carregado o arquivo. Estes scripts foram desenvolvidos para fazerem o trabalho "grosso". Vamos deixar que o Scribus faça o trabalho refinado.
  • Uma vez que você tenha fornecido o diretório e selecionado os formatos das imagens, basta clicar em OK. Aguarde um tempo (durante este processo os quadros e os ícones do Scribus podem piscar).
  • Quando o script terminar, a janela TK que estava branca agora dirá: "Now click the X in the upper right corner of this window" (Agora clique no X no canto superior direito desta janela), significando que o X no canto da janela Tk irá apagar esta janela. Isto termina o script e o Scribus assume.
  • Até este ponto o Scribus está - em teoria - carregando o arquivo para exibição. Esse processo pode demorar até minutos dependendo do número e tamanhos de imagens, além das configurações da sua máquina (memória, processador etc).
  • Se nesse ponto o Scribus quebrar/travar, provavelmente toda a memória RAM e swap foi usada no seu sistema. Neste ponto ainda não há uma proteção incluida neste script contra essa possibilidade. Se você tiver sorte, o Scribus terá salvo um arquivo de emergência começando com DocumentN..., mas se o arquivo for grande demais, o Scribus não conseguirá o carregar, já que a memória continuará criando essa restição (o arquivo por sí só não é grande, o requerimento de memória para todas as imagens. que é a fonte do problema).

Additional Notes

I have yet to try this on the brand-new Windows version of Scribus. An initial issue will be making sure you have Python on your Windows machine.

If I get some specific questions, I can add notes (or others can add them) about how to modify scribalbum.py and scribalbuma4.py to fit other needs.