Tengoun archivo pdf, cuyo texto se puede mostrar correctamente en evince, pero no cuando se busca texto o se copia y pega fuera del archivo. Por ejemplo, "transporte externo". se copia y pega afuera como
2D/28:93 /89:4758/9/.5:
Creé el archivo pdf desdela versión original del archivo pdfque funciona correctamente, por
gs -q -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile=example.pdf original.pdf
El comando es mi forma general de reparar varios problemas en un archivo pdf (especialmente problemas de fuentes en archivos pdf creados en Windows).
- ¿Por qué el comando crea el problema? ¿Cómo debo cambiar el comando, como forma general de solucionar problemas de PDF?
- ¿Cómo debo reparar la versión actual del archivo pdf para poder buscar, copiar y pegar el texto correcto afuera? El archivo que realmente me interesa reparar fue creado de la misma manera y con modificaciones adicionales. Quiero repararlo para poder conservar las modificaciones.
Gracias.
Respuesta1
Leí un poco y algunas publicaciones útiles sobre Stack Overflow (1,2,3) parecen sugerir que el problema está en las fuentes específicas incrustadas en su archivo PDF. Su archivo original utiliza estas fuentes:
$ pdffonts original.pdf
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
KPSHBO+Wingdings TrueType Custom yes yes no 5 0
KNQZHK+Arial TrueType Custom yes yes no 9 0
YLWHHJ+TimesNewRoman TrueType Custom yes yes no 13 0
HWNDJR+ArialBlack TrueType Custom yes yes no 17 0
QQRMEC+TimesNewRoman,Bold TrueType Custom yes yes no 21 0
Supongo (pero no estoy seguro) que lo más probable es que el problema se deba a la fuente Wingdings. Presumiblemente no lo tienes en tu sistema. Al menos, de las fuentes enumeradas, esa es la única que no puedo encontrar en la mía:
$ fc-list | grep -f <(pdffonts original.pdf | grep -oP '\+\K[A-Z][a-z]+') | awk '{print $1}'
/usr/share/fonts/TTF/times.ttf:
/usr/share/fonts/TTF/arialbd.ttf:
/usr/share/fonts/TTF/ariblk.ttf:
/usr/share/fonts/TTF/arialbi.ttf:
/usr/share/fonts/TTF/ariali.ttf:
/usr/share/fonts/TTF/timesi.ttf:
/usr/share/fonts/TTF/timesbd.ttf:
/usr/share/fonts/TTF/timesbi.ttf:
/usr/share/fonts/TTF/arial.ttf:
Desafortunadamente, intenté descargar una fuente Wingdings desdeaquí, luego ejecutó:
unzip wingdings.zip
sudo cp Wingdings\ Regular.ttf /usr/share/fonts/TTF/Wingdings.ttf
fc-cache
Cuál debería haber instalado la fuente, pero el gs
comando aún no funcionó. Entonces, tal vez gs
's pdfwrite
no pueda manejar esta fuente en absoluto. Entonces no sé si hay alguna manera de gs
convertir su archivo correctamente. Quizás simplemente usar el original que no tiene este problema sea su única opción.