Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
El formato de documento portátil(PDF) ha sido el formato de referencia para compartir documentos a través de diversas plataformas. Sin embargo, con la creciente importancia del archivo digital, cada vez es más necesario archivar los documentos en un formato normalizado que garantice su conservación y accesibilidad a largo plazo. El PDF/A(PDFA) está diseñado específicamente para este fin, ya que ofrece un formato estable y autónomo adecuado para el archivado.
PDF/A, una variante de PDF normalizada por ISO, está diseñada para preservar los documentos a lo largo del tiempo, manteniendo la accesibilidad y la integridad del contenido. A diferencia de un archivo PDF normal, un archivo PDF/A tiene restricciones específicas que garantizan su solidez y autosuficiencia.
Este artículo le guiará a través del proceso de conversión de documentos PDF al formato PDF/A utilizando la biblioteca QPDF en C++. QPDF, una potente biblioteca de C++, permite a los desarrolladores gestionar y convertir mediante programación documentos PDF, incluida la conversión de PDF a PDF/A, en tan solo unas líneas de código.
QPDF es una biblioteca C++ y una herramienta de línea de comandos diseñada para trabajar con archivos PDF, transformarlos y analizarlos. Permite a los desarrolladores acceder y manipular mediante programación el contenido de archivos PDF, con soporte para Word. QPDF es un proyecto de código abierto que ofrece una serie de funciones, como cifrado, descifrado, linealización, optimización y conformidad con PDF/A.
Antes de empezar, asegúrate de tener configurado lo siguiente:
Code::Blocks IDE: Descarga e instala Code::Blocks desde la web oficial(Sitio oficial de Code::Blocks).
Abra Code::Blocks: Inicie el IDE de Code::Blocks en su ordenador.
Crear un nuevo proyecto: Haga clic en Archivo en el menú superior, luego seleccione Nuevo, seguido de Proyecto.
En la ventana Nuevo a partir de plantilla, elija Aplicación de consola y haga clic en Ir. Seleccione el lenguaje C/C++ y haga clic en Siguiente**.
Introduzca el nombre del proyecto en el campo Título del proyecto.(por ejemplo, "PDFtoPDFA".). Elija dónde guardar los archivos del proyecto y haga clic en Siguiente**.
Para incluir los archivos de cabecera QPDF en Code::Blocks, siga estos pasos:
Haga clic en Proyecto en el menú.
Seleccione Opciones de construcción en el menú contextual.
En el cuadro de diálogo Opciones de compilación, vaya a la pestaña Buscar directorios.
En la pestaña Compilador, haga clic en el botón Añadir y busque el directorio que contiene los archivos de cabecera QPDF(normalmente se encuentra en la carpeta include.).
A continuación, en la pestaña Enlace, haga clic en el botón Añadir e incluya los directorios lib y bin.
Haga clic en Aceptar para cerrar el cuadro de diálogo Opciones de construcción.
Además, es necesario establecer una conexión con la biblioteca QPDF durante la fase de vinculación. Sigue estos pasos:
En el cuadro de diálogo Opciones de construcción, vaya a la pestaña Configuración del enlace.
En Link Libraries, haga clic en Add, luego busque el directorio con los archivos de biblioteca QPDF(normalmente con una extensión de archivo .a o .lib en Windows).
Haga clic de nuevo en Añadir e introduzca el nombre de la biblioteca QPDF(Por ejemplo, libqpdf.a o qpdf.lib.).
#include <iostream>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFWriter.hh>
#include <iostream>
#include <qpdf/QPDF.hh>
#include <qpdf/QPDFWriter.hh>
Este código incorpora archivos de cabecera esenciales para trabajar con la entrada/salida estándar de C++(iostream
) y la biblioteca QPDF.
En la función principal(punto de partida del programa C)Establecer rutas para los archivos de entrada y salida:
std::string input_pdf_path = "input.pdf";
std::string output_pdf_a_path = "output.pdfa";
std::string input_pdf_path = "input.pdf";
std::string output_pdf_a_path = "output.pdfa";
Estas dos líneas declaran e inicializan dos variables de tipo std::string
. Estas líneas declaran e inicializan variables de entrada("entrada.pdf") y salida PDF/A("salida.pdfa") caminos.
El archivo de entrada es un formulario editable:
QPDF input_pdf;
input_pdf.processFile(input_pdf_path.c_str());
QPDF input_pdf;
input_pdf.processFile(input_pdf_path.c_str());
Se crea un objeto QPDF
llamado input_pdf
. La función processFile
se utiliza en el objeto input_pdf
, pasando la ruta del archivo de entrada como argumento.
QPDFWriter
para escribir archivos PDF/AQPDFWriter writer(input_pdf, output_pdf_a_path.c_str());
QPDFWriter writer(input_pdf, output_pdf_a_path.c_str());
Se crea un objeto QPDFWriter
, writer
, para escribir el archivo PDF/A de salida.
writer.setQDFMode(true);
writer.write();
writer.setQDFMode(true);
writer.write();
Este código establece la conformidad PDF/A mediante setQDFMode(verdadero)en el objeto
writer. La "escritura()la función
realiza la conversión en el documento PDF y guarda el resultado en un archivo PDF/A.
El archivo de salida no es editable y es compatible con PDF/A:
Biblioteca IronPDF es una biblioteca PDF .NET que proporciona funciones completas para trabajar con documentos PDF. Permite a los desarrolladores crear, modificar y convertir documentos PDF utilizando C# o VB.NET. Los usuarios pueden utilizar IronPDF para generar archivos PDF a partir de documentos HTML, ASPX y Word.(.doc)la traducción debe ser profesional, preservando la precisión técnica y explicando al mismo tiempo las características y ventajas de estas herramientas para desarrolladores(como los formatos JPG, PNG). También permite combinar, dividir y editar páginas de archivos PDF existentes, así como extraer texto y manipular el contenido de los datos PDF.
IronPDF facilita la conversión dePDF al formato PDF/A-3b estándar con unas pocas líneas de código. El siguiente código ayuda a realizar esta tarea:
using IronPdf;
// Create a PdfDocument object or open any PDF file
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
using IronPdf;
// Create a PdfDocument object or open any PDF file
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
Imports IronPdf
' Create a PdfDocument object or open any PDF file
Private pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3)
Este artículo le guiará a través de la conversión en C++ de un documento PDF estándar al formato PDF/A utilizando las bibliotecas QPDF. La conformidad con PDF/A garantiza la conservación y accesibilidad de los contenidos, por lo que es ideal para archivar.
IronPDF también admite conversiones de varios formatos, como HTML, imágenes y documentos de Word a archivos PDF. Para más información, visitePágina de documentación de IronPDF.
IronPDF proporciona unprueba gratuita de IronPDF para probar la funcionalidad de la producción comercial. Descargar IronPDF directamente desde la página de inicio.
9 productos API .NET para sus documentos de oficina