Mit IronPDF PDFs in C#35 linearisieren

This article was translated from English: Does it need improvement?
Translated
View the article in English

Linearisierte PDFs ermöglichen die sofortige Anzeige der ersten Seite beim Herunterladen, was die Benutzerfreundlichkeit bei großen Dokumenten erheblich verbessert. IronPDF bietet einfache Methoden, um sie in C# zu erstellen und zu verifizieren und optimiert Ihre Dokumente für eine schnelle Webansicht.

Ein linearisiertes PDF, auch bekannt als "Fast Web View" oder "web-optimiertes PDF", ist strukturell für das Internet-Streaming reorganisiert. Dies ermöglicht einem kompatiblen Viewer, die erste Seite eines Dokuments fast sofort anzuzeigen, lange bevor die gesamte Datei heruntergeladen ist.

In missionskritischen oder zeitkritischen Anwendungen ist diese Funktion besonders nützlich. Sie beseitigt frustrierende Ladezeiten für große Dokumente, insbesondere in langsamen oder mobilen Netzwerken, sodass Benutzer sofort mit dem Inhalt interagieren können. Dies erleichtert schnellere Entscheidungsfindungen und erhöht die Produktivität in professionellen Umgebungen. In Kombination mit IronPDFs Leistungsoptimierungsfunktionen bieten sie ein außergewöhnliches Seherlebnis.

In diesem How-to-Artikel werden wir die Optionen untersuchen, die IronPDF Entwicklern bietet, um ihre Dokumente als linearisierte PDFs zu exportieren.

Schnellstart: Linearisieren Sie Ihr PDF für eine schnellere Webansicht

Beginnen Sie mit IronPDF, um Ihre PDFs mühelos zu linearisieren. Dieses einfache Codebeispiel zeigt, wie man ein PDF für schnelleres Laden in Webbrowsern optimiert, indem man die LinearizePdf-Methode von IronPDF verwendet. Verbessern Sie das Benutzererlebnis, indem Seiten während des Ladens angezeigt werden. Folgen Sie den untenstehenden Schritten, um Ihre PDFs zu optimieren und effizienter für die Online-Freigabe zu machen.

  1. Installieren Sie IronPDF mit NuGet Package Manager

    PM > Install-Package IronPdf
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    var pdf = IronPdf.PdfDocument.FromFile("input.pdf");
    pdf.SaveAsLinearized(pdf.BinaryData, "linearized.pdf");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer


Wie speichere ich eine PDF-Datei als linearisierte Datei?

Das Speichern eines Dokuments als linearisiertes PDF mit IronPDF ist ein schneller und einfacher Prozess. Bevor Sie beginnen, stellen Sie sicher, dass Sie IronPDF über NuGet oder über eine der anderen verfügbaren Installationsmethoden installiert haben.

In diesem Beispiel werden wir einen HTML-String in ein PDF rendern, indem wir RenderHtmlAsPdf verwenden. Für komplexere HTML-Dokumente sollten Sie sich die Funktionen von IronPDF zur Konvertierung von HTML in PDF ansehen. Anschließend speichern wir das PdfDocument-Objekt als lineares PDF mit der SaveAsLinearized-Instanzmethode, indem wir den Ausgabepfad als String-Argument übergeben.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Pdf Bytes</h1>");

// Get the PDF binary data
var pdfBytes = pdf.BinaryData;

// Save the PDF binary data as a linearized PDF file
PdfDocument.SaveAsLinearized(pdfBytes, "linearize-from-bytes.pdf");
Imports IronPdf

' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()

' Create a PDF from an HTML string using VB.NET
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Pdf Bytes</h1>")

' Get the PDF binary data
Dim pdfBytes = pdf.BinaryData

' Save the PDF binary data as a linearized PDF file
PdfDocument.SaveAsLinearized(pdfBytes, "linearize-from-bytes.pdf")
$vbLabelText   $csharpLabel

