Convertir PDF a EPUB, LaTeX, Texto, XPS en C#

Convertir PDF a EPUB

EPUB es un estándar de libro electrónico gratuito y abierto del Foro Internacional de Publicación Digital (IDPF). Los archivos tienen la extensión .epub. EPUB está diseñado para contenido refluido, lo que significa que un lector de EPUB puede optimizar el texto para un dispositivo de visualización particular. EPUB también admite contenido de diseño fijo. El formato está destinado a ser un formato único que los editores y las casas de conversión pueden usar internamente, así como para distribución y venta. Sustituye el estándar Open eBook.

El siguiente fragmento de código también funciona con la biblioteca Aspose.PDF.Drawing.

Aspose.PDF for .NET también admite la función de convertir documentos PDF a formato EPUB. Aspose.PDF for .NET tiene una clase llamada EpubSaveOptions que se puede usar como el segundo argumento del método Document.Save(..) para generar un archivo EPUB. Por favor, intenta usar el siguiente fragmento de código para cumplir con este requisito con C#.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoEPUB()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "PDFToEPUB.pdf"))
    {
        // Instantiate Epub Save options
        EpubSaveOptions options = new EpubSaveOptions();
        // Specify the layout for contents
        options.ContentRecognitionMode = EpubSaveOptions.RecognitionMode.Flow;

        // Save ePUB document
        document.Save(dataDir + "PDFToEPUB_out.epub", options);
    }
}

Convertir PDF a LaTeX/TeX

Aspose.PDF for .NET admite la conversión de PDF a LaTeX/TeX. El formato de archivo LaTeX es un formato de archivo de texto con un marcado especial y se utiliza en sistemas de preparación de documentos basados en TeX para una tipografía de alta calidad.

Para convertir archivos PDF a TeX, Aspose.PDF tiene la clase LaTeXSaveOptions que proporciona la propiedad OutDirectoryPath para guardar imágenes temporales durante el proceso de conversión.

El siguiente fragmento de código muestra el proceso de conversión de archivos PDF al formato TEX con C#.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoTeX()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "PDFToTeX.pdf"))
    {
        // Instantiate LaTex save option          
        LaTeXSaveOptions saveOptions = new LaTeXSaveOptions();

        // Specify the output directory
        string pathToOutputDirectory = dataDir;

        // Set the output directory path for save option object
        saveOptions.OutDirectoryPath = pathToOutputDirectory;

        // Save PDF document into LaTex format           
        document.Save(dataDir + "PDFToTeX_out.tex", saveOptions);
    }
}

Convertir PDF a Texto

Aspose.PDF for .NET admite la conversión de todo el documento PDF y de una sola página a un archivo de Texto.

Convertir todo el documento PDF a archivo de Texto

Puedes convertir un documento PDF a un archivo TXT utilizando el método Visit de la clase TextAbsorber.

El siguiente fragmento de código explica cómo extraer los textos de todas las páginas.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoTXT()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "demo.pdf"))
    {
        var ta = new Aspose.Pdf.Text.TextAbsorber();
        ta.Visit(document);

        // Save the extracted text in text file
        File.WriteAllText(dataDir + "input_Text_Extracted_out.txt",ta.Text);
    }
}

Convertir página PDF a archivo de texto

Puedes convertir un documento PDF a un archivo TXT con Aspose.PDF for .NET. Debes usar el método Visit de la clase TextAbsorber para resolver esta tarea.

El siguiente fragmento de código explica cómo extraer los textos de páginas particulares.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoTXT()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "demo.pdf"))
    {
        var ta = new Aspose.Pdf.Text.TextAbsorber();
        var pages = new [] {1, 3, 4};
        foreach (var page in pages)
        {
            ta.Visit(document.Pages[page]);
        }
    
        // Save the extracted text in text file
        File.WriteAllText(dataDir + "input_Text_Extracted_out.txt", ta.Text);
    }
}

