Transparência do PDF de nivelamento

9

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 bom para edição, pode ser um problema para impressão. A impressão geralmente envolve conversão de PDF para PS. Como o Postscript não suporta transparência, isso requer

  • alisando, ou seja, criando um gráfico vetorial que funciona sem transparência

ou

  • rasterização, ou seja, renderizar uma imagem de bitmap.

Quando um documento PDF contendo essa figura é impresso (ou convertido em PS) usando Evince (ou Cairo ou Ghostscript), toda a página é 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 em PDF para EPS (antes de incluí-las no LaTeX) não ajuda muito, pois tanto o pdftops quanto o pdf2ps (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 achatar a transparência com o Inkscape ou outro software no Linux?

    
por Jan 30.04.2012 / 16:49

4 respostas

5

Uma forma de contornar a má rasterização é converter manualmente o seu documento PDF para o postscript, porque quando você invoca o CUPS através do evince ou de qualquer outro gui, ele será convertido de qualquer maneira.

Você pode tentar pdftops -r 1200 document.pdf para 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 resultou em uma melhora significativa. O texto regular em páginas com e sem imagens transparentes ainda parecia diferente - desfocado vs. claro.

Por isso, acabei usando o Acrobat Professional (em uma máquina com Windows) para nivelar as imagens transparentes usadas no meu documento de látex, o que deu ótimos resultados. Verifique se Transparency Flattener Preset está em [High Resolution] na configuração de impressão avançada. Meu colega mencionou que um talvez poderia FTP um arquivo pdf diretamente para uma impressora de rede laser moderna, ignorando a conversão postscript. Eu não tentei isso.

Seria ótimo ter uma solução somente do Linux para esse problema.

    
por Fred Schoen 26.10.2012 / 16:29
1

Eu tive o mesmo problema e esta é a minha solução (para referência futura):

Eu tentei muitas coisas, e até agora a melhor solução de trabalho que encontrei na internet foi renderizar o PDF completamente como uma imagem com pdf2ps e ps2pdf13 , mas o resultado não foi satisfatório para mim, porque todas formas vetoriais foram perdidas. Eu queria renderizar apenas as partes críticas, mas manter os gráficos vetoriais.

O que o truque para mim foi isolar todas as partes críticas no inkscape e colocá-las em uma camada separada (nas minhas imagens, eram todas as sombras). Eu fiz apenas esta camada (e a camada de fundo) visível e exportada para PNG, efetivamente renderizando todos os efeitos de transparência, mas apenas eles. Eu o importei de volta e usei em uma nova camada. Depois de inverter todas as visibilidades da camada (camada de transparência: off, todas as outras: on), o PDF exportado funcionou perfeitamente com o LaTeX e foi imprimível sem renderizar toda a página como imagem.

TL; DR:

  1. Isole todas as transparências problemáticas em uma camada (máscaras de transparência, sombras, etc.)
  2. Crie apenas a camada problemática & amp; fundo visível
  3. Exportar para PNG
  4. Importe o PNG recém-criado e use como plano de fundo
  5. Tornar todas as camadas visíveis, exceto a camada problemática
  6. Exportar para PDF
  7. Sorriso:)
por Edgar 14.10.2015 / 10:12
0

Uma maneira é criar uma caixa branca no Inkscape do mesmo tamanho que a sua página e enviá-la para a camada inferior. Isso exportará sua imagem com um fundo branco em vez de transparente.

    
por brousch 30.04.2012 / 20:08
-1
pdftops -origpagesizes input.pdf output.ps

então

ps2pdf -r600x600 output.ps input-new.pdf
    
por HinzundKunz 22.10.2013 / 12:13