Estou atrás de uma impressora virtual que pega cada página de saída "impressa" e converte em várias imagens (uma imagem para cada página) ... por exemplo. .jpg ou .png, etc.
Estou procurando especificamente algo para trabalhar com o Open-Office Writer, mas presumo que essa impressora virtual funcione de maneira geral para qualquer aplicativo que possa enviar sua saída para uma "impressora".
Existe algo assim no repositório Ubuntu?
PS. Quero uma imagem "normal" por página. Por exemplo, muitas imagens são produzidas.
... (como a impressora virtual Snagit no Windows)
openoffice.org
virtual-printer
Peter.O
fonte
fonte
svg
?Respostas:
Precisa ser um arquivo de imagem em vez de um PDF? Caso contrário, você poderia usar
Com o ImageMagick, você pode converter PDFs em imagens da linha de comando, mas talvez isso esteja ficando muito demorado. Além disso, embora eu não o tenha instalado na máquina em uso, li no comentário do blog que o GIMP pode abrir PDFs ...?
fonte
Bem, finalmente encontrei uma maneira de fazê-lo produzir jpegs numerados individualmente; um por página de saída impressa.
- (veja também UPDATE, abaixo) -
Primeiro, adicionei uma "Impressora PostScript Genérica" ..
Panel -> Sysetm -> Administration -> Printing
ou
$ system-config-printer
O próximo passo é, no OpenOffice, escolher
[*] Print to file
(na caixa de diálogo Imprimir)e salvar o arquivo PostScrip para onde quiser, por exemplo. ~ / print-to-file.ps
A etapa final é usar
ghostscript
para fazer a conversão. Possui muitos dispositivos de saída .Você pode listar os dispositivos via:
$ gs -h
Para gerar imagens jpeg numeradas sequencialmente , este é o comando:
Para o formato png , altere o sufixo do nome do arquivo para .png.
e use png16 / png256 / etc para -sDEVICE
ATUALIZAÇÃO:
Acabei de perceber que o ghostscript também pode receber um .pdf como entrada ...
Então, tentei usar o .pdf da opção Exportar para PDF do OpenOffice , como entrada para
gs
(ghostscript) ...O arquivo de origem .odt era somente texto e as imagens resultantes têm um aprendizado ligeiramente melhor , por isso pode valer a pena comparar o ".pdf" como imput, vs ".ps" para sua situação específica. fonte, imagens etc.
Em resumo (para este método pdf):
$ gs -dBATCH -dNOPAUSE -sOutputFile=/home/fred/print-to-file.pdf.%d.jpeg -sDEVICE=jpeg /home/fred.print-to-file.pdf
ATUALIZAÇÃO 2:
Embora esse método funcione, a qualidade das imagens de saída não estava acima do par.
Aumentar a qualidade do jpg para 100% ainda produzia resultados abaixo do padrão.
Mesmo imagens difíceis estavam produzindo aberrações no texto (sem anti-aliasing?).
Talvez haja uma maneira de ajustar ainda mais o ghostscript , mas comecei a procurar em outro lugar e, graças à sugestão de Roddie , mudei de assunto e definitivamente prefiro o método "não-impressora virtual" do
unoconv
+ImageMagick
(mencionado no meu comentário à resposta de Roddie) ... A qualidade da imagem do ImageMagick é ótima! ..Um script de "duas linhas" desses dois comandos criaria uma "Ação Nautilus" simples e ignoraria a necessidade de usar diretamente o OpenOffice.
Mas se você deseja converter um documento não salvo em imagens, precisará usar o "cups-pdf" ou o menu "Arquivo-> Salvar como PDF", em vez de "desconectar".
fonte
Primeiro imprima seu documento como pdf e, em seguida, você pode convertê-lo em jpg ou png usando o GIMP.
Imprimindo seu documento como pdf:
Abra o documento no escritório aberto e, em seguida, clique na opção pdf para exportar o documento como PDF ou no menu Ir para arquivo e escolha Exportar como PDF.
Convertendo pdf para jpg | png:
Abra seu pdf no GIMP (clique com o botão direito do mouse em seu pdf e escolha Abrir com o GIMP Image Editor )
Agora, novamente, vá ao menu do arquivo e selecione a opção Salvar como. Agora escolha o formato correto. Escolha JPG ou PNG para salvar o arquivo PDF no formato de imagem.
fonte
Não é algo que você precise fazer no linux, mas
cups-pdf
parece que ele pode fazer o trabalho por você. Está disponível no centro de software ou através do terminal:sudo apt-get install cups-pdf
você pode verificar se tudo funcionou em Sistema> Administração> Impressão, e você deve ter uma impressora chamada pdf. Como instalado como uma impressora no sistema, ele deve funcionar com qualquer aplicativo que normalmente imprima.
Por padrão, eles são salvos em uma pasta chamada PDF na sua pasta pessoal. É possível mudar isso alterando
/etc/cups/cups-pdf.conf
. Procure a variável OUT e altere-a para o que quiser.Não tenho certeza de que haja alguma maneira de alterar o local de salvamento por uso, talvez alguém com mais conhecimento possa elaborar.
Como uma observação lateral, o gravador do Open Office já tem uma opção para exportar para pdf no menu arquivo.
fonte
imagemagick
pode converter pdfs em imagens, e há uma seção de pós-processamento nacups-pdf.conf
qual leva qualquer script para ser executado após a criação do arquivo. Se você não encontrar outras opções, pode valer a pena tentar.Nós pegamos as fontes do cups-pdf e as modificamos para criar svg.
Dessa forma, temos uma impressora de rede virtual que cria svg para todos os nossos usuários do MS Windows.
Como explicado acima, a vantagem para usuários de Linux é menor, pois eles sempre podem gerar ps ou pdf e usar o inkscape para criar svg.
No entanto, mesmo para usuários de Linux, pode ser conveniente 'apenas imprimir' e pegar o svg resultante no diretório de usuários do servidor.
A limitação que temos agora é que apenas 1 página (1 arquivo svg) pode ser impressa por vez.
Estou procurando alguém interessado em empacotar o código e colocá-lo em um ubuntu ppa.
Você pode me enviar um e-mail para ftoth AT telfort.nl
Balsa
fonte
Você também deve poder exportar o arquivo para um PDF, diretamente no menu Arquivo do Office aberto.
fonte