Convertir libro de Excel a PDF
Conversión de libro de Excel a PDF
Los archivos PDF son ampliamente utilizados para intercambiar documentos entre organizaciones, sectores gubernamentales e individuos. Es un formato de documento estándar y a menudo se pide a los desarrolladores de software que encuentren una forma de convertir archivos de Microsoft Excel en documentos PDF.
Aspose.Cells admite la conversión de archivos de Excel a PDF y mantiene una alta fidelidad visual en la conversión.
Aspose.Cells escribe directamente la información sobre la API y el número de versión en los documentos de salida. Por ejemplo, al representar el documento en PDF, Aspose.Cells for C++ llena el campo Application con el valor ‘Aspose.Cells’ y el campo Productor de PDF con el valor, por ejemplo, ‘Aspose.Cells v18.5.0’.
Ten en cuenta que no puedes instruir a Aspose.Cells for C++ para cambiar o eliminar esta información de los documentos de salida.
Conversión Directa
Aspose.Cells admite la conversión de hojas de cálculo a PDF de forma independiente a otro software. Simplemente guarda un archivo de Excel en PDF usando el método Save clase SaveFormat_Pdf para convertir los archivos de Excel nativos al formato PDF.
Siga los siguientes pasos para convertir directamente las hojas de cálculo de Excel al formato PDF:
- Instantiate un objeto de la clase Workbook llamando a su constructor vacío.
- Puede abrir/cargar un archivo de plantilla existente o saltarse este paso si está creando el libro de trabajo desde cero.
- Realiza cualquier trabajo (ingreso de datos, aplicación de formato, definición de fórmulas, inserción de imágenes u otros objetos de dibujo, etc.) en la hoja de cálculo usando las APIs de Aspose.Cells.
- Cuando el código de la hoja de cálculo esté completo, llama al método Save de la clase Workbook para guardar la hoja de cálculo.
El formato del archivo debería ser PDF, así que selecciona el PDF relevante (un valor predefinido) de la enumeración SaveFormat para generar el documento PDF final
Por favor, consulta el siguiente código de muestra, su archivo de Excel de muestra y PDF de salida para tu referencia.
Aspose::Cells::Startup(); | |
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
// Source directory path. | |
U16String srcDir(u"..\\Data\\01_SourceDirectory\\"); | |
// Output directory path. | |
U16String outDir(u"..\\Data\\02_OutputDirectory\\"); | |
// Path of input Excel file | |
U16String sampleConvertExcelWorkbookToPDF = srcDir+ u"sampleConvertExcelWorkbookToPDF.xlsx"; | |
// Path of output Pdf file | |
U16String outputConvertExcelWorkbookToPDF = outDir+ u"outputConvertExcelWorkbookToPDF_DirectConversion.pdf"; | |
// Load the sample Excel file. | |
Workbook workbook(sampleConvertExcelWorkbookToPDF); | |
// Save the Excel Document in PDF format | |
workbook.Save(outputConvertExcelWorkbookToPDF, SaveFormat::Pdf); | |
Aspose::Cells::Cleanup(); |
Conversión Avanzada
También puedes optar por usar la clase PdfSaveOptions para establecer diferentes atributos para la conversión. Establecer diferentes propiedades de la clase PdfSaveOptions te da control sobre la impresión, fuente, seguridad y configuración de compresión para el PDF de salida. La propiedad más importante es SetCompliance que te permite guardar los archivos de Excel en archivos PDF/A compatibles con PDF.
Guardando el Libro de Trabajo en Archivos PDF/A Compilados
El siguiente fragmento de código demuestra cómo utilizar la clase PdfSaveOptions para guardar archivos de Excel en formato PDF/A compatible
Por favor, consulte el siguiente código de muestra y su PDF de salida para su referencia.
Aspose::Cells::Startup(); | |
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
// Output directory path. | |
U16String outDir(u"..\\Data\\02_OutputDirectory\\"); | |
// Path of output Pdf file. | |
U16String outputConvertExcelWorkbookToPDF = outDir+ u"outputConvertExcelWorkbookToPDF_PdfCompliance_PdfA1b.pdf"; | |
// Create an empty workbook. | |
Workbook workbook; | |
// Access first worksheet. | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
// Access cell A1. | |
Cell cell = worksheet.GetCells().Get(u"A1"); | |
// Add some text in cell. | |
cell.PutValue(u"Testing PDF/A"); | |
// Create pdf save options object. | |
PdfSaveOptions pdfSaveOptions; | |
// Set the compliance to PDF/A-1b. | |
pdfSaveOptions.SetCompliance(PdfCompliance::PdfA1b); | |
// Save the Excel Document in PDF format | |
workbook.Save(outputConvertExcelWorkbookToPDF, pdfSaveOptions); | |
Aspose::Cells::Cleanup(); |
Establecer la Hora de Creación del PDF
Con la clase IPdfSaveOptions, puede obtener o establecer la hora de creación del PDF
Por favor, consulte el siguiente código de muestra y su PDF de salida para su referencia.
Aspose::Cells::Startup(); | |
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
// Output directory path. | |
U16String outDir(u"..\\Data\\02_OutputDirectory\\"); | |
// Path of output Pdf file. | |
U16String outputConvertExcelWorkbookToPDF = outDir + u"outputConvertExcelWorkbookToPDF_PDFCreationTime.pdf"; | |
// Create an empty workbook. | |
Workbook workbook; | |
// Access first worksheet. | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
// Access cell A1. | |
Cell cell = worksheet.GetCells().Get(u"A1"); | |
// Add some text in cell. | |
cell.PutValue(u"PDF Creation Time is 25-May-2017."); | |
// Create pdf save options object. | |
PdfSaveOptions pdfSaveOptions; | |
// Set the created time for the PDF i.e. 25-May-2017 | |
pdfSaveOptions.SetCreatedTime(Date{2017, 5, 25}); | |
// Save the Excel Document in PDF format | |
workbook.Save(outputConvertExcelWorkbookToPDF, pdfSaveOptions); | |
Aspose::Cells::Cleanup(); |