Dieser Prozess strukturiert das interne Format des PDFs um, indem kritische Informationen an den Anfang der Datei gesetzt werden, was progressives Herunterladen und Rendern ermöglicht. Dies ist besonders vorteilhaft beim Bereitstellen von PDFs über Webanwendungen.

Wie sieht die Ausgabe aus?

Dialogfeld "PDF-Eigenschaften" mit hervorgehobener Einstellung "Schnelle Webansicht" zur Demonstration der linearisierten PDF-Optimierung

Wie speichere ich PDF-Bytes in linearisierter Form?

Zusätzlich zum direkten Speichern eines PdfDocument-Objekts ermöglicht IronPDF auch die Umwandlung eines PDF-Byte-Arrays in ein lineares PDF. Diese Flexibilität ist besonders nützlich bei der Arbeit mit in Datenbanken gespeicherten PDFs oder bei der Verarbeitung von PDFs in speicherintensiven Anwendungen. Weitere Informationen zur Arbeit mit PDFs im Speicher finden Sie in unserem Leitfaden zum Laden von PDFs aus Speicherströmen.

In diesem Beispiel zeigen wir, wie ein HTML-String in ein PdfDocument-Objekt gerendert wird, dessen Byte-Array erhalten und diese Daten dann als lineares PDF gespeichert werden, indem die SaveAsLinearized-Überladung verwendet wird, die byte[]-Eingaben, einen Ausgabepfad und ein optionales Passwort akzeptiert.

Wie sieht die Ausgabe aus?

Dies ist die Datei, die der Code erzeugt hat:

Wie speichere ich einen MemoryStream als linearisiert?

Die SaveAsLinearized-Überladung, die Stream-Eingaben akzeptiert, schreibt dennoch die linearen Ausgaben in eine Datei am angegebenen Ausgabepfad. Dies ist nützlich, wenn Ihr Quell-PDF bereits in einem Stream (aus einer Datenbank, einem Netzwerk oder einem Speicherpuffer) vorliegt und Sie das linearisierte Ergebnis auf der Festplatte speichern möchten.

In diesem Beispiel werden wir ein PdfDocument-Objekt in ein Byte-Array umwandeln, es in einen MemoryStream schreiben und dann den Stream als lineare PDF-Datei speichern, um diese Fähigkeit zu demonstrieren.

Wenn Sie das Schreiben auf die Festplatte vollständig vermeiden müssen (für HIPAA, PCI-DSS, sandboxed Apps oder Cloud-Funktionen mit schreibgeschützten Dateisystemen), siehe die In-Memory-Methoden im nächsten Abschnitt.

Dies ist die Datei, die der Code erzeugt hat:

Wie kann ich vollständig im Speicher linearisieren?

Für sandboxed Umgebungen, Cloud-Funktionen oder compliance-sensible Workflows (HIPAA, PCI-DSS), bei denen das Schreiben auf die Festplatte eingeschränkt oder unerwünscht ist, bietet IronPDF die LinearizePdfToBytes- und LinearizePdfToStream-Methoden, die das lineare PDF direkt zurückgeben, ohne temporäre Dateien oder Festplatten-I/O.

Diese Methoden sind sowohl als Instanzmethoden auf PdfDocument als auch als statische Methoden verfügbar, die byte[]- oder Stream-Eingaben akzeptieren.

Linearisiertes Ausgabeformat als Bytes erhalten

Verwenden Sie LinearizePdfToBytes, wenn Sie ein byte[] für eine HTTP-Antwort, eine Datenbank-varbinary-Spalte oder einen festen Puffer benötigen.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf-3.cs
using IronPdf;

// Instance method: linearize the current document, get bytes back
var pdf = PdfDocument.FromFile("input.pdf");
byte[] linearizedBytes = pdf.LinearizePdfToBytes();

// Static method: linearize from a byte array without instantiating PdfDocument
byte[] inputBytes = File.ReadAllBytes("input.pdf");
byte[] result = PdfDocument.LinearizePdfToBytes(inputBytes);

