MuPDF, un framework libre para trabajar con archivos PDF
Son muchas las herramientas gratuitas que nos encontramos para trabajar con archivos PDF, pero pocos son los frameworks libres que nos permiten visualizar y manipular este tipo de archivos. Hoy os traigo un framework de código abierto y multiplataforma llamado MuPDF.
Lo cierto es que es un proyecto bastante veterano y al que podemos recurrir si necesitamos un visor de archivos PDF o si necesitamos una herramienta para manipular archivos PDF desde la consola. Es en este último punto donde le he dado uso en ciertas tareas y puedo decir que da muy buenos resultados.
Detalles del proyecto MuPDF y ejemplos prácticos de uso.
MuPDF es un proyecto escrito en C y su desarrollador original comenzó a desarrollarlo en el año 2002. Desde entonces, el tipo de licencia que recoge el proyecto ha ido cambiando y hoy en día podemos usarlo libremente bajo la licencia GNU AGPL (GNU Affero General Public License).
El visor de PDF es minimalista y hasta diría que rudimentario, pero puede ser una buena alternativa para sistemas operativos con pocos recursos. Al ser multiplataforma, nos encontramos versiones para diferentes sistemas y arquitecturas, entre las que no faltan Linux, Windows y Android.
Es un proyecto con un desarrollo activo y que podemos encontrar en su página oficial.
Ejemplos de uso de la herramienta de consola de MuPDF (mutool).
Personalmente he encontrado en la herramienta de consola mutool
un potente aliado a la hora de trabajar con archivos PDF. Me permite realizar tareas como convertir un PDF a otro formato, obtener información de la estructura interna del PDF, extraer imágenes y recursos del PDF, crear archivos PDF, recuperar archivos PDF corruptos o dañados, etc.
Vemos que mutool cubre bastantes necesidades, por ello esta herramienta está formada por las siguientes funcionalidades:
- draw: se emplea para renderizar un PDF en imágenes.
- convert: nos permite convertir un archivo PDF en diferentes formatos (html, png, svg, etc).
- trace: es una herramienta de depuración que permite ver las llamadas al dispositivo gráfico.
- show: muestra los objetos internos de un PDF.
- extract: permite extraer los recursos y objetos de un PDF.
- clean: con esta herramienta podemos reparar archivos PDF dañados o corruptos y así poder ediatrlos.
- merge: permite juntar variso archivos PDF en un único archivo.
- create: crea un archivo PDF a partir de un archivo de texto con comandos gráficos.
- portfolio: permite modificar los portfolios de los documentos PDF.
- run: es una herramienta avanzada que permite ejecutar código Javascript para acceder a la funcionalidad de las librerías internas de MuPDF.
Convertir un PDF en HTML con mutool, basta con ejecutar el siguiente comando:
mutool convert -o salida.html test.pdf
Para reparar un archivo PDF ejecutamos el comando:
mutool clean documento_dañado.pdf reparado.pdf
Para extraer las imágenes de un PDF y otros recursos como fuentes, el comando sería:
mutool extract test.pdf