EPUB in PDF konvertieren in C#

EPUB ist ein E-Book-Dateiformat, das ein Standardformat für digitale Veröffentlichungen darstellt. Es wurde vom International Digital Publishing Forum ( IDPF) entwickelt und wird inzwischen von vielen E-Readern und Softwareanwendungen unterstützt. Die Konvertierung von EPUB in PDF ist häufig erforderlich, um die Vorteile des PDF-Formats zu nutzen. Das PDF-Dateiformat kann Informationen wie Text, Bilder, Hyperlinks, Formularfelder, Rich Media, Metadaten usw. enthalten. PDF-Dateien können in Adobe Acrobat Reader/Writer und den meisten modernen Browsern wie Chrome, Safari und Firefox geöffnet werden. Sie sind für den Druck optimiert und eignen sich ideal für die Erstellung physischer Kopien Ihrer Dokumente; außerdem können Sie die Sicherheitseinstellungen für PDF konfigurieren.

In diesem Artikel finden Sie Informationen zur Konvertierung von EPUB in PDF und zur Verwendung der Parameter PdfSaveOptions und ICreateStreamProvider.

Online EPUB Konverter

Sie können die Funktionalität der Aspose.HTML for .NET API überprüfen und EPUB in Echtzeit konvertieren. Bitte laden Sie eine EPUB-Datei aus dem lokalen Dateisystem, wählen Sie das Ausgabeformat und führen Sie das Beispiel aus. Im Beispiel sind die Speicheroptionen standardmäßig eingestellt. Sie erhalten das Ergebnis sofort als separate Datei.

                
            

Wenn Sie EPUB in PDF programmatisch konvertieren möchten, lesen Sie bitte die folgenden C#-Codebeispiele.

EPUB zu PDF mit zwei Zeilen Code

Die statischen Methoden der Klasse Converter werden in erster Linie als einfachste Möglichkeit zur Konvertierung einer EPUB-Datei in verschiedene Formate verwendet. Sie können EPUB nach PDF in Ihrer C#-Anwendung buchstäblich mit zwei Zeilen Code konvertieren!

1// Convert EPUB to PDF using C#
2
3// Open an existing EPUB file for reading
4using FileStream stream = File.OpenRead(DataDir + "input.epub");
5
6// Invoke the ConvertEPUB() method to convert EPUB to PDF
7Converter.ConvertEPUB(stream, new PdfSaveOptions(), Path.Combine(OutputDir, "convert-by-two-lines.pdf"));

EPUB in PDF umwandeln

Um EPUB in PDF zu konvertieren, sollten Sie ein paar Schritte befolgen:

  1. Öffnen Sie eine vorhandene EPUB-Datei. In diesem Beispiel verwenden wir die Methode OpenRead() der Klasse System.IO.FileStream, um eine EPUB-Datei aus dem Dateisystem unter dem angegebenen Pfad zu öffnen und zu lesen.
  2. Erstellen Sie eine Instanz von PdfSaveOptions.
  3. Verwenden Sie die Methode ConvertEPUB() der Klasse Converter, um EPUB als PDF-Datei zu speichern. Sie müssen den EPUB-Dateistrom, PdfSaveOptions und den Pfad der Ausgabedatei an die Methode ConvertEPUB() übergeben, um EPUB in PDF zu konvertieren.

Das folgende C#-Code-Snippet zeigt, wie man EPUB mit Aspose.HTML for .NET in PDF konvertiert:

 1// Convert EPUB to PDF using C#
 2
 3// Open an existing EPUB file for reading
 4using FileStream stream = File.OpenRead(DataDir + "input.epub");
 5
 6// Prepare a path to save the converted file 
 7string savePath = Path.Combine(OutputDir, "input-output.pdf");
 8
 9// Create an instance of the PdfSaveOptions class
10PdfSaveOptions options = new PdfSaveOptions();
11
12// Call the ConvertEPUB() method to convert EPUB to PDF
13Converter.ConvertEPUB(stream, options, savePath);

Speicheroptionen – Klasse PdfSaveOptions