// Password-protected PDFs
byte[] decrypted = PdfDocument.LinearizePdfToBytes(encryptedBytes, password: "secret");
Imports IronPdf

' Instance method: linearize the current document, get bytes back
Dim pdf = PdfDocument.FromFile("input.pdf")
Dim linearizedBytes As Byte() = pdf.LinearizePdfToBytes()

' Static method: linearize from a byte array without instantiating PdfDocument
Dim inputBytes As Byte() = File.ReadAllBytes("input.pdf")
Dim result As Byte() = PdfDocument.LinearizePdfToBytes(inputBytes)

' Password-protected PDFs
Dim decrypted As Byte() = PdfDocument.LinearizePdfToBytes(encryptedBytes, password:="secret")
$vbLabelText   $csharpLabel

Linearisiertes Ausgabeformat als Stream erhalten

Verwenden Sie LinearizePdfToStream, wenn Sie Ausgaben in einen anderen Stream leiten (z. B. Cloud-Bloß-Uploads, HTTP-Antwortkörper, Netzwerksockets), ohne die gesamte Datei im Speicher zu puffern.

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf-4.cs
// Instance method: return a Stream
Stream linearizedStream = pdf.LinearizePdfToStream();

// Static method: linearize from a stream
using var inputStream = File.OpenRead("input.pdf");
Stream resultStream = PdfDocument.LinearizePdfToStream(inputStream);
Imports System.IO

' Instance method: return a Stream
Dim linearizedStream As Stream = pdf.LinearizePdfToStream()

' Static method: linearize from a stream
Using inputStream As FileStream = File.OpenRead("input.pdf")
    Dim resultStream As Stream = PdfDocument.LinearizePdfToStream(inputStream)
End Using
$vbLabelText   $csharpLabel

Die Linearierungsstrategie steuern

Alle sechs Methoden akzeptieren einen optionalen LinearizationMode-Parameter:

Modus Verhalten Wann zu verwenden
Automatic (Standard) Versucht zuerst die dateibasierte Methode; weicht zu In-Memory aus, wenn der Festplattenzugriff eingeschränkt ist Empfohlener Standard; funktioniert in den meisten Umgebungen
InMemory Führt die Linearisation vollständig im Speicher durch, null Festplatten-I/O HIPAA / PCI-DSS Workflows, sandboxed Apps, schreibgeschützte Dateisysteme, Cloud-Funktionen
FileBased Verwendet eine temporäre Datei im System-Temp-Verzeichnis Wenn Sie explizit das Temp-Datei-Verhalten wünschen und über Schreibberechtigungen verfügen
:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf-5.cs
using IronPdf;

// Force in-memory linearization (no disk I/O at all)
byte[] linearized = pdf.LinearizePdfToBytes(LinearizationMode.InMemory);
Imports IronPdf

' Force in-memory linearization (no disk I/O at all)
Dim linearized As Byte() = pdf.LinearizePdfToBytes(LinearizationMode.InMemory)
$vbLabelText   $csharpLabel

Hinweis:ArgumentException wird ausgelöst, wenn die Eingabebytes null/leer sind oder wenn der Eingabestream nicht lesbar ist. ArgumentNullException wird ausgelöst, wenn der Eingabestream null ist.)

Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

Kombinieren Sie LinearizePdfToStream mit FileStreamResult von ASP.NET, um ein weboptimiertes PDF direkt an den Browser zu liefern, ohne eine temporäre Datei zu schreiben:

:path=/static-assets/pdf/content-code-examples/how-to/linearize-pdf-http-response.cs
using IronPdf;
using Microsoft.AspNetCore.Mvc;

}

public class ReportController : Controller
{
    public IActionResult DownloadReport()
    {
        var pdf = PdfDocument.FromFile("quarterly-report.pdf");
        Stream linearized = pdf.LinearizePdfToStream(LinearizationMode.InMemory);

        return new FileStreamResult(linearized, "application/pdf")
        {
            FileDownloadName = "quarterly-report.pdf"
        };
    }
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc

Public Class ReportController
    Inherits Controller

