Diese Seite kann automatisch übersetzten Text enthalten.

PDFs mit der Core-API erstellen

Die Core-API von Docotic.Pdf bietet volle Kontrolle über die PDF-Erstellung. Sie ermöglicht das Zeichnen von Text, Bildern und Vektorgrafiken auf Zeichenflächen, die von PDF-Seiten, XObjects und Kachelmustern bereitgestellt werden.

Sie haben die volle Kontrolle über jede Koordinate und jeden Zeichenvorgang und somit maximale Kontrolle über das Layout Ihrer PDF-Seiten. Für grafikintensive oder individuell gestaltete Dokumente, bei denen Präzision entscheidend ist, ist diese Kontrolle unerlässlich.

Mit der Core-API können Sie den erstellten PDFs außerdem Anmerkungen, Formularfelder, Ebenen, Lesezeichen und vieles mehr hinzufügen. Die API ist die flexibelste und leistungsstärkste Methode zur PDF-Erstellung in .NET, bereitgestellt von Docotic.Pdf.

Illustration der Core-API-Funktionen zur PDF-Erstellung, einschließlich Vektorgrafiken, Bildplatzierung und Textzeichnung.

Einen umfassenderen Überblick über alle in Docotic.Pdf verfügbaren Ansätze, einschließlich derjenigen, die über die Core API hinausgehen, erhalten Sie im Artikel, der jede Methode zum Erstellen von PDFs beschreibt.

Bevor Sie beginnen

Bevor Sie mit der Arbeit mit der Core-API beginnen, richten Sie Ihre Umgebung ein, indem Sie Docotic.Pdf installieren und einen Lizenzschlüssel anfordern.

Installieren Sie Docotic.Pdf

Um PDF-Dokumente in C# oder VB.NET zu erstellen, installieren Sie zunächst die Bibliothek von NuGet.

Install-Package BitMiracle.Docotic.Pdf

Falls Sie die Bibliothek lieber manuell installieren möchten, laden Sie das ZIP-Archiv mit den Bibliotheksbinärdateien herunter, entpacken Sie es und fügen Sie in Ihrem Projekt einen Verweis auf die BitMiracle.Docotic.Pdf.dll hinzu.

Lizenzschlüssel anfordern

Für die Nutzung der Bibliothek ist ein Lizenzschlüssel erforderlich. Um die Bibliothek zu testen, fordern Sie einen kostenlosen, zeitlich begrenzten Lizenzschlüssel an, indem Sie das Formular auf der Downloadseite von Docotic.pdf ausfüllen.

Grundlegende Beispiele zur PDF-Erstellung

Dieser Abschnitt enthält grundlegende Beispiele, die zeigen, wie man mit der Core API PDF-Dokumente erstellt, zuerst in C# und dann in VB.NET.

Wie man in C# eine PDF-Datei erstellt

Nachdem Sie Docotic.Pdf installiert und einen Lizenzschlüssel erhalten haben, können Sie mit der Core API ganz einfach ein PDF erstellen.

BitMiracle.Docotic.LicenseManager.AddLicenseData("PUT-LICENSE-HERE");

using var pdf = new PdfDocument();
pdf.Save("empty.pdf");

Der Code zeigt, wie eine leere PDF-Datei erstellt wird. Die erste Zeile fügt einen Lizenzschlüssel hinzu. Ohne Lizenz wird beim Erstellen einer Instanz von PdfDocument eine Ausnahme ausgelöst. Die letzte Zeile speichert das Dokument als PDF-Datei.

Die interne Struktur der erstellten Datei hängt von den Speicheroptionen ab. In diesem Beispiel verwendet der Code die Save-Methodenüberladung, die mit den Standardoptionen speichert. Informationen zu diesen Standardeinstellungen und wann Sie diese anpassen sollten, finden Sie im Abschnitt zu den Speicheroptionen.

Gemäß der Programmiertradition zeigt das zweite Beispiel ein „Hallo Welt!“-Programm, das mit der Core-API erstellt wurde.

using var pdf = new PdfDocument();

var page = pdf.Pages[0];
page.Canvas.DrawString(50, 50, "Hello, world!");

pdf.Save("hello.pdf");

Der Code fügt den Standardtext an der angegebenen Position auf der ersten Seite des Dokuments ein. Dabei werden die Standardschriftart und -größe verwendet. Weitere Informationen zur Arbeit mit der PDF-Zeichenfläche finden Sie im Folgenden.

PDF-Erstellung mit VB.NET

