GNU/Linux >> Tutoriales Linux >  >> Linux

Crea marcadores para tu PDF con pdftk

Al presentar pdftk-java, expliqué cómo uso el pdftk-java Comando para realizar modificaciones rápidas, a menudo con secuencias de comandos, en archivos PDF.

Sin embargo, una de las cosas pdftk-java es más útil cuando descargué un archivo PDF grande, a veces con cientos de páginas de texto de referencia, y descubrí que el creador del PDF no incluía una tabla de contenido. No me refiero a un índice impreso en la portada del libro; Me refiero a la tabla de contenido que se encuentra al costado de su lector de PDF, que el formato PDF llama oficialmente "marcadores".

Sin marcadores, encontrar el capítulo al que necesita hacer referencia es engorroso e implica mucho desplazamiento o búsquedas frustrantes de palabras que cree recordar haber visto en el área general.

Otra molestia menor de muchos archivos PDF es la falta de metadatos, como un título y un autor adecuados en las propiedades del PDF. Si alguna vez abrió un PDF y vio algo genérico como "Microsoft Word - 04_Classics_Revisited.docx" en la barra de título de la ventana, conoce este problema.

Ya no tengo que lidiar con este problema porque tengo pdftk-java , que me permite crear mis propios marcadores.

Instalar pdftk-java en Linux

Más recursos de Linux

  • Hoja de trucos de los comandos de Linux
  • Hoja de trucos de comandos avanzados de Linux
  • Curso en línea gratuito:Descripción general técnica de RHEL
  • Hoja de trucos de red de Linux
  • Hoja de trucos de SELinux
  • Hoja de trucos de los comandos comunes de Linux
  • ¿Qué son los contenedores de Linux?
  • Nuestros últimos artículos sobre Linux

Como sugiere su nombre, pdftk-java está escrito en Java, por lo que funciona en todos los principales sistemas operativos siempre que tenga Java instalado.

Los usuarios de Linux y macOS pueden instalar Linux desde AdoptOpenJDK.net.

Los usuarios de Windows pueden instalar la compilación de OpenJDK para Windows de Red Hat.

Para instalar pdftk-java en Linux:

  1. Descargue la versión pdftk-all.jar de su repositorio de Gitlab y guárdela en ~/.local/bin/ o alguna otra ubicación en su camino.
  2. Abrir ~/.bashrc en su editor de texto favorito y agregue esta línea:alias pdftk='java -jar $HOME/.local/bin/pdftk-all.jar'
  3. Cargue su nueva configuración de Bash:source ~/.bashrc

Volcado de datos

El primer paso para corregir los metadatos de un PDF es extraer el archivo de datos que contiene actualmente el PDF.

Probablemente no haya mucho en el archivo de datos (¡ese es el problema!), pero le brinda un buen punto de partida.

$ pdftk mybigfile.pdf \
data_dump \
output bookmarks.txt

Esto produce un archivo llamado bookmarks.txt y contiene todos los metadatos asignados al archivo de entrada (en este ejemplo, mybigfile.pdf ), además de mucha hinchazón.

Edición de metadatos

Para editar los metadatos del PDF, abra su bookmarks.txt archivo en su editor de texto favorito, como Atom o Gedit.

El formato es en su mayoría intuitivo, y los datos contenidos en él se descuidan como era de esperar:

InfoBegin
InfoKey: Creator
InfoValue: Word
InfoBegin
InfoKey: ModDate
InfoValue: D:20151221203353Z00'00'
InfoBegin
InfoKey: CreationDate
InfoValue: D:20151221203353Z00'00'
InfoBegin
InfoKey: Producer
InfoValue: Mac OS X 10.10.4 Quartz PDFContext
InfoBegin
InfoKey: Title
InfoValue: Microsoft Word - 04_UA_Classics_Revisited.docx
PdfID0: f049e63eaf3b4061ddad16b455ca780f
PdfID1: f049e63eaf3b4061ddad16b455ca780f
NumberOfPages: 42
PageMediaBegin
PageMediaNumber: 1
PageMediaRotation: 0
PageMediaRect: 0 0 612 792
PageMediaDimensions: 612 792
[...]

Puede editar los campos de InfoValue para que contengan datos que tengan sentido para el PDF que está reparando. Por ejemplo, en lugar de establecer la clave del creador en el valor Word, puede establecerla en el nombre del autor real o la editorial que publica el archivo PDF. En lugar de darle al documento la cadena de exportación predeterminada de la aplicación que lo produjo, asígnele el título real del libro.

También hay algunos trabajos de limpieza que puede hacer. Todo debajo del NumberOfPages línea tampoco es innecesaria, así que elimine esas líneas.

Agregar marcadores

Los marcadores de PDF siguen este formato:

BookmarkBegin
BookmarkTitle: My first bookmark
BookmarkLevel: 1
BookmarkPageNumber: 2
  • BookmarkBegin indica que está creando un marcador nuevo.
  • BookmarkTitle contiene el texto que es visible en el visor de PDF.
  • BookmarkLevel establece el nivel de herencia de este marcador. Si establece un BookmarkLevel en 2, aparece dentro de un triángulo desplegable del marcador anterior. Si configura BookmarkLevel en 3, aparece dentro de un triángulo desplegable del marcador anterior, siempre que el marcador anterior esté configurado en 2. Esta configuración le brinda la capacidad de marcar, por ejemplo, un título de capítulo y encabezados de sección. dentro de ese capítulo.
  • BookmarkPageNumber determina a qué página PDF se dirige al usuario cuando hace clic en el marcador.

Cree marcadores para cada sección del libro que considere importante y luego guarde el archivo.

Actualizando información de marcadores

Ahora que ha configurado sus metadatos y marcadores, puede aplicarlos a su PDF; en realidad, los aplicará a un nuevo PDF que contenga el mismo contenido que el PDF antiguo:

$ pdftk mybigfile.pdf \
update_info bookmarks.txt \
output mynewfile.pdf

Esto produce un archivo llamado mynewfile.pdf , que contiene todos sus metadatos y marcadores.

Publicación profesional

La diferencia entre un PDF con metadatos genéricos y sin marcadores y un PDF con valores de metadatos personalizados y marcadores útiles probablemente no hará ni deshará una venta.

Sin embargo, prestar atención a los pequeños detalles, como los metadatos, muestra que valora la garantía de calidad, y proporcionar marcadores a sus usuarios es útil y aprovecha la tecnología disponible.

Usa pdftk-java para facilitar este proceso, y sus usuarios se lo agradecerán.


Linux
  1. 3 consejos para imprimir con Linux

  2. Escanee su seguridad Linux con Lynis

  3. Cree un gemelo malvado de su red con Fluxion en Kali Linux

  4. Cree su almacenamiento en la nube con ownCloud 6 en Linux Mint 17

  5. Más consejos para empaquetar su software Linux con RPM

Crea tu propio servidor de transmisión de video con Linux

Crea una wiki en tu escritorio Linux con Zim

Cómo crear una oficina web con todas las funciones para su equipo con ONLYOFFICE

Los 15 mejores Linux para niños | Deje que sus hijos aprendan Linux con diversión

Cómo crear un volumen persistente para sus implementaciones de contenedores con Portainer

Linux para empresas:haga crecer su empresa con estas aplicaciones