    Public Function DownloadReport() As IActionResult
        Dim pdf = PdfDocument.FromFile("quarterly-report.pdf")
        Dim linearized As Stream = pdf.LinearizePdfToStream(LinearizationMode.InMemory)

        Return New FileStreamResult(linearized, "application/pdf") With {
            .FileDownloadName = "quarterly-report.pdf"
        }
    End Function
End Class
$vbLabelText   $csharpLabel

Der Browser erhält ein linearisiertes PDF, das anfängt, die erste Seite anzuzeigen, während der Rest eingestreamt wird — und keine Zwischendatei jemals die Festplatte des Servers berührt.


Icon Quote related to Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

Meine Lieblingsbibliothek dieser Art ist IronPDF. Es ermöglicht eine schnelle und effiziente Bearbeitung von PDF-Dateien. Es verfügt auch über viele wertvolle Funktionen, wie das Exportieren in das PDF/A-Format und das digitale Signieren von PDF-Dokumenten.

Milan Jovanovic related to Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

Milan Jovanovic

Microsoft MVP

Fallstudie ansehen
Icon Quote related to Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

IronOCR bedeutet, dass wir jährlich 40.000 $ durch manuelle Verarbeitung einsparen können, während die Produktivität gesteigert wird und Ressourcen für wichtige Aufgaben freigesetzt werden. Ich würde es sehr empfehlen.

Brent Matzelle related to Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

Brent Matzelle

Technischer Leiter, OPYN

Fallstudie ansehen
Icon Quote related to Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

Die Iron Suite spielt eine entscheidende Rolle in unseren Operationen. Diese Werkzeuge erhöhen die Effizienz im gesamten Unternehmen, einschließlich der Erstellung von Grundrissen und der Verbesserung des Bestandsmanagements.

David Jones related to Wie streame ich ein linearisiertes PDF zu einer HTTP-Antwort?

David Jones

Leitender Software-Ingenieur, Agorus Build

Fallstudie ansehen

Wie kann ich überprüfen, ob eine PDF-Datei linearisiert ist?

Neben der Überprüfung der Dokumenteigenschaften in einem PDF-Viewer, wie Adobe Acrobat, um festzustellen, ob ein PDF linearisiert ist, bietet IronPDF auch eine Möglichkeit, dies programmgesteuert mit der IsLinearized-Methode zu überprüfen. Es akzeptiert einen Zeichenfolgenparameter für den Dateipfad und einen optionalen zweiten Zeichenfolgenparameter für das Passwort, wenn das PDF verschlüsselt ist. Diese Überprüfungsfunktion ist für die Qualitätssicherung unerlässlich und kann in automatisierte Testabläufe integriert werden.

In diesem Beispiel verwenden wir die Ausgabedateien der drei obigen Beispiele, um zu testen, ob sie linearisiert sind, und fügen eine vierte, nicht linearisierte PDF-Datei hinzu, um das Verhalten der Methode zu zeigen. Weitere fortgeschrittene Techniken zur PDF-Bearbeitung und -Überprüfung finden Sie in IronPDFs umfassendem Funktionsumfang.

Was sind die Ergebnisse?

Debug-Ausgabe mit PDF-Linearisierungsergebnissen: drei wahre Werte und ein falscher Wert

Wie Sie sehen, geben die ersten drei Beispiele MemoryStream zurück, während das letzte PDF, das nicht linearisiert ist, IsLinearized zurückgibt.

Hinweis:Linearisierung ist eine dateiübergreifende Struktur, daher funktioniert die Verifizierung auf gespeicherten Dateien über IsLinearized. Um lineare Ausgaben als Bytes oder einen Stream zu erzeugen, ohne auf die Festplatte zu schreiben, verwenden Sie die oben beschriebenen LinearizePdfToBytes- und LinearizePdfToStream-Methoden.)

Best Practices für linearisierte PDFs