Der VB.NET-Code zum Erstellen einer PDF-Datei sieht dem Code aus dem vorherigen Abschnitt sehr ähnlich.

Using pdf As New PdfDocument()
    Dim page = pdf.Pages(0)
    page.Canvas.DrawString(50, 50, "Hello, world!")

    pdf.Save("hello.pdf")
End Using

Im vorangegangenen Abschnitt, der ein C#-Beispiel enthält, wird erläutert, was der Code bewirkt und wie er funktioniert.

Arbeiten mit PDF-Leinwand

Um die Zeichenfläche in einem PDF-Dokument zu ändern, verwenden Sie die Canvas API. Sie ist eine Teilmenge der Core API.

Die Canvas API verwendet ein absolutes Positionierungsmodell. Sie wählen die Koordinaten, und die Zeichenfläche wird genau an der von Ihnen angegebenen Stelle gezeichnet. Das Koordinatensystem platziert den Ursprung in der oberen linken Ecke der Seite. Die Koordinaten nehmen nach rechts entlang der X-Achse und nach unten entlang der Y-Achse zu.

(0,0) ──► X
  │
  │
  ▼
  Y

Zeichnungstext

Die Klasse PdfCanvas von Docotic.Pdf bietet zwei Hauptmethoden zum Rendern von Text: DrawString und DrawText. Beide Methoden verwenden die aktuelle Canvas-Schriftart. Daher empfiehlt es sich, die gewünschte Schriftart vor dem Zeichnen von Text festzulegen.

Verwendung von DrawString

DrawString zeichnet immer eine einzelne Textzeile. Die Methode beginnt mit dem Zeichnen an der aktuellen Textposition auf dem Canvas, sofern Sie keine Überladung mit expliziten Koordinaten verwenden. Einige Überladungen ermöglichen die Angabe zusätzlicher Optionen, die das Zeichnen der Textzeile steuern.

Sie haben bereits ein einfaches Beispiel für DrawString im Codebeispiel „Hallo Welt!“ gesehen. Hier ist ein weiteres Beispiel, das die Zeichenoptionen verwendet, um Text zu unterstreichen.

using var pdf = new PdfDocument();

var canvas = pdf.Pages[0].Canvas;
canvas.DrawString(50, 50, "This text is underlined", new PdfStringDrawingOptions
{
    Underline = true,
});

pdf.Save("underlined-text.pdf");

Verwendung von DrawText

Mit DrawText lassen sich mehrere Textzeilen innerhalb eines festgelegten Rechtecks ​​darstellen. Die Methode verarbeitet Zeilenumbrüche und schneidet Text ab, der nicht in den zulässigen Bereich passt. Die Textzeichnungsoptionen definieren die horizontale und vertikale Ausrichtung des Textes sowie weitere Aspekte seiner Positionierung und Darstellung.

So zeichnen Sie Text in einem PDF mit C#:

using var pdf = new PdfDocument();

const string LongString = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
var multiLineOptions = new PdfTextDrawingOptions(new PdfRectangle(70, 70, 40, 150))
{
    HorizontalAlignment = PdfTextAlign.Left,
    VerticalAlignment = PdfVerticalAlign.Top
};

var canvas = pdf.Pages[0].Canvas;
canvas.DrawText(LongString, multiLineOptions);

pdf.Save("drawtext.pdf");

Zur Feinabstimmung der Textdarstellung können Sie die folgenden Canvas-Eigenschaften anpassen:

  • Zeichenabstand
  • Wortabstand
  • Textskalierung
  • Texthöhe (Grundlinienverschiebung)
  • Darstellungsmodus (Füllung, Kontur, Füllung und Kontur usw.)

Praktische Beispiele für textbezogene Methoden und Eigenschaften finden Sie in der Textbeispielgruppe.

Hinzufügen und Verwenden von Schriftarten

Sofern Sie nicht mit der Standardschriftart Helvetica zufrieden sind, sollten Sie die benötigten Schriftarten zum PDF hinzufügen, um sicherzustellen, dass Ihr Text wie gewünscht dargestellt wird.

Docotic.Pdf kann Type1-, TrueType-, CFF- und OpenType-Schriftarten hinzufügen aus:

  • den systemseitig installierten Schriftarten
  • externen Dateien und Datenströmen

Zusätzlich können Sie die 14 integrierten Type1-Schriftarten verwenden, die in jedem PDF-Viewer verfügbar sind.

