Sustituir una fuente en un documento PDF

13

Tengo un documento PDF (no encriptado) con campos de formulario editables. Sin embargo, la fuente de esos campos está rota: le faltan algunos glifos, por lo que cuando ingreso texto aparecen algunos espacios en blanco.

¿Cómo puedo modificar el documento PDF (no tengo acceso al documento fuente utilizado para crearlo) para sustituir una fuente diferente en lugar de la que está rota ?

La fuente en cuestión es Caliban Regular de Adobe , que puedo ver incrustada en el documento. Los glifos que se muestran en blanco incluyen "i", "T", "V"; quizás otros que no he descubierto.

También tengo otro documento similar con Caliban, que se muestra correctamente, incluidos los glifos que se enumeran arriba como rotos. Si alguien puede decirme cómo tomar una fuente de un PDF y sustituirla en un PDF existente , sería una solución.

Actualmente estoy usando:

Me interesarían otras herramientas de edición de PDF de software libre ( ya sea de precio cero o no ), si ayudan con esta tarea.

nariz grande
fuente
¿Qué software de visualización o edición de PDF está utilizando? ¿Qué fuente utilizan los campos de formulario? ¿Y esa fuente está incrustada después de guardar el formulario PDF en un nombre de archivo diferente?
Kurt Pfeifle
Gracias por el comentario, he ampliado la descripción para responder a sus preguntas.
bignose
Una pregunta más: ¿puede nombrar los glifos (que significan más o menos: formas de letras) que desea poner en los campos de formulario y que solo aparecen como espacios en blanco?
Kurt Pfeifle
¿Su fuente Caliban se ve así: linotype.com/de/202/caliban-schriftfamilie.html o más bien así: fontspace.com/george-williams/caliban
Kurt Pfeifle el
1
@bignose, ¿has encontrado una solución para esto?
Jubei

Respuestas:

5

Es extremadamente difícil reemplazar una fuente incrustada en un PDF. No conozco ningún software libre como voz (licencia GPL) o gratis como cerveza (gratis) que probablemente pueda hacer eso (al incrustar la fuente primero y luego volver a incrustarla). una fuente sustituta). Solo conozco dos productos comerciales que hacen eso: pdfToolbox4 de callassoftware.com y PitStop de Enfocus (por supuesto, seguramente hay otros, pero no estoy al tanto de ellos, y estos son los líderes del mercado aquí).

Aquí hay una manera de extraer una fuente incrustada de un PDF utilizando software libre. Tenga en cuenta que solo tiene permiso legal para hacerlo, si la licencia de la fuente no lo prohíbe. En el repositorio de código fuente de Ghostscript vive una utilidad de programa PostScript llamada extractFonts.psque puede ayudar aquí:

  1. Instala Ghostscript. Use la última versión, 8.71.
  2. Descargue el archivo http://svn.ghostscript.com/ghostscript/trunk/gs/toolbin/extractFonts.ps
  3. Es posible que desee leer los comentarios contenidos en el archivo descargado.
  4. Ejecute el siguiente comando en un cuadro de DOS (cmd.exe):

    gswin32c.exe ^
        -q ^
        -dNODISPLAY ^
        C:/path/to/extractFonts.ps ^
        -c "(c:/path/to/your-pdf-file.pdf) extractFonts quit"
    
  5. Tome buena nota de cualquier mensaje de advertencia o error que el comando pueda escupir.
  6. Las fuentes extraídas correctamente ahora se almacenarán en su directorio actual con el mismo nombre que en el PDF.

(Tenga en cuenta que extraer fuentes aquí no significa eliminar las fuentes del PDF, sino crear archivos de fuentes que sean copias de las incrustadas en el PDF).


Aquí hay otro bloque de construcción que puede contribuir a lograr lo que desea. Es posible que desee descomprimir todas las partes / secuencias comprimidas de su PDF, para que pueda editar más fácilmente el archivo con un editor de texto simple. (Advertencia: la edición de archivos PDF no es una tarea simple y directa: sus esfuerzos de edición requerirán conocimientos y conocimientos bastante importantes sobre aspectos internos del formato de archivo PDF).

Este truco también usa una utilidad del toolbinsubdirectorio Subversion de Ghostscript .

  1. Descargue el archivo http://svn.ghostscript.com/ghostscript/trunk/gs/toolbin/pdfinflt.ps
  2. Es posible que desee leer los comentarios en el archivo descargado.
  3. Ejecute el siguiente comando en un cuadro de DOS (cmd.exe):

    gswin32c.exe ^
         -- ^
         c:/path/to/pdfinflt.ps ^
         c:/path/to/your-pdf-file.pdf ^
         c:/path/to/your-pdf-file-decompressed.pdf
    

Este comando intentará descomprimir todas las secuencias comprimidas 'planas' . (Si no tiene suerte, su archivo también contendrá transmisiones utilizando otros métodos de compresión (como 'zip' ) que no se modificarán con este comando).

Kurt Pfeifle
fuente