Beachten Sie bei der Arbeit mit linearisierten PDF-Dateien die folgenden bewährten Verfahren:

  1. Berücksichtigung der Dateigröße: Durch die Linearisierung kann sich die Dateigröße aufgrund des umstrukturierten Formats leicht erhöhen. Verwenden Sie bei Bedarf die Komprimierungsfunktionen von IronPDF, um die Dateigröße zu optimieren.

  2. Web-Bereitstellung: Linearisierte PDFs sind ideal für Webanwendungen. Konfigurieren Sie Ihren Webserver so, dass er Byte-Range-Anfragen unterstützt, um die Vorteile der Linearisierung zu maximieren.

  3. Leistungsprüfung: Testen Sie linearisierte PDFs immer in Ihrer Zielumgebung. Die Leistungsverbesserung ist vor allem bei großen Dateien über langsamere Verbindungen spürbar.

  4. Kompatibilität: Obwohl die meisten modernen PDF-Viewer linearisierte PDFs unterstützen, sollten Sie die Kompatibilität mit den bevorzugten Viewern Ihrer Benutzer sicherstellen.

Weitere Optimierungsstrategien und fortgeschrittene PDF-Verarbeitungstechniken finden Sie in der Dokumentation der Rendering-Optionen von IronPDF.

Häufig gestellte Fragen

Was ist eine linearisierte PDF-Datei und warum sollte ich sie verwenden?

Ein linearisiertes PDF, auch bekannt als 'Fast Web View' oder 'web-optimiertes PDF', ist strukturell für das Internet-Streaming umstrukturiert. Die Linearisierungsfunktion von IronPDF ermöglicht es kompatiblen Viewern, die erste Seite fast sofort anzuzeigen, während der Rest heruntergeladen wird, was die Benutzerfreundlichkeit bei großen Dokumenten erheblich verbessert, insbesondere bei langsamen oder mobilen Netzwerken.

Wie kann ich eine linearisierte PDF-Datei in C# erstellen?

Mit IronPDF können Sie mit der SaveAsLinearized-Methode ganz einfach eine linearisierte PDF-Datei erstellen. Laden oder erstellen Sie einfach Ihr PDF-Dokument und rufen Sie dann pdf.SaveAsLinearized(pdf.BinaryData, 'output.pdf') auf, um es als linearisiertes PDF zu speichern, das für eine schnelle Webanzeige optimiert ist.

Kann ich vorhandene PDF-Dateien in das linearisierte Format konvertieren?

Ja, IronPDF ermöglicht die Konvertierung vorhandener PDF-Dateien in das linearisierte Format. Sie können jede PDF-Datei mit PdfDocument.FromFile('input.pdf') laden und dann die SaveAsLinearized-Methode verwenden, um sie als linearisierte PDF-Datei für eine verbesserte Web-Performance zu speichern.

Wie kann ich überprüfen, ob eine PDF-Datei bereits linearisiert ist?

IronPDF bietet die Eigenschaft IsLinearized, um zu prüfen, ob eine PDF-Datei linearisiert ist. Laden Sie einfach Ihr PDF-Dokument und prüfen Sie die boolesche Eigenschaft IsLinearized, um festzustellen, ob das Dokument bereits für eine schnelle Webanzeige optimiert ist.

Was sind die wichtigsten Vorteile der Linearisierung von PDF-Dateien für Webanwendungen?

Die Linearisierung von PDFs mit IronPDF ermöglicht eine sofortige Anzeige der ersten Seite, eliminiert frustrierende Ladezeiten für große Dokumente, ermöglicht eine schnellere Entscheidungsfindung in professionellen Umgebungen und verbessert die Benutzerfreundlichkeit erheblich, insbesondere bei unternehmenskritischen oder zeitkritischen Anwendungen.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 20,296,129 | Version: 2026.7 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronPdf
Führen Sie eine Probe aus Sehen Sie zu, wie Ihr HTML-Code in eine PDF-Datei umgewandelt wird.