Um eine Schriftart in Ihrem PDF zu verwenden, erstellen Sie ein PdfFont-Objekt mithilfe der Methode CreateFont oder CreateFontFromFile des entsprechenden PdfDocument-Objekts. Weisen Sie die Schriftart anschließend dem Canvas zu, bevor Sie Text zeichnen. Es empfiehlt sich außerdem, die Schriftgröße festzulegen.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

var font = pdf.CreateFont("NSimSun");
canvas.Font = font;
canvas.FontSize = 14;
canvas.DrawString(10, 50, "Olá. 你好. Hello, Unicode!");

font.RemoveUnusedGlyphs();

pdf.Save("unicode-text.pdf");

Die Schriftart muss Glyphen für alle Zeichen des darzustellenden Textes enthalten. Andernfalls erhalten Sie eine CannotShowTextException. Überprüfen Sie mit PdfFont.ContainsGlyphsForText, ob die Schriftart alle erforderlichen Glyphen enthält.

Die Unicode-Unterstützung hängt vom Schriftarttyp ab. Schriftarten vom Typ 1 unterstützen – mit einer Ausnahme – nur den lateinischen Zeichensatz und die lateinische Kodierung. Die integrierten Schriftarten Symbol und ZapfDingbats bieten mathematische, griechische und dekorative Symbole.

TrueType-, CFF- und OpenType-Schriftarten unterstützen in der Regel Unicode, enthalten aber möglicherweise nicht alle Unicode-Zeichen.

Docotic.Pdf versucht, so wenige Schriftartbytes wie möglich einzubetten, um die resultierende PDF-Datei klein zu halten. Verwendet ein Dokument jedoch Schriftarten mit vielen Glyphen, kann die resultierende Datei dennoch relativ groß sein. Verwenden Sie PdfFont.RemoveUnusedGlyphs, um die Anzahl der durch eingebettete Schriftarten hinzugefügten Bytes zu minimieren.

Berechnung der Textdimensionen

Da die Canvas-API absolute Positionierung verwendet, ist es oft notwendig zu wissen, wie viel Platz ein Textabschnitt einnimmt, bevor er gezeichnet wird. Dies ist besonders wichtig, wenn Text in mehreren Schritten ausgegeben wird, z. B. beim Aufteilen langer Zeichenketten, beim präzisen Ausrichten von Text oder beim Vermeiden von Überlappungen mit anderen Inhalten. Die Klasse PdfCanvas bietet verschiedene Methoden, mit denen Sie Text mithilfe der aktuell ausgewählten Schriftart und -größe messen können.

Verwenden Sie PdfCanvas.MeasureText, um Breite und Höhe einer Zeichenkette zu ermitteln, wie sie auf dem Canvas dargestellt wird. Typische Anwendungsfälle sind:

  • Prüfen, ob Text in einen bestimmten Bereich passt
  • Manuelles Berechnen von Zeilenumbrüchen
  • Positionieren von Textblöcken relativ zueinander

Wenn Sie Text zentrieren oder rechtsbündig ausrichten und nur die horizontale Ausdehnung benötigen, verwenden Sie PdfCanvas.GetTextWidth. Um die Höhe einer Textzeile für die aktuelle Schriftart zu ermitteln, verwenden Sie PdfCanvas.GetTextHeight.

Zeichnungen

Um ein Bild auf einer PDF-Zeichenfläche zu zeichnen, erstellen Sie zunächst ein PdfImage-Objekt und zeichnen Sie dieses anschließend mit der Methode PdfCanvas.DrawImage.

So fügen Sie in C# ein Bild zu einer PDF-Datei hinzu:

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

var image = pdf.CreateImage("image.png");
canvas.DrawImage(image, 10, 50);

pdf.Save("image.pdf");

Der Code erstellt ein Bildobjekt mithilfe der CreateImage-Methode des entsprechenden PdfDocument-Objekts und zeichnet das Bild auf die Zeichenfläche der ersten Seite.

Weitere Informationen zu unterstützten Bildformaten und fortgeschrittenen Techniken zur Umwandlung von Bildern in PDFs finden Sie unter PDFs aus Bildern erstellen.

Verwendung von Vektorgrafiken

Mit Docotic.Pdf können Sie mithilfe der Methoden der Klasse PdfCanvas gerade Linien, Bézierkurven und gängige geometrische Formen direkt auf einer PDF-Zeichenfläche zeichnen. Verwenden Sie Methoden, die mit Draw beginnen (z. B. DrawLineTo, DrawCircle, DrawRectangle), um sichtbare Linien auf der Zeichenfläche zu platzieren.

