O texto do Ghostscript não pode ser selecionado em páginas com imagens

O texto do Ghostscript não pode ser selecionado em páginas com imagens

Após a compilação normal, estou processando um arquivo PDF com o seguinte ghostscriptcomando para produzir um arquivo (espero) compatível com PDF/A.

gs -dPDFA
   -sDEVICE=pdfwrite
   -dPDFACompatibilityPolicy=1
   -dPrinted=false
   -dPDFSETTINGS=/printer
   -dSAFER
   -dNOPAUSE
   -dQUIET
   -dBATCH
   -dNOOUTERSAVE 
   -sColorConversionStrategy=UseDeviceIndependentColor
   -sProcessColorModel=DeviceRGB
   -sOutputFile=thesis.pdf
   main.pdf pdfmarks

Isso funciona principalmente (tenho um esboço funcional em meu visualizador de PDF e os hiperlinks também funcionam agora), exceto por uma coisa. O texto é selecionável e copiável em quase todas as páginas, exceto nas páginas que contêm imagens. Não importa se a imagem é outro PDF ou PNG. Imagens Tikz e imagens MetaFont são boas, no entanto.

Eu tentei um diferente PDFSETTINGSe /prepressem uma iteração anterior deste comando também sem -dSAFERe -dPrinted=false.

O arquivo PDF original é compilado com pdflatex, se isso fizer alguma diferença.

Esta questão é bastante difícil de pesquisar, pois quase toda a documentação do ghostscript contém as palavras “texto” e “imagem”.

Responder1

Eu me esforçaria para criar diretamente um PDF compatível com PDF/A com pdflatexou lualatexem primeiro lugar. Isso lhe dará um PDF/A válido diretamente:

\documentclass{article}

\usepackage[pdfa]{hyperref}
\usepackage{hyperxmp}[2020/03/01]

\author{me,him}
\title{How to create a PDF/A-1b document}

\immediate\pdfobj stream attr{/N 3} file{sRGB.icc}
\pdfcatalog{%
  /OutputIntents [ <<
    /Type /OutputIntent
    /S /GTS_PDFA1
      /DestOutputProfile \the\pdflastobj\space 0 R
    /OutputConditionIdentifier (sRGB IEC61966-2.1)
    /Info(sRGB IEC61966-2.1)
  >> ]
}

\begin{document}

lorem ipsum \url{http://stackexchange.com/}

\end{document}

Este exemplo é validado no Acrobat DCeverapdf 1.14.8 quando compilado com LuaLaTeX e pdfLaTeX com pacotes atualizados.
Resultado da validação de simulação
Parece que a configuração da fonte do Graipher é duvidosa.

Se quiser incluir imagens posteriormente recomendo incluir pdf que já valide pdf/a. Imagens JPG com perfis de cores incorporados podem funcionar, mas alguns validadores solicitam que os metadados das imagens incorporadas sejam compatíveis com PDF/A. Isso é difícil de conseguir sem o Acrobat Pro. Você também encontraria esse problema com o Ghostscript. PNG não funciona porque não fornece perfis de cores incorporados.

Responder2

Eu tive um problema semelhante que resolvi mudando -dCompatibilityLevel=1.4 para -dCompatibilityLevel=1.3.

Não tenho ideia do porquê, no entanto.

informação relacionada