Gerar um PDF a partir da linha de comando e preencher a página com o maior número possível de cópias de uma imagem?

1

Eu tenho pesquisado muito sobre isso, mas não consegui encontrar uma solução.

Como posso gerar um PDF com um formato de papel arbitrário (digamos A4) e preencher suas páginas com o maior número possível de cópias de uma imagem?

Estou procurando uma solução de CLI, usando programas como ImageMagick, Poppler, Ghostscript e outros.

Meu caso de uso: Alterei a senha para os convidados Wi-Fi no meu escritório, queria enviar um belo PDF A4 composto por uma grade apertada, cada célula contendo a rede SSID e WPA-Key, para ser impressa, cortada peças distribuídas aos convidados que visitam.

Não foi possível encontrar uma maneira de fazer isso e recorreu a colar as imagens minúsculas manualmente em uma página usando o MS Word.

EDIT: como essas imagens minúsculas parecia. Apenas digitou em um editor de texto e fez uma captura de tela do texto.

Eu alterarei essa senha uma vez a cada três meses, então gostaria de ter uma solução automatizada / de script. Não precisa ser perfeito, mas precisa ser rápido.

    
por zool 13.10.2018 / 01:09

1 resposta

2

Com base nas dimensões da imagem e no arquivo arquivo JPG que você postou na sua pergunta , quando eu estiver certo clique nele e selecione Salvar imagem como ... , o arquivo salvo Image lista de atributos como. . .

  • Dimensions: 2850 x 1237
  • Width: 2850 pixels
  • Height: 1237 pixels

Consegui24dessasimagenscompactadasemumarquivodeimagemusandoosmétodos/comandosabaixocom ImageMagick , que descreverei abaixo. Embora eu não forneça a lógica para copiar o número "x" das imagens originais para obter o resultado esperado, essas tarefas são triviais e presumo que você não precisará de ajuda ou exemplos para essa parte como tal - se sim, embora apenas Avise-se me.

Etapas detalhadas. . .

Lembrete: Eu não forneci lógica para copiar ou excluir arquivos em que mencionei que esse tipo de operação é necessário e suponho que você possa resolver isso, mas avise-me o contrário.

  1. Você desejará fazer várias cópias do arquivo de imagem de chave SSID e WPA em um /folder em algum lugar, para que você tenha um total de 6 imagens para executar o primeiro comando ImageMagick .

  2. Quando esses 6 arquivos de imagem estiverem no /folder , você executará esse comando contra eles para criar um novo arquivo de saída chamado out.jpg no meu exemplo:

    convert /folder/*.jpg -gravity center -append /output/out.jpg
    
  3. Você agora excluirá os 6 arquivos originais "SSID e WPA-key image", copiará o novo out.jpg para o /folder e copiá-lo até ter 4 arquivos no total em /folder e então execute este comando:

    convert /folder/*.jpg -gravity center +append /output/nout.jpg
    
  4. Você pode excluir as 4 cópias desses arquivos em /output que você copiou por # 3 e depois executar este comando contra o recém criado nout.jpg que foi criado com o comando acima para obter uma página a4 formatada arquivo:

    convert /output/nout.jpg -page a4 /output/print.jpg
    
  5. Agora, imprima o arquivo de imagem print.jpg e verifique se ele está bem, cortado, desmembrado etc.

Observação:Seasdimensõesdaimagemedaimageminicialforemdiferentesenãosedimensionaremadequadamentecomoresultadofinal,vocêdesejarájogarcomonúmero"x" de imagens por Cada etapa que referenciei, e depois de executar o comando nessas imagens, você desejará abrir os arquivos de saída correlacionados e verificar se consegue descobrir o número "x" que deve ser para cada etapa. Testar isso pode ser oportuno, mas é outra tarefa trivial que é tão fácil quanto descobrir.

Mais recursos

por 13.10.2018 / 05:18