Linien und Kurven werden mit dem aktuellen Stift gezeichnet, der über PdfCanvas.Pen definiert wird und Strichfarbe, -breite und weitere Zeicheneigenschaften festlegt. Je nach Zeichenmodus können Formen umrandet, gefüllt oder erst umrandet und dann gefüllt werden. Der aktuelle Pinsel, auf den über PdfCanvas.Brush zugegriffen wird, dient zum Füllen der Formen.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

canvas.DrawCircle(new PdfPoint(60, 100), 40);
canvas.DrawRectangle(
    new PdfRectangle(300, 60, 110, 70),
    PdfDrawMode.Fill);

canvas.CurrentPosition = new PdfPoint(150, 90);
canvas.DrawCurveTo(new PdfPoint(180, 60), new PdfPoint(230, 120), new PdfPoint(250, 90));

pdf.Save("curve-and-shapes.pdf");

Jede PDF-Zeichenfläche speichert einen Grafikstatus, der Stift, Pinsel, Schriftart und aktuelle Positionen umfasst. Verwenden Sie SaveState, um den aktuellen Status zu sichern, und RestoreState, um zu einem vorherigen Status zurückzukehren. Neben dem Rückgängigmachen temporärer Transformationen und ähnlicher Änderungen ist das Wiederherstellen des Status die einzige Möglichkeit, einmal angewendete Beschneidungen zu entfernen.

Grafikpfade ermöglichen es Ihnen, komplexe Formen aus Linien, Kurven und einfacheren Formen zu erstellen, ohne diese sofort zeichnen zu müssen. Verwenden Sie Append-Methoden wie AppendLineTo oder AppendRectangle, um Segmente zum aktuellen Pfad hinzuzufügen. Pfade erzeugen erst dann sichtbare Ausgaben, wenn Sie sie explizit füllen oder mit Konturen versehen.

Sie können jeden erstellten Grafikpfad als Beschneidungsbereich verwenden, um nachfolgende Zeichenvorgänge einzuschränken. Die Beschneidung bleibt aktiv, bis der Grafikstatus wiederhergestellt wird.

Praktische, ausführbare Beispiele für die Arbeit mit Vektorgrafiken finden Sie im Abschnitt Grafiken des Beispiel-Repositorys.

Farben und Transparenz einstellen

Sie können die Strich- und Füllfarben mithilfe des Stifts und Pinsels einer PDF-Arbeitsfläche ändern. Verwenden Sie dazu PdfPen.Color und PdfBrush.Color.

Illustration von farbenfrohen, tropfenden Formen, teils einfarbig, teils gemustert, die die Core-API-Funktionen für Farben und Transparenz veranschaulichen.

Unterstützte geräteabhängige Farbräume sind Graustufen, RGB und CMYK, dargestellt durch PdfGrayColor, PdfRgbColor und PdfCmykColor.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

canvas.Pen.Color = new PdfRgbColor(30, 60, 160);
canvas.Pen.Width = 3;

canvas.Brush.Color = new PdfCmykColor(0, 20, 5, 0);

canvas.DrawRectangle(
    new PdfRectangle(50, 50, 100, 40),
    PdfDrawMode.FillAndStroke);

pdf.Save("fill-and-stroke-colors.pdf");

Docotic.Pdf unterstützt CIE-basierte, geräteunabhängige Farbräume, einschließlich L*a*b*-Farben und ICC-basierte kalibrierte Farben. Die Core-API unterstützt außerdem Sonderfarben und Separationsfarbräume für Workflows, die benutzerdefinierte Tinten oder kanalspezifische Ausgaben erfordern.

Der folgende Beispielcode zeigt, wie Lab-Farben, profilbasierte Farben und Sonderfarben erstellt werden. Um das Beispiel auszuführen, laden Sie zunächst das verwendete ICC-Profil herunter.

using var pdf = new PdfDocument();
var canvas = pdf.Pages[0].Canvas;

var labColorSpace = new PdfLabColorSpace(pdf, [0.5, 1, 0.5]);
canvas.Pen.Color = new PdfLabColor(labColorSpace, 50, -50, 50);
canvas.Pen.Width = 3;

var rgbProfile = pdf.CreateColorProfile("AdobeCompat-v2.icc");
canvas.Brush.Color = new PdfRgbColor(rgbProfile, 210, 105, 30);

