Eu tenho um PDF, feito com o Inkscape, que usa cores transparentes. Esta imagem deve ser usada em um documento LaTeX.
Embora preservar a transparência seja agradável para a edição, pode ser um problema para a impressão. A impressão geralmente envolve a conversão de PDF para PS. Como o Postscript não suporta transparência, isso requer tanto
- planificação, ou seja, criando um gráfico vetorial que funcione sem transparência
ou
- rasterização, ou seja, renderizando uma imagem de bitmap.
Quando um documento PDF que contém essa figura é impresso (ou convertido em PS) usando o Evince (ou Cairo ou Ghostscript), a página inteira é renderizada como um bitmap, tornando as fontes feias (diferentes das outras páginas). (O Adobe Acrobat lida bem com esses PDFs.)
Infelizmente, converter as figuras PDF em EPS (antes de incluí-las no LaTeX) não ajuda muito, porque os pdftops e pdf2ps (novamente Cairo ou Ghostscript) rasterizam a imagem, ou seja, renderizam um bitmap (salvo como EPS). (Isso é um pouco melhor, porque não afeta a página inteira, mas eu ainda prefiro gráficos vetoriais.)
Como posso nivelar a transparência com o Inkscape ou outro software no Linux?
Respostas:
Uma maneira de contornar a rasterização ruim é converter manualmente o documento PDF em postscript, porque quando você chama o CUPS por meio do evince ou qualquer outra interface, ele será convertido de qualquer maneira.
Você pode tentar
pdftops -r 1200 document.pdf
aumentar a resolução do padrão baixo de 300 e, em seguida, imprimir o postscript resultante. No entanto, com as impressoras em funcionamento, isso não produziu uma melhoria significativa. O texto comum em páginas com e sem imagens transparentes ainda parecia diferente - embaçado versus claro.Então, acabei usando o Acrobat Professional (em uma máquina Windows) para nivelar as imagens transparentes usadas no meu documento de látex, o que dava ótimos resultados. Verifique se
Transparency Flattener Preset
está na[High Resolution]
configuração avançada de impressão. Meu colega mencionou que talvez alguém pudesse enviar um arquivo PDF por FTP diretamente para uma impressora de rede a jato de laser moderna, ignorando a conversão de postscript. Eu não tentei isso.Seria ótimo ter uma solução somente para Linux para esse problema.
fonte
Eu tive o mesmo problema e esta é a minha solução (para referência futura):
Tentei muitas coisas e até agora a melhor solução de trabalho que encontrei na internet foi renderizar o PDF completamente como uma imagem
pdf2ps
eps2pdf13
, mas o resultado não foi satisfatório para mim, porque todas as formas vetoriais foram perdidas. Eu queria renderizar apenas as partes críticas, mas manter os gráficos vetoriais.O que fez o truque para mim foi isolar todas as partes críticas no inkscape e colocá-las em uma camada separada (nas minhas imagens, essas eram todas as sombras). Tornei apenas essa camada (e a camada de fundo) visível e a exportei para PNG, renderizando efetivamente todos os efeitos de transparência, mas apenas eles. Eu o importei de volta e o usei em uma nova camada. Após inverter todas as visibilidades da camada (camada de transparência: desativada, todas as outras: ativada), o PDF exportado funcionou perfeitamente com o LaTeX e era imprimível sem renderizar a página inteira como imagem.
TL; DR:
fonte
Uma maneira é criar uma caixa branca no Inkscape do mesmo tamanho da sua página e enviá-la para a camada inferior. Isso exportará sua imagem com um fundo branco em vez de transparente.
fonte
Abri o arquivo pdf usando o Ubuntu / Gimp e imprimi uma página de cada vez, verificando a visualização da impressão a cada vez.
fonte
então
fonte