Convertir PDF a XPS

Aspose.PDF for .NET ofrece la posibilidad de convertir archivos PDF a formato XPS. Intentemos usar el fragmento de código presentado para convertir archivos PDF a formato XPS con C#.

El tipo de archivo XPS está asociado principalmente con la Especificación de Papel XML de Microsoft Corporation. La Especificación de Papel XML (XPS), anteriormente conocida como Metro y que abarca el concepto de marketing del Camino de Impresión de Nueva Generación (NGPP), es la iniciativa de Microsoft para integrar la creación y visualización de documentos en el sistema operativo Windows.

Para convertir archivos PDF a XPS, Aspose.PDF tiene la clase XpsSaveOptions que se utiliza como el segundo argumento del método Document.Save(..) para generar el archivo XPS.

Desde la versión 24.2, Aspose.PDF ha implementado la conversión de PDF Buscable a XPS mientras mantiene el Texto Seleccionable en el XPS resultante. Para preservar el texto, es necesario establecer la propiedad XpsSaveOptions.SaveTransparentTexts en true.

El siguiente fragmento de código muestra el proceso de conversión de un archivo PDF al formato XPS.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoXPS()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    using (var document = new Aspose.Pdf.Document(dataDir + "demo.pdf"))
    {
        var xpsOptions = new XpsSaveOptions
        {
            SaveTransparentTexts = true
        };

        // Save XPS document
        document.Save(dataDir + "PDFtoXPS_out.xps", xpsOptions);
    }
}

Convertir PDF a Markdown

Aspose.PDF for .NET ofrece la posibilidad de convertir archivos PDF a formato MD. Intentemos usar el fragmento de código presentado para convertir archivos PDF a formato MD con C#.

Markdown es un lenguaje de marcado ligero diseñado para representar el formato de texto plano con la máxima legibilidad humana y legibilidad por máquina para lenguajes de publicación avanzados.

Optimizar el uso de imágenes mediante el convertidor de PDF a Markdown

Puedes notar que en directorios con imágenes, el número de imágenes es menor que el número de imágenes en archivos PDF.

Dado que el archivo markdown no puede establecer el tamaño de la imagen, sin la opción MarkdownSaveOptions.UseImageHtmlTag, el mismo tipo de imágenes con diferentes tamaños se guardan como diferentes.

Para la opción habilitada MarkdownSaveOptions.UseImageHtmlTag se guardarán imágenes únicas, que se escalan en el documento mediante la etiqueta img.

El código abre un documento PDF, configura los parámetros para convertirlo a un archivo Markdown (guardando cualquier imagen en la carpeta llamada “images”) y guarda el archivo Markdown resultante en la ruta de salida especificada.

El siguiente fragmento de código muestra el proceso de conversión de un archivo PDF al formato MD.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoMarkup()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "demo.pdf"))
    {
        // Create an instance of MarkdownSaveOptions to configure the Markdown export settings
        var saveOptions = new MarkdownSaveOptions()
        {
            // Set to false to prevent the use of HTML <img> tags for images in the Markdown output
            UseImageHtmlTag = false
        }
        
        // Specify the directory name where resources (like images) will be stored
        saveOptions.ResourcesDirectoryName = "images";

        // Save PDF document in Markdown format to the specified output file path using the defined save options   
        document.Save(dataDir + "PDFtoMarkup_out.md", saveOptions);
    }
}

Convertir PDF a MobiXml

MobiXML es un formato de eBook popular, diseñado para ser utilizado en plataformas móviles. El siguiente fragmento de código explica cómo convertir un documento PDF a un archivo MobiXML.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET      
private static void ConvertPdfToMobiXml()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "PDFToXML.pdf"))
    {
        // Save PDF document in XML format
        document.Save(dataDir + "PDFToXML_out.xml", Aspose.Pdf.SaveFormat.MobiXml);
    }
}