PDF, PS and DjVu (Español)
Este artículo cubre el software para ver, editar y convertir PDF, PostScript (PS), DjVu (déjà vu) y archivos XPS.
Contents
- 1 Motores
- 2 Visores
- 3 Anotación
- 4 Edición gráfica de PDF
-
5 Herramientas PDF
- 5.1 Crea un PDF a partir de imágenes
- 5.2 Concatenar PDFs
- 5.3 Convertir un PDF a texto
- 5.4 Descifrar un PDF
- 5.5 Cifrar un PDF
- 5.6 Extraer imágenes de un PDF
- 5.7 Extraer un rango de página del PDF, dividir el documento PDF de varias páginas
- 5.8 Imponiendo un PDF
- 5.9 Inspeccionar metadatos
- 5.10 Optimizar, reducir el tamaño de un PDF
- 5.11 Rasterizar un PDF
- 5.12 División de páginas PDF
- 5.13 Añadir firma.png o imagen a una de las páginas del PDF
- 6 Herramientas DjVu
- 7 Herramientas PostScript
- 8 Bibliotecas
- 9 Véase también
Motores
- Poppler — Biblioteca de renderizado de PDF basada en Xpdf. Para soportar CJK (Chino, Japonés, Koreano) con Poppler, instale poppler-data.
- libspectre — Pequeña biblioteca para renderizar documentos PostScript.
-
Ghostscript — Intérprete para PostScript y PDF. Proporciona la interfaz de línea de órdenes gs(1), véase también
/usr/share/doc/ghostscript/*/Use.htm
(online), junto con muchos scripts como ps2pdf y pdf2ps.
- DjVuLibre — Suite para crear, manipular y ver documentos DjVu.
- libgxps — Biblioteca basada en GObject para manejar y renderizar documentos XPS.
Visores
Framebuffer
- fbgs — Visor de PostScript/pdf de los pobres para la consola framebuffer de Linux.
- fbpdf — Pequeño visor de framebuffer PDF y DjVu basado en MuPDF, con atajos de teclado Vim y escrito en C
- JFBView — Framebuffer PDF y visor de imágenes. Las características incluyen controles tipo Vim, zoom para ajustar, una vista TOC (esquema), renderizado rápido de subprocesos múltiples y pre-almacenamiento en caché asíncrono. Originalmente una bifurcación de fbpdf llamada jfbpdf, ahora completamente reescrita.
Gráficos
- Adobe Reader — Visor de archivos PDF propietario ofrecido por Adobe. Descontinuado para Linux.
- apvlv — Visor de documentos ligero con atajos de teclado Vim. Soporta PDF, DjVu, UMD y TXT.
- Atril — Visor de documentos multi-página simple para MATE. Soporta DjVu, DVI, EPS, EPUB, PDF, PostScript, TIFF, XPS y Comicbook.
- DjView — Visor para documentos DjVu.
- ePDFView — Visor de documentos PDF ligero utilizando las bibliotecas Poppler y GTK. Desarrollo detenido.
- Emacs — Véase también pdf-tools para mejorar el soporte de pdf y el paquete djvu para soporte djvu.
- Evince — Visor de documentos para GNOME. Soporta DjVu, DVI, EPS, PDF, PostScript, TIFF, XPS y Comicbook.
- Foxit Reader — Pequeño, rápido (comparado con Acrobat) visor propietario de PDF.
- gv — Interfaz gráfica de usuario para el intérprete Ghostscript que permite ver y navegar por documentos PostScript y PDF.
- llpp — Lector de PDF muy rápido basado en MuPDF, que admite desplazamiento continuo de páginas, marcadores y búsqueda de texto en todo el documento.
- MuPDF — Visor muy rápido de EPUB, FictionBook, PDF, XPS y Comicbook escrito en C portable. Como característica soporta tipografía CJK.
- Okular — Visor de documentos universal para KDE. Soporta CHM, Comicbook, DjVu, DVI, EPUB, FictionBook, Mobipocket, ODT, PDF, Plucker, PostScript, TIFF y XPS.
- pdfpc — Presentador de Consola con soporte multimonitor para archivos PDF.
- qpdfview — Visor de documentos con pestañas. Utiliza Poppler para soporte PDF, libspectre para soporte PS, DjVuLibre para soporte DjVu, CUPS para soporte de impresión y el Qt toolkit para su interfaz.
- Xpdf — Visor que puede decodificar LZW y leer PDFs cifrados.
- Xreader — Visor de documentos que forma parte del proyecto X-Apps. Soporta DjVu, DVI, EPUB, PDF, PostScript, TIFF, XPS y Comicbook.
- Zathura — Visor de documentos altamente personalizable y funcional (basado en plugin). Soporta PDF, DjVu, PostScript y Comicbook.
Comparativa
Nombre | PostScript | DjVu | XPS | PDF forms | Licencia | |
---|---|---|---|---|---|---|
Adobe Reader | Personalizado | – | – | – | Sí | propietario |
apvlv | Poppler | – | DjVuLibre | – | No | GPLv2 |
Atril | Poppler | libspectre | DjVuLibre | libgxps | Sí | GPLv2 |
DjView | – | – | DjVuLibre | – | – | GPLv2 |
Emacs | Ghostscript* | DjVuLibre* | – | No | GPLv3 | |
ePDFView | Poppler | – | – | – | No | GPLv2 |
Evince | Poppler | libspectre | DjVuLibre | libgxps | Sí | GPLv2 |
Foxit Reader | Personalizado | – | – | – | Sí | propietario |
gv | Ghostscript | – | – | No | GPLv3 | |
llpp | libmupdf | – | – | libmupdf | Sí | GPLv3 |
MuPDF | Personalizado | – | – | Personalizado | Sí | AGPLv3 |
Okular | Poppler | libspectre | DjVuLibre | Personalizado | Sí | GPL, LGPL |
pdfpc | Poppler | – | – | – | No | GPLv2 |
qpdfview | Poppler | libspectre* | DjVuLibre* | – | Sí | GPLv2 |
Xpdf | Personalizado | – | – | – | No | GPLv3 |
Xreader | Poppler | libspectre* | DjVuLibre* | libgxps* | Sí | GPLv2 |
Zathura | Poppler* / libmupdf* | libspectre* | DjVuLibre* | libmupdf* | No | zlib |
- (* significa opcional)
PDF forms
La columna PDF Forms en la tabla anterior se refiere al soporte AcroForms.Si no necesita que lo que introduzca sea directamente extraíble del PDF, también puede utilizar las aplicaciones en #Anotación o #Edición gráfica de PDF para poner texto encima de un PDF. Los formularios PDF se pueden crear con LibreOffice Writer (Ver > Barras de herramientas > Controles de formulario) y los editores de PDF avanzados.
El formato propietario y en desuso XFA para formularios, no es totalmente compatible con Poppler[1][2] y solo es soportado por Adobe Reader y Master PDF Editor.
Anotación
- flpsed — Un anotador PostScript y PDF, solo soporta cajas de texto.
Véase también List of applications/Documents#Stylus note-taking.
Edición gráfica de PDF
- Scribus puede importar y exportar PDF; el texto se importa como polígonos.[3]
- LibreOffice Draw puede importar y exportar PDF; el texto se importa como texto; las fuentes incrustadas se sustituyen.[4][5]
- Inkscape puede importar una sola página desde un PDF y exportar a PDF; el texto se importa como glifos clonados o texto; con este último se sustituyen las fuentes incrustadas.
- Editores gráficos como GIMP y krita también pueden importar y exportar archivos PDF a costa de la rasterización.
Editores básicos
- PDF Arranger — Ayuda a fusionar o dividir documentos PDF y rotar, recortar y reorganizar páginas. Es una bifurcación mantenida de PDF-Shuffler.
- PDF Chain — Interfaz GTK para PDFtk, escrito en C++, soportando concatenación, ráfaga, marcas de agua, archivos adjuntos y más.
- PDF Mix Tool — Interfaz Qt para PoDoFo, escrito en C++, soporta división, fusión, rotación y mezclado de archivos PDF.
- PDF Mod — Reordenar, rotar y eliminar páginas, exportar imágenes de un documento, editar el título, el tema, el autor y las palabras clave, y combinar documentos mediante arrastrar y soltar.
- PDFsam — Aplicación de código abierto, escrita en Java, soporta fusión, división y rotación.
- PDF Slicer — Aplicación simple para extraer, fusionar, rotar y reordenar páginas de documentos PDF.
- PDF Tricks — Aplicación simple y eficiente para pequeñas manipulaciones en archivos PDF utilizando Ghostscript.
Herramientas de corte
- briss — GUI de Java para recortar páginas de documentos PDF en una o más regiones seleccionadas.
- krop — Herramienta gráfica simple para recortar las páginas de archivos PDF.
- PdfHandoutCrop — Herramienta para recortar folletos en PDF con varias páginas por hoja.
Editores avanzados
- Master PDF Editor — Editor de PDF funcional y propietario. Gratis para uso no comercial.
- PDF Studio — Editor de PDF propietario todo-en-uno similar a Adobe Acrobat.
- https://www.qoppa.com/pdfstudio/ || pdfstudioAUR[enlace roto: package not found]
Herramientas PDF
- PDFtk — Herramienta simple para hacer cosas cotidianas con documentos PDF.
- Stapler — Alternativa ligera a PDFtk utilizando la biblioteca PyPDF2.
- QPDF — Sistema de transformación de PDF con conservación de contenido.
- pdfgrep — Utilidad de línea de órdenes para buscar texto en archivos PDF.
- pdf2svg — Convierte archivos PDF a archivos SVG.
- mupdf-tools — Herramientas desarrolladas como parte de MuPDF, contienen mutool(1) y muraster.
- pdfjam[dead link 2020-02-02] de texlive-core se puede usar para agrupar (n-up), unir, rotar y voltear archivos PDF y organizarlos en un formato adecuado para la encuadernación de libros.
- Ghostscript
Crea un PDF a partir de imágenes
Con GraphicsMagick:
$ gm convert 1.jpg 2.jpg 3.jpg out.pdf
Concatenar PDFs
Con Ghostscript:
$ gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=out.pdf -dBATCH 1.pdf 2.pdf 3.pdf
Con PDFtk:
$ pdftk 1.pdf 2.pdf 3.pdf cat output out.pdf
Con Poppler:
$ pdfunite 1.pdf 2.pdf 3.pdf out.pdf
Con QPDF:
$ qpdf --empty --pages 1.pdf 2.pdf 3.pdf -- out.pdf
Convertir un PDF a texto
Con Poppler y manteniendo el diseño:
$ pdftotext -layout in.pdf out.txt
Véase también pdftotext(1).
Descifrar un PDF
Esta sección enumera los comandos para descifrar un PDF en un archivo sin cifrar. Tenga en cuenta que la mayoría de visores PDF también soportan archivos PDF cifrados.
Con PDFtk:
$ pdftk in.pdf input_pw contraseña output out.pdf
Con Poppler a PostScript:
$ pdftops -upw contraseña in.pdf out.ps
Con QPDF:
$ qpdf --decrypt --password=contraseña in.pdf out.pdf
Cifrar un PDF
La contraseña_de_usuario se utiliza para el cifrado, la contraseña_de_propietario para restringir las operaciones una vez que se descifra el documento, para más información, véase Wikipedia:PDF#Security and signatures.
Con PDFtk:
$ pdftk in.pdf output out.pdf user_pw contraseña
Con PoDoFo:
$ podofoencrypt -u contraseña_de_usuario -o contraseña_de_propietario in.pdf out.pdf
Con QPDF:
$ qpdf --encrypt contraseña_de_usuario contraseña_de_propietario longitud_de_la_clave -- in.pdf out.pdf
donde longitud_de_la_clave
puede ser 40, 128 ó 256.
Extraer imágenes de un PDF
Con Poppler a JPEG:
$ pdfimages entrada.pdf -j prefijo_salida
Extraer un rango de página del PDF, dividir el documento PDF de varias páginas
Con Ghostscript como un solo archivo[6]
$ gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dSAFER -dFirstPage=primero -dLastPage=último -sOutputFile=salida.pdf entrada.pdf
Con PDFtk como un solo archivo:
$ pdftk entrada.pdf cat primero-último output salida.pdf
Con Poppler como archivos separados:
$ pdfseparate -f primero -l último entrada.pdf prefijo_salida-%d.pdf
Con QPDF como un solo archivo:
$ qpdf --empty --pages entrada.pdf primero-último -- salida.pdf
Imponiendo un PDF
La imposición PDF puede hacerse con pdfjam, por ejemplo, el desperdicio de papel se puede reducir con pdfnup y pdfbook se puede utilizar para organizar archivos PDF en un formato adecuado para encuadernación de libros.
Inspeccionar metadatos
Con ExifTool:
$ exiftool archivo.pdf
Con Poppler:
$ pdfinfo archivo.pdf
Optimizar, reducir el tamaño de un PDF
Con Ghostscript uno de:
$ ps2pdf -dPDFSETTINGS=/screen in.pdf out.pdf $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/printer -sOutputFile=out.pdf in.pdf
Para distintas configuraciones véase la documentación.
También está shrinkpdfAUR, un script que envuelve gs.
Rasterizar un PDF
Con GraphicsMagick para convertir una página específica:
$ gm convert -density dpi entrada.pdf[página] salida.jpg
Con Poppler para convertir todas las páginas:
$ pdftoppm -jpeg -r dpi entrada.pdf prefijo_salida
Con Poppler para convertir una página específica:
$ pdftoppm -jpeg -r dpi -f página -singlefile entrada.pdf prefijo_salida
División de páginas PDF
Con mupdf-tools para dividir cada página verticalmente en dos páginas:
$ mutool poster -y 2 in.pdf out.pdf
Se puede utilizar para deshacer imposiciones simples.
Añadir firma.png o imagen a una de las páginas del PDF
Para añadir una imagen en cualquier ubicación en un PDF se puede hacer con imagemagick (convertir), xv, y pdftk. Un script está aquí y otros consejos están aquí.
Herramientas DjVu
- DjVuLibre proporciona muchas herramientas de línea de órdenes, como por ejemplo ddjvu(1).
- img2djvu — Codificador DjVu de una sola pasada basado en DjVu Libre e ImageMagick.
- pdf2djvu — Crea archivos DjVu a partir de archivos PDF.
Convertir DjVu a imágenes
Divide Djvu en páginas separadas:
$ djvmcvt -i input.djvu /ruta/al/directorio/de/salida output-index.djvu
Convierte páginas Djvu en imágenes:
$ ddjvu --format=tiff page.djvu page.tiff
Convierte páginas Djvu en PDF:
$ ddjvu --format=pdf inputfile.djvu ouputfile.pdf
También puedes utilizar --page para exportar páginas específicas:
$ ddjvu --format=tiff --page=1-10 input.djvu output.tiff
esto convertirá las páginas de 1 a 10 en un archivo tiff.
Procesando imágenes
Puedes utilizar scantailor para:
- corregir la orientación
- dividir páginas
- enderezar
- recortar
- ajustar márgenes
Crear DjVu desde imágenes
Hay un script útil en img2djvu-gitAUR.
$ img2djvu -c1 -d600 -v1 ./salida
esto creará out.djvu
con 600 DPI de todos los archivos en en directorio ./salida
.
Alternativamente, puede probar didjvuAUR, que parece crear archivos más pequeños especialmente en imágenes con fondo bien definido.
Herramientas PostScript
- pstotext — Convierte archivos PostScript a texto.
ps2pdf
ps2pdf es una envoltura alrededor de ghostscript para convertir PostScript a PDF:
$ ps2pdf -sPAPERSIZE=a4 -dOptimize=true -dEmbedAllFonts=true YourPSFile.ps
Explicación:
-
-sPAPERSIZE=something
define el tamaño del papel. Para valores válidos de PAPERSIZE, véase [7]. -
-dOptimize=true
permite que el PDF creado se optimice para la carga. -
-dEmbedAllFonts=true
hace que las fuentes se vean siempre bonitas.
-sPAPERSIZE
especificado, porque los archivos EPS generalmente no contienen información de orientación del papel. Una solución es crear un nuevo documento en la configuración de ghostscript (llámelo p.e. "slide") y utilícelo como -sPAPERSIZE=slide
.Bibliotecas
- libharu — Biblioteca C para generar documentos PDF.
- https://github.com/libharu/libharu || libharu, Lua binding: lua-hpdfAUR
- PoDoFo — Una biblioteca de C++ para trabajar con el formato de archivo PDF.
Python
- PDFMiner — Utilidades para extraer, analizar datos de texto de archivos PDF. Incluye pdf2txt, dumppdf, y latin2ascii
- pdfrw — Una biblioteca puramente Python que lee y escribe archivos PDF.
- PyPDF2 — Una biblioteca puramente Python construida como un toolkit PDF.
- PyX — Biblioteca de Python para la creación de archivos PostScript y PDF.
- http://pyx.sourceforge.net || python-pyx, python2-pyx[enlace roto: package not found]
- ReportLab — Una solución comprobada de generación de PDF.