v26.10

Campos modificados en PdfProperties

  • El campo Created es DateTime (no DateTime?). Devuelve DateTime.MinValue si el documento no tiene valor.
  • El campo Modified es DateTime (no DateTime?). Devuelve DateTime.MinValue si el documento no tiene valor.

Ejemplo de uso:

El ejemplo muestra cómo extraer las propiedades (Created, Modified) de un archivo PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

Añadido constructor vacío a GetFieldNamesOptions

Esto puede ser útil en operaciones de bucle, sin crear una nueva instancia.

Ejemplo de uso:

var options = new GetFieldNamesOptions();
// Set input from a file
options.Input = new FileData("path_to_your_pdf_file.pdf");
// Or set input from a stream
// options.Input = new StreamData(stream);
var results = PdfForm.GetNames(options);

Eliminada la clase Splitter

  • La implementación anterior de plugins se está retirando gradualmente. La funcionalidad de esta clase ha sido reemplazada por la clase PdfManager.
  • Class Splitter: eliminada, use PdfManager.

Ejemplo de uso:

El ejemplo muestra cómo dividir un flujo PDF en páginas individuales y guardarlas como archivos.

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileData("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file_2.pdf"));
// Perform the process
PdfManager.Split(options);

Ejemplo de uso:

Este ejemplo muestra cómo dividir un flujo PDF en páginas individuales y guardarlas como flujos.

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream1 = new MemoryStream();
using var outputStream2 = new MemoryStream();

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input stream
options.AddInput(inputStream);
// Set output streams
options.AddOutput(outputStream1);
options.AddOutput(outputStream2);
// Prevent the closing of output streams
options.CloseOutputStreams = false;
// Perform the process
PdfManager.Split(options);

Eliminada la clase Merger

  • La implementación anterior de plugins se está retirando gradualmente. La funcionalidad de esta clase ha sido reemplazada por la clase PdfManager.
  • Class Merger: eliminada, use PdfManager.

Ejemplo de uso:

El ejemplo muestra cómo combinar dos documentos PDF.

// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileData("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileData("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Merge(options);

Otras correcciones

🖥️ HTML a PDF

  • Se corrigió la conversión de HTML a PDF con muchas tablas que tomaba tiempo excesivo.
  • Se corrigió la salida de HTML a PDF que no se imprimía correctamente en Chrome.
  • Se corrigió la conversión de HTML a PDF que omitía el contenido de texto de las tablas.

🌐 PDF a HTML

  • Se corrigió la conversión de PDF a HTML que omitía contenido de texto y gráficos.
  • Se corrigió la conversión de PDF a HTML que mostraba un logotipo roto en el pie de página.

📄 PDF a DOC/XLS

  • Se corrigió la conversión de PDF a DOC que tomaba tiempo excesivo.
  • Se corrigió la conversión de PDF a Excel que producía una salida incorrecta.

🖼️ PDF a PNG

  • Se corrigió la conversión de PDF a PNG donde el texto de la primera página se distorsionaba.
  • Se corrigió la conversión de PDF a PNG que lanzaba InvalidOperationException.

🖼️ PDF a TIFF

  • Se corrigió la conversión de PDF a TIFF que no convertía todas las páginas.
  • Se corrigió la conversión de PDF a TIFF que producía imágenes ennegrecidas.

📑 PDF a PDF/A

  • Se corrigió la conversión de PDF a PDF/A que añadía símbolos blancos al resultado.
  • Se corrigió la conversión de PDF a PDF/A que cambiaba los colores del borde del rectángulo.
  • Se corrigió la salida PDF/A‑1b que fallaba la prueba de cumplimiento de preflight.
  • Se corrigió la conversión PDF/A que producían una fuente BaseFont UTF‑8 inválida.
  • Se corrigió la conversión PDF/A que alteraba el texto visible.
  • Se corrigió la conversión PDF/A‑2b que lanzaba ArgumentOutOfRangeException.
  • Se corrigió la conversión PDF/A‑2b que lanzaba NullReferenceException.

📄 Operaciones con documentos

  • Se corrigió la combinación de PDFs que lanzaba ArgumentException por una clave no válida.
  • Se corrigió el aplanado de campos que cambiaba la orientación del texto.
  • Se corrigió la extracción incorrecta de texto de documentos PDF.
 Español