canvas.DrawRectangle(
    new PdfRectangle(50, 50, 100, 40),
    PdfDrawMode.FillAndStroke);

var tintTransform = new PdfExponentialFunction(
    pdf, 1, [0d, 0, 0, 0], [0, 0.8, 0.73, 0.25], [0d, 1]);
var separationColorSpace = new PdfSeparationColorSpace(
    pdf, "BLOODRED", new PdfCmykColorSpace(), tintTransform);
canvas.Pen.Color = new PdfSpotColor(1.0, separationColorSpace);

canvas.DrawCircle(new PdfPoint(100, 70), 60);

pdf.Save("using-special-colors.pdf");

Sie können Formen auch mit Kachelmustern umranden und füllen. Ein Muster wird durch eine Musterzelle definiert, die auf einer eigenen Zeichenfläche gezeichnet wird. Es gibt zwei Arten:

  • Farbige Muster. Ihre Zellen definieren ihre eigenen Farben.
  • Ungefärbte Muster. Ihre Zellen werden mit der Stift-/Pinselfarbe zum Zeitpunkt der Verwendung eingefärbt.

Um ein Muster zu verwenden, erstellen Sie eines mit CreateColoredPattern oder CreateUncoloredPattern des entsprechenden PdfDocument-Objekts. Wenden Sie das Muster anschließend mit PdfPen.Pattern und/oder PdfBrush.Pattern an. Beispielcode zum Erstellen und Verwenden von Mustern finden Sie im Beispiel-Repository unter [pdf/Patterns].

Mit halbtransparenten Farben können Sie Formen, Text und Bilder mit unterschiedlicher Deckkraft zeichnen. Verwenden Sie PdfPen.Opacity und PdfBrush.Opacity, um transparente Farben zu erzeugen.

Darüber hinaus steuern Überblendmodi, wie transparente Inhalte mit den darunterliegenden Elementen interagieren. Um den Überblendmodus eines Canvas zu ändern, verwenden Sie PdfCanvas.BlendMode.

Hinzufügen und Anpassen von Seiten

Docotic.Pdf stellt die PdfDocument.Pages-Collection bereit, mit der Sie alle Seiten eines Dokuments verwalten können. Die Klasse PdfDocument bietet zwei Hauptmethoden zum Hinzufügen neuer Seiten: AddPage und InsertPage.

Verwenden Sie AddPage(), um eine neue Seite am Ende des Dokuments anzuhängen. Um eine Seite an einer beliebigen Position einzufügen, verwenden Sie InsertPage(index). Beide Methoden geben die neu erstellte PdfPage-Instanz zurück.

Jede neue Seite hat standardmäßig die Größe von 595 x 842 Benutzerraumeinheiten. Dies entspricht der Größe eines A4-Blatts. In den meisten Fällen entspricht eine Benutzerraumeinheit in PDF 1/72 Zoll. Anders ausgedrückt: Eine Benutzerraumeinheit entspricht einem Pixel bei einer Seitenauflösung von 72 Pixel pro Zoll.

Sie können die Größe einer Seite jederzeit ändern, indem Sie ihre Breite und/oder Höhe auf eine bestimmte Anzahl von Benutzerraumeinheiten festlegen.

using var pdf = new PdfDocument();
var page = pdf.Pages[0];

page.Width = 600;
page.Height = 800;

Eine weitere Möglichkeit besteht darin, eine der vordefinierten Größen zu verwenden:

page.Size = PdfPaperSize.Ledger;

Es ist außerdem möglich, die Seitenausrichtung vom Hoch- ins Querformat zu ändern und eine Seite um 90°, 180° oder 270° im Uhrzeigersinn zu drehen.

page.Orientation = PdfPaperOrientation.Landscape;
page.Rotation = PdfRotation.Rotate180;

Neben der Festlegung von Seitenbreite, -höhe oder einer vordefinierten Größe ist es auch möglich, die Seitengröße zusammen mit dem Zuschneiden oder Ändern der Größe des vorhandenen Inhalts anzupassen.

Inhalte mit XObjects wiederverwenden

Ein PDF-XObject ist ein Container für Vektorgrafiken, Bilder und Text. Jedes XObject verfügt über eine eigene Arbeitsfläche, sodass Sie XObjects erstellen können, die genauso komplex sind wie reguläre PDF-Seiten.