Mit Aspose.HTML for .NET können Sie EPUB-Dateien programmatisch in das PDF-Format konvertieren und haben dabei die volle Kontrolle über eine Vielzahl von Konvertierungsparametern. die Verwendung von PdfSaveOptions ermöglicht es Ihnen, den Rendering-Prozess zu optimieren; Sie können die page size, margins, file permissions, CSS media-type usw. angeben.

PropertyDescription
JpegQualitySpecifies the quality of JPEG compression for images. The default value is 95.
CssGets a CssOptions object which is used for configuration of CSS properties processing.
DocumentInfoThis property contains information about the output PDF document.
BackgroundColorThis property sets the color that will fill the background of every page. By default, this property is Transparent.
PageSetupThis property gets a page setup object and uses it for configuration output page-set.
HorizontalResolutionSets horizontal resolution for output images in pixels per inch. The default value is 300 dpi.
VerticalResolutionSets vertical resolution for output images in pixels per inch. The default value is 300 dpi.
EncryptionThis property gets or sets encryption details. If it is not set, then no encryption will be performed.

Um mehr über PdfSaveOptions zu erfahren, lesen Sie bitte den Artikel Feinabstimmungskonverter.

EPUB in PDF konvertieren mit PdfSaveOptions

Aspose.HTML ermöglicht die Konvertierung von EPUB in PDF mit Standard- oder benutzerdefinierten Speicheroptionen. Sie sollten ein paar Schritte befolgen:

  1. Öffnen Sie eine vorhandene EPUB-Datei.
  2. Erstellen Sie ein neues PdfSaveOptions-Objekt und geben Sie die erforderlichen Speicheroptionen an.
  3. Verwenden Sie die Methode ConvertEPUB(), um EPUB als PDF-Datei zu speichern. Sie müssen den EPUB-Dateistrom, PdfSaveOptions und den Pfad der Ausgabedatei an die Methode ConvertEPUB () für die Konvertierung von EPUB in PDF übergeben.

Das folgende Beispiel zeigt, wie Sie PdfSaveOptions verwenden und eine PDF-Datei mit benutzerdefinierten Speicheroptionen erstellen:

 1// Convert EPUB to PDF in C# with custom settings
 2
 3// Open an existing EPUB file for reading
 4using FileStream stream = File.OpenRead(DataDir + "input.epub");
 5
 6// Prepare a path to save the converted file 
 7string savePath = Path.Combine(OutputDir, "input-options.pdf");
 8
 9// Create an instance of PdfSaveOptions. Set up the page-size and change the background color to AliceBlue 
10PdfSaveOptions options = new PdfSaveOptions()
11{
12    PageSetup =
13        {
14            AnyPage = new Page()
15            {
16                Size = new Aspose.Html.Drawing.Size(Length.FromPixels(1000), Length.FromPixels(1000))
17            }
18        },
19    BackgroundColor = System.Drawing.Color.AliceBlue
20};
21
22// Call the ConvertEPUB() method to convert EPUB to PDF
23Converter.ConvertEPUB(stream, options, savePath);

Im Beispiel verwenden wir die Methode OpenRead() der Klasse System.IO.FileStream, um Quelldateien aus dem Dateisystem unter dem angegebenen Pfad zu öffnen und zu lesen. Der Konstruktor PdfSaveOptions() initialisiert eine Instanz der Klasse PdfSaveOptions, die an die Methode ConvertEPUB() übergeben wird. Die Methode ConvertEPUB() nimmt die Parameter stream, options und den Pfad der Ausgabedatei savePath entgegen und führt die Konvertierung durch. Die PdfSaveOptions-Klasse bietet zahlreiche Eigenschaften, die Ihnen die volle Kontrolle über eine Vielzahl von Parametern geben und den Prozess der EPUB-zu-PDF-Konvertierung verbessern.

Im obigen Beispiel verwenden wir:

Aspose.HTML for .NET bietet verschiedene Arten von Ausgabeformaten für Rendering-Operationen. Einige dieser Formate erzeugen eine einzige Ausgabedatei (z. B. PDF, XPS), andere erzeugen mehrere Dateien (Bildformate JPG, PNG, usw.).

