v25.11

Nuevo plugin Convertidor PDF

  • Clase PdfConverter: contiene todas las funciones de los plugins: DocConverter, XlsConverter, HtmlConverter, JpegConverter, PdfAConverter, PngConverter, TiffConverter.
  • Clase DocConverter: se eliminará pronto, usa PdfConverter.
  • Clase XlsConverter: se eliminará pronto, usa PdfConverter.
  • Clase HtmlConverter: se eliminará pronto, usa PdfConverter.
  • Clase JpegConverter: se eliminará pronto, usa PdfConverter.
  • Clase PdfAConverter: se eliminará pronto, usa PdfConverter.
  • Clase PngConverter: se eliminará pronto, usa PdfConverter.
  • Clase TiffConverter: se eliminará pronto, usa PdfConverter.
  • Clase PdfAConvertOptions: renombrada a Clase PdfToPdfAOptions.
  • Ve La Nueva Arquitectura de Plugin.

Ejemplo de Uso:

El ejemplo demuestra cómo convertir un documento PDF a formato Doc.

// Crear objeto PdfToDocOptions para establecer instrucciones
var options = new PdfToDocOptions();
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir PDF a documento XLSX.

// Crear objeto PdfToXlsOptions para establecer instrucciones
var options = new PdfToXlsOptions();
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir PDF a documento HTML.

// Crear objeto PdfToHtmlOptions para establecer tipo de datos de salida como archivo con recursos integrados
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_output.html"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir HTML a documento PDF.

// Crear HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_input.html"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir un documento PDF a formato JPEG.

// Crear objeto PdfToJpegOptions para establecer instrucciones
var options = new PdfToJpegOptions();
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Establecer ruta del directorio de salida
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir un documento PDF a formato PNG.

// Crear objeto PdfToPngOptions para establecer instrucciones
var options = new PdfToPngOptions();
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Establecer ruta del directorio de salida
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir un documento PDF a formato TIFF.

// Crear objeto PdfToTiffOptions para establecer instrucciones
var options = new PdfToTiffOptions();
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del directorio de salida
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Realizar el proceso
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo convertir el documento PDF en un formato PDF/A (PDF/A-3b en este caso):

// Crear la clase de opciones para establecer el proceso de conversión
var options = new PdfToPdfAOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

// Agregar el archivo fuente
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // reemplazar con la ruta de tu archivo

// Agregar la ruta para guardar el archivo convertido
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

// Ejecutar la conversión
PdfConverter.Convert(options);

Ejemplo de Uso:

El ejemplo demuestra cómo validar la conformidad del documento PDF al formato PDF/A (PDF/A-1a en este caso):

// Crear la clase de opciones para establecer el proceso de validación
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};

// Agregar uno o más archivos a validar
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // reemplazar con la ruta de tu archivo
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// agregar más archivos según sea necesario

// Ejecutar la validación y obtener resultados
var resultContainer = PdfConverter.Validate(options);

// Verificar la propiedad resultContainer.ResultCollection para los resultados de validación de cada archivo:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
    var result = resultContainer.ResultCollection[i];
    var validationResult = (PdfAValidationResult) result.Data;
    var isValid = validationResult.IsValid; // Resultado de validación para el i-ésimo documento
}

Nuevo plugin Seguridad PDF

  • Clase PdfSecurity: contiene todas las funciones de los plugins: Security, Signature, Timestamp.
  • Clase Security: se eliminará pronto, usa PdfSecurity.
  • Clase Signature: se eliminará pronto, usa PdfSecurity.
  • Clase Timestamp: se eliminará pronto, usa PdfSecurity.
  • Clase DecryptionOptions: renombrada a Clase DecryptOptions.
  • Clase EncryptionOptions: renombrada a Clase EncryptOptions.
  • Clase SignOptions: ahora tiene propiedades para Clase Timestamp.
  • Ve La Nueva Arquitectura de Plugin.

Ejemplo de Uso:

El ejemplo demuestra cómo cifrar un documento PDF.

// Crear objeto EncryptOptions para establecer instrucciones
var options = new EncryptOptions("123456", "qwerty");
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realizar el proceso
PdfSecurity.Encrypt(options);

Ejemplo de Uso:

El ejemplo demuestra cómo descifrar un documento PDF.

// Crear objeto DecryptOptions para establecer instrucciones
var options = new DecryptOptions("123456");
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realizar el proceso
PdfSecurity.Decrypt(options);

Ejemplo de Uso:

El ejemplo demuestra cómo firmar un documento PDF.

// Crear objeto SignOptions para establecer instrucciones
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realizar el proceso
PdfSecurity.Sign(options);

Ejemplo de Uso:

El ejemplo demuestra cómo firmar un documento PDF con Timestamp.

// Crear objeto SignOptions para establecer instrucciones
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// Agregar ruta del archivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realizar el proceso
PdfSecurity.Sign(options);

Plugin PdfChatGpt integrado en PdfManager

  • Clase PdfChatGpt: se eliminará pronto, usa PdfManager.
  • Clase PdfChatGptRequestOptions: renombrada a Clase ChatGptRequestOptions.

Nuevas opciones disponibles para trabajar con ChatGpt

  • Clase ChatCompletion: permite comprobar los resultados de la solicitud.
  • Clase Choice: permite comprobar los resultados de la solicitud.
  • Clase Usage: permite comprobar los resultados de la solicitud.
  • Clase ChatGptConsts: permite usar configuraciones adicionales como ModelName, URL de API y otras.

Ejemplo de Uso:

El ejemplo demuestra cómo usar ChatGpt agregando mensajes a la solicitud.

var options = new ChatGptRequestOptions();
// Establecer ruta del archivo de salida
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf")); 
options.ApiKey = "Your API key."; // Debes proporcionar la clave para acceder a la API.
options.MaxTokens = 1000; // El número máximo de tokens a generar en la finalización del chat.

// Agregar los mensajes de la solicitud.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Procesar la solicitud.
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // El objeto de finalización de chat de la API de ChatGPT.

Mejoras

  • PDF a Imagen - Mejorar rendimiento de conversión
  • PDF a TIFF - Mejorar velocidad de conversión
  • PDF a Doc - Mejorar rendimiento

Bugs Corregidos

  • Corregido HTML a PDF - Problemas de formato en el archivo resultante
  • Corregido problema de rendimiento en la conversión de PDF a TIFF
  • Corregido HTML a PDF - Archivo CSS como Recurso Externo no aplicado al archivo PDF generado
 Español