XObjects ähneln Vektorgrafiken. Sie können dasselbe Objekt auf mehreren Seiten wiederverwenden, ohne den Inhalt neu erstellen oder die Dokumentgröße erhöhen zu müssen. Sie können solche Objekte skalieren und drehen, ohne dass visuelle Artefakte entstehen. Aufgrund dieser Eigenschaften eignen sich XObjects ideal für wiederkehrende Elemente wie Logos, Illustrationen, Hintergründe, Wasserzeichen und andere wiederkehrende Grafiken.

Erstellen und Verwenden von XObjects

Um ein XObject zu erstellen, verwenden Sie die Methode PdfDocument.CreateXObject. Passen Sie gegebenenfalls Breite und Höhe des Objekts an. Anschließend können Sie die Zeichenfläche wie bei einer normalen Seite mit Text, Bildern und Grafiken füllen.

Verwenden Sie die Methode PdfCanvas.DrawXObject in Ihrem C#- oder VB.NET-Code, um das XObject anderen Zeichenflächen hinzuzufügen. Beachten Sie, dass Sie XObjects sowohl auf Zeichenflächen von Seiten als auch auf Zeichenflächen anderer XObjects zeichnen können.

Hier ist ein C#-Codebeispiel, das ein XObject mit einer Illustration erstellt und diese Illustration auf zwei Seiten zeichnet.

using var pdf = new PdfDocument();

var xobj = pdf.CreateXObject();

var options = new PdfTextDrawingOptions(new PdfRectangle(0, 0, 100, 50))
{
    HorizontalAlignment = PdfTextAlign.Center,
    VerticalAlignment = PdfVerticalAlign.Center,
};
xobj.Canvas.FontSize = 16;
xobj.Canvas.DrawText("Company Logo", options);
xobj.Canvas.DrawRectangle(options.Bounds);

var page1 = pdf.Pages[0];
page1.Canvas.DrawXObject(xobj, 100, 100);

var page2 = pdf.AddPage();
page2.Canvas.DrawXObject(xobj, 200, 200);

pdf.Save("using-xobjects.pdf");

Seiten mit XObjects transformieren

XObjects ermöglichen auch Szenarien, die über die einfache Wiederverwendung von Grafiken hinausgehen. Ein gängiges Beispiel ist das Zusammenführen zweier vorhandener PDF-Seiten zu einer einzigen, größeren Seite. Indem Sie jede Quellseite in ein XObject umwandeln, können Sie diese nebeneinander auf einer neuen Arbeitsfläche zeichnen und so effektiv eine zusammengeführte Doppelseite erstellen. Dieser Ansatz bietet Ihnen volle Kontrolle über Positionierung, Abstände und Skalierung und erleichtert so das Erstellen von Vergleichslayouts, Buchseiten oder mehrseitigen Vorschauen.

Dieselbe Technik lässt sich anwenden, wenn Sie PDF-Seiten skalieren. Anstatt den Inhalt neu zu zeichnen oder zu rekonstruieren, können Sie ein XObject aus der Originalseite erstellen und es auf die neue Größe skalieren. So können Sie mit minimalem Aufwand zu große Seiten verkleinern, kleine vergrößern oder ein Dokument mit unterschiedlichen Seitengrößen normalisieren.

Umfang und Einschränkungen der Core-API

Die Core-API bietet präzise, ​​detaillierte Kontrolle über die PDF-Erstellung, jedoch keine automatischen Layoutfunktionen. Es gibt keine integrierten Ränder, Kopf- oder Fußzeilen oder Seitenumbruchlogik, und alle Inhalte müssen manuell positioniert werden. Textlänge und Seitenaufteilung müssen vollständig im eigenen Code festgelegt werden, was die PDF-Erstellung auf diesem Weg sehr manuell macht.

Automatisches Layout, einschließlich Unterstützung für Tabellen, Absätze und Seitenumbrüche, ist über die höherwertige Layout-API verfügbar.

Abschluss

Die Docotic.Pdf-Kern-API bietet volle Kontrolle über die PDF-Erstellung. Sie ermöglicht das Zeichnen von Text, Bildern und Vektorgrafiken auf Zeichenflächen, die durch PDF-Seiten, XObjects und Kachelmuster bereitgestellt werden.

Die API ist für Szenarien konzipiert, die eine präzise, ​​detaillierte Steuerung erfordern: Sie positionieren jedes Element explizit, verwalten Textlänge und Seitenaufteilung selbst und bearbeiten Grafikstatus, Farben und Transparenz direkt.

Insgesamt ist die Kern-API das flexibelste Werkzeug zum Erstellen von PDFs, wenn Präzision und Kontrolle oberste Priorität haben.