Output-Stream-Anbieter

Wenn es erforderlich ist, Dateien in einem entfernten Speicher (z. B. Cloud, Datenbank usw.) zu speichern, können Sie die Schnittstelle ICreateStreamProvider implementieren, um die manuelle Kontrolle über den Dateierstellungsprozess zu haben. Diese Schnittstelle ist als Callback-Objekt konzipiert, um einen Stream zu Beginn des Dokuments/der Seite (je nach Ausgabeformat) zu erstellen und den früh erstellten Stream nach dem Rendern des Dokuments/der Seite freizugeben.

Das folgende Beispiel zeigt, wie Sie Ihren eigenen MemoryStreamProvider in der Anwendung implementieren und verwenden können:

 1// Implement a custom MemoryStream provider for advanced control over HTML rendering output streams
 2
 3class MemoryStreamProvider : Aspose.Html.IO.ICreateStreamProvider
 4{
 5    // List of MemoryStream objects created during the document rendering
 6    public List<MemoryStream> Streams { get; } = new List<MemoryStream>();
 7
 8    public Stream GetStream(string name, string extension)
 9    {
10        // This method is called when only one output stream is required, for instance for XPS, PDF or TIFF formats
11        MemoryStream result = new MemoryStream();
12        Streams.Add(result);
13        return result;
14    }
15
16    public Stream GetStream(string name, string extension, int page)
17    {
18        // This method is called when the creation of multiple output streams are required. For instance, during the rendering HTML to list of image files (JPG, PNG, etc.)
19        MemoryStream result = new MemoryStream();
20        Streams.Add(result);
21        return result;
22    }
23
24    public void ReleaseStream(Stream stream)
25    {
26        // Here you can release the stream filled with data and, for instance, flush it to the hard-drive
27    }
28
29    public void Dispose()
30    {
31        // Releasing resources
32        foreach (MemoryStream stream in Streams)
33            stream.Dispose();
34    }
35}

Der folgende Codeausschnitt zeigt, wie eine EPUB-Datei mithilfe eines Speicherstroms in eine PDF-Datei konvertiert werden kann.

 1// Convert EPUB to PDF in C# using memory stream
 2
 3// Create an instance of MemoryStreamProvider
 4using MemoryStreamProvider streamProvider = new MemoryStreamProvider();
 5
 6// Open an existing EPUB file for reading
 7using FileStream stream = File.OpenRead(DataDir + "input.epub");
 8
 9// Prepare a path to save the converted file 
10string savePath = Path.Combine(OutputDir, "stream-provider.pdf");
11
12// Convert EPUB to PDF by using the MemoryStreamProvider class
13Converter.ConvertEPUB(stream, new PdfSaveOptions(), streamProvider);
14
15// Get access to the memory stream that contains the result data
16MemoryStream memory = streamProvider.Streams.First();
17memory.Seek(0, SeekOrigin.Begin);
18
19// Flush the result data to the output file
20using (FileStream fs = File.Create(savePath))
21{
22    memory.CopyTo(fs);
23}

Die Methode ConvertEPUB(Stream, PdfSaveOptions, ICreateStreamProvider) nimmt die Konvertierungsquelle, die Optionen, die Instanz von MemoryStreamProvider, die verwendet wird, um einen Ausgabestrom zu erhalten, und führt die Konvertierungsoperation durch.

Sie können die vollständigen Beispiele und Datendateien von GitHub herunterladen.

Laden Sie die Bibliothek Aspose.HTML for .NET herunter, mit der Sie Ihre HTML-, MHTML-, EPUB-, SVG- und Markdown-Dokumente erfolgreich, schnell und einfach in die gängigsten Formate konvertieren können.

Aspose.HTML bietet einen kostenlosen Online- EPUB zu PDF Konverter, der EPUB in PDF mit hoher Qualität, einfach und schnell konvertiert. Einfach hochladen, Ihre Dateien konvertieren und in wenigen Sekunden Ergebnisse erhalten!

Text “EPUB zu PDF Konverter”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.