Ir al contenido

PDF Activities

Versión: 1.2.3  ·  ID: zoan-packages-pdf  ·  Autor: Zoan Software

El paquete PDF lee y manipula archivos PDF: extraer texto (y palabras con sus coordenadas), buscar contenido, leer metadatos, convertir páginas a imagen, y combinar, dividir, extraer páginas, rotar o marcar de agua. Es muy usado en procesos documentales: leer facturas en PDF, separar un lote de documentos, consolidar reportes.

  • Sin sesión: cada actividad recibe la ruta (path) del archivo y trabaja sobre él. No hay que “abrir” ni “cerrar” el PDF.
  • No modifican el original: las actividades de manipulación (combinar, rotar, marca de agua…) crean un archivo nuevo en la ruta output (o en la carpeta outputDir) que indiques, y devuelven esa ruta. El PDF de entrada queda intacto. Si la carpeta de salida no existe, se crea; si el archivo de salida ya existe, se sobrescribe.
  • Funciona en el equipo del robot: no consume IA ni servicios de Zoan Cloud.

Varias actividades aceptan especificar páginas con un rango en texto: combinas números sueltos y rangos con guion, separados por comas. Las páginas se numeran desde 1.

"1-3,5,7-9" → páginas 1, 2, 3, 5, 7, 8 y 9
"all" → todas las páginas
ReglaDetalle
Rangosinicio-fin, ambos incluidos. Se admiten espacios ("1 - 3, 5").
OrdenLas páginas se procesan siempre en orden ascendente y sin repetir: "5,1-2,2" = 1, 2, 5.
Partes no válidasSe ignoran sin error ("1,abc,3" = 1, 3; un rango al revés como "5-3" no aporta páginas).
"all"Todas las páginas (sin distinguir mayúsculas). Es lo mismo que no indicar pages en PDF Get Words, PDF To Images y PDF Rotate.
Lista de númerosTodas las actividades que reciben pages aceptan también una lista de números, como la que devuelve PDF Search Text: pages = paginas o pages = new[] { 1, 3, 5 }. Un elemento que no sea un número de página entero es un error ('pages' debe contener números de página enteros; '…' no lo es.). Desde la versión 1.2.4.
Páginas que no existenPDF Get Words, PDF To Images y PDF Extract Pages fallan con Página(s) fuera de rango: …; PDF Rotate también, desde la versión 1.2.4 (antes las ignoraba).

Ninguna actividad del paquete recibe contraseña. Un PDF con contraseña de apertura no se puede leer ni transformar: la actividad falla con el error de la biblioteca de PDF. Lo mismo pasa con un archivo dañado o que no es un PDF. Pide el documento sin contraseña en origen y, si el lote puede traer archivos así, envuelve la actividad en Try Catch para apartarlos sin detener el proceso.

MensajeCausa y solución
No se encontró el archivo.La ruta de path no existe. Compruébala antes con File Exists si el archivo puede no estar.
'path' es obligatorio. (o 'output', 'outputDir', 'text'…)Un parámetro requerido quedó vacío o su expresión dio null.
Página(s) fuera de rango: …. El documento tiene … páginas.El rango pide páginas que el documento no tiene. Consulta antes el total con PDF Get Page Count.
'dpi' debe estar entre 36 y 1200. Se recibió: ….Resolución fuera del rango admitido.
'…' debe ser un número. Se recibió: …. / '…' debe ser true o false. Se recibió: ….Un parámetro numérico (opacity, fontSize, margin, angle) o de sí/no (caseSensitive) recibió un valor que no sirve, escrito o calculado por una expresión. Desde la versión 1.2.4.
Error de la biblioteca de PDF al abrir el archivoPDF protegido con contraseña, dañado o que no es un PDF. Ver PDF protegidos y dañados.
ActividadTipoSalidaQué hace
PDF Get Textpdf-get-textstringExtrae todo el texto del PDF
PDF Get Text (Page)pdf-get-text-pagestringExtrae el texto de una página
PDF Get Wordspdf-get-wordsListCada palabra con su página y sus coordenadas
PDF Get Page Countpdf-get-page-countintNúmero de páginas
PDF Get Metadatapdf-get-metadataDictionaryMetadatos (título, autor, fechas…)
ActividadTipoSalidaQué hace
PDF Contains Textpdf-contains-textbool¿Contiene el texto?
PDF Search Textpdf-search-textListEn qué páginas aparece el texto
ActividadTipoSalidaQué hace
PDF Mergepdf-mergestringCombina varios PDF en uno
PDF Splitpdf-splitListSepara cada página en un archivo
PDF Extract Pagespdf-extract-pagesstringExtrae páginas concretas a un PDF nuevo
PDF Rotatepdf-rotatestringRota páginas (90/180/270°)
ActividadTipoSalidaQué hace
PDF To Imagespdf-to-imagesListConvierte las páginas a archivos PNG
ActividadTipoSalidaQué hace
PDF Createpdf-createstringCrea un PDF nuevo a partir de texto
PDF Add Watermarkpdf-add-watermarkstringAñade una marca de agua a cada página

Leer una factura en PDF y extraer su número con una expresión regular:

PDF Get Text path = rutaFactura → output: texto
Set Variable name = numero value = regexFind(texto, "FAC-\d+")
Log message = "Factura: " + numero