Pack imagens em PDF

2

Tenho muitas capturas de tela que foram tiradas nas mesmas condições: mesma resolução de tela, mesma escala de exibição, visualizador de PDF no mesmo tamanho, nível de zoom do PDF, etc.

Eles são de diferentes larguras e alturas. As mais largas têm largura de texto normal de papel DIN A4 (retrato).

Eu quero que eles sejam colocados em um PDF (tamanho do papel: DIN A4, retrato), mas não um por página como

convert * output.pdf

faria, mas com o maior número possível por página. A ordem é importante (ordem alfanumérica dos nomes dos arquivos; os arquivos são denominados {1..n}.png .). As imagens não devem ser esticadas em largura para corresponder à largura do texto do PDF, mas devem ter um fator de zoom comum (constante).

Todas as imagens estão no formato PNG.

Eu prefiro um modo de linha de comando para conseguir isso, então fazer isso repetidamente - possivelmente de forma automatizada - é fácil.

Algum tipo de separador entre as capturas de tela seria bom, então é fácil ver onde um termina e o próximo começa.

    
por UTF-8 16.08.2017 / 22:50

1 resposta

1

Esperei por uma resposta até alguns minutos antes de ter que terminar. Então eu hackeei algo que funciona usando a expansão da lista do bash:

\documentclass{report}
\usepackage{graphicx}
\usepackage[a4paper, total={6in, 10in}]{geometry}

\begin{document}
\includegraphics[scale=.15]{../1}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../2}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../3}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../4}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../5}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../6}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../7}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../8}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../9}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../10}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../11}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../12}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../13}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../14}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../15}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../16}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../17}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../18}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../19}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../20}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../21}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../22}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../23}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../24}\
\rule{\textwidth}{1pt}
\includegraphics[scale=.15]{../25}\
% [...]

\end{document}

É super feio porque não usa um loop porque eu não sei como fazer loops no LaTeX, e é preciso usar a expansão da lista do bash novamente ou preencher os nomes dos caminhos manualmente quando o número de capturas de tela aumenta.

Aceito qualquer resposta que faça o trabalho também e seja sempre um pouco menos feia.

    
por 17.08.2017 / 18:17