MuPDF, un framework libre para trabajar con archivos PDF

En Software por

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.

MuPDF framework

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.

mutool 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