using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
ActivePDF DocConverter Tutorial und Vergleich mit IronPDF
Chipego Kalinda
23. September 2021
Teilen Sie:
Das ActivePDF Toolkit ist eine Softwarekomponente, die verwendet wird, um mit PDF-Dateien zu arbeiten (einschließlich des Erstellens von PDF-Dateien aus verschiedenen Quellen) und deren Eigenschaften festzulegen (wie Header, Footer, Rand oder Wasserzeichen).
IronPDF ist eine C# PDF-Bibliothek, die auch diese Funktionen bietet, zu wettbewerbsfähigen Preisen.
Hier gehen wir die Funktionen, Codebeispiele und Schritt-für-Schritt-Aktionen für die Verwendung beider Softwarekomponenten in einem .NET Visual Studio-Projekt durch, damit Sie selbst entscheiden können, was für Ihre Anwendung am besten geeignet ist.
Iron Software ist ein marktführender Anbieter von Komponenten, der IronPDF für die Arbeit mit PDF-Dateien anbietet. Eine allumfassende Möglichkeit, PDF-Dateien aus verschiedenen Formaten zu erzeugen und alle Eigenschaften programmatisch einzustellen. Es wird von Entwicklern wegen der konsistenten, zuverlässigen und genauen Ausgabe von PDF-Dateien mit nur wenigen Codezeilen bevorzugt.
IronPDF ist für C#, .NET, VB, ASPX, ASP.NET, MVC und .NET Core konzipiert. Sie unterstützt Visual Studio, NuGet, Linux, Azure, Docker und mehr.
Über das ActivePDF-Toolkit
ActivePDF ist ein Softwareunternehmen, das viele Komponenten zur Bearbeitung von PDF-Dateien bereitstellt. Anders als die Einzelkomponente IronPDF bietet ActivePDF verschiedene Lösungen für PDF-Dateien. Zum Beispiel können Sie ActivePDF Compressor verwenden, um die Größe von PDF-Dateien zu reduzieren. Um PDFs aus HTML-Quellen zu erstellen, verwenden Sie ActivePDF WebGrabber.
In diesem Artikel werden wir ActivePDF WebGrabber zum Vergleich mit IronPDF heranziehen und einen Blick darauf werfen:
ActivePDF WebGrabber zur Erstellung von PDFs
ActivePDF WebGrabber ist eine separate Komponente von ActivePDF, die speziell zur Erstellung von PDF-Dateien aus HTML-Quellen wie URL, HTML-Datei oder HTML-String verwendet wird. Es bietet auch die Funktionen zum Einstellen von Seiteneigenschaften wie Kopfzeile, Fußzeile, Rand, Wasserzeichen oder Buchzeichen, um PDF-Dateien entsprechend unseren Anforderungen zu erstellen.
Vergleich
1. ActivePDF vs. IronPDF Vergleichstabelle
Werfen wir einen Blick auf den direkten Vergleich der beiden Komponenten.
IronPDF konvertiert HTML-Quellen in PDF-Dateien.
Schritt 1: Installation
2. So installieren Sie IronPDF
Sie können die IronPDF-Bibliothek auf zwei verschiedene Arten zu Ihrem Projekt hinzufügen, ohne dass es einen Unterschied macht, welche Sie wählen.
NuGet-Paketmanager
Öffnen Sie den NuGet Package Manager in Ihrem Visual Studio Projekt.
Durchsuchen Sie IronPDF und installieren Sie es dann.
Wenn Sie auf IronPDF zugreifen können, indem Sie den Namespace using IronPdf; verwenden, bedeutet dies, dass IronPDF erfolgreich in Ihr Projekt importiert wurde und einsatzbereit ist.
Wie wird WebGrabber installiert?
Laden Sie WebGrabber-install.exe herunter und wählen Sie die Download-Datei aus. Sobald es heruntergeladen ist, doppelklicken Sie auf die heruntergeladene Datei. Fordern Sie dann einen Aktivierungsschlüssel von ActivePDF mit dem folgenden 15-tägigen Evaluierungsschlüssel an: 001-AEALX-LC6Z5-7YD95-S3D8J-3LR25.
Nach erfolgreicher Installation wechseln Sie in das folgende Verzeichnis:
C:\Program Files\ActivePDF\WebGrabber\bin\
In diesem Verzeichnis erhalten Sie die Datei APWebGrabber.Net45.dll. Fügen Sie deren Referenz in Ihr Visual Studio-Projekt hinzu.
Wenn Sie jetzt auf WebGrabber zugreifen können, indem Sie den Namespace using APWebGrabber; schreiben, bedeutet das, dass ActivePDF WebGrabber erfolgreich in Ihr Projekt importiert wurde und Sie es verwenden können.
ActivePDF-Dokumentation ist verfügbar, um mehr über die Installation von ActivePDF WebGrabber zu erfahren.
Anleitungen Tutorials
IronPDF und WebGrabber verwenden
Wir haben die Einführung dieser beiden Komponenten und ihre Installationsprozesse gesehen und werden nun den Vergleich beginnen, indem wir verschiedene Aufgaben mit beiden durchführen. So können wir die Programmierstruktur beider Programme verstehen und entscheiden, welches für unsere Projekte am besten geeignet ist. Zum besseren Verständnis werden wir in jeder Aufgabe einen spezifischen Anwendungsfall ausführen und den zur Implementierung verwendeten Code bereitstellen.
3. HTML-String in PDF-Datei umwandeln
Im ersten Vergleich nehmen wir einen Anwendungsfall, bei dem wir eine PDF-Datei anhand einer HTML-Zeichenkette erstellen und am Zielspeicherort speichern müssen. Zunächst beginnen wir damit, diesen Anwendungsfall mit IronPDF zu implementieren:
3.1. HTML-Zeichenfolge mit IronPDF
/**
HTML String to PDF
anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
//convert HTML string to PDF file
using var PDF = converter.RenderHtmlAsPdf(html);
//Save the file
PDF.SaveAs("E:/sample.pdf");
}
/**
HTML String to PDF
anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
//convert HTML string to PDF file
using var PDF = converter.RenderHtmlAsPdf(html);
//Save the file
PDF.SaveAs("E:/sample.pdf");
}
'''
'''HTML String to PDF
'''anchor-html-string-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New ChromePdfRenderer()
'HTML Source
Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> "
'convert HTML string to PDF file
Dim PDF = converter.RenderHtmlAsPdf(html)
'Save the file
PDF.SaveAs("E:/sample.pdf")
End Sub
$vbLabelText $csharpLabel
Ausgabe:
Der obige Code erstellt eine PDF-Datei sample.pdf im Lokalen Datenträger E: und der Screenshot davon ist:
3.2. HTML-Zeichenfolge mit ActivePDF
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
//assign source html to WebGrabber
wg.CreateFromHTMLText = html;
//specify file directory
wg.OutputDirectory = "E:/";
// file name
wg.NewDocumentName = "sample.pdf";
//convert source HTML to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
//assign source html to WebGrabber
wg.CreateFromHTMLText = html;
//specify file directory
wg.OutputDirectory = "E:/";
// file name
wg.NewDocumentName = "sample.pdf";
//convert source HTML to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'HTML Source
Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>"
'assign source html to WebGrabber
wg.CreateFromHTMLText = html
'specify file directory
wg.OutputDirectory = "E:/"
' file name
wg.NewDocumentName = "sample.pdf"
'convert source HTML to PDF file
wg.ConvertToPDF()
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot ist die neu generierte sample.pdf-Datei aus diesem Code:
3.3. Unterschied zwischen IronPDF und ActivePDF
Weniger Codezeilen mit IronPDF
Die von IronPDF erzeugte Datei ist besser lesbar, da die Standardränder verwendet werden
4. HTML-Datei in PDF-Datei konvertieren
In diesem Vergleich betrachten wir den Anwendungsfall, dass wir eine PDF-Datei aus einer HTML-Datei namens myHtmlFile.html generieren müssen, die im Verzeichnis E:/ existiert, und diese enthält den folgenden HTML- und CSS-Code:
Nun werden wir die Datei myHtmlFile.html mithilfe beider Komponenten in eine PDF-Datei umwandeln. Beginnen wir mit IronPDF.
4.1. HTML-Datei mit IronPDF
/**
HTML File to PDF
anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new IronPdf.ChromePdfRenderer();
//render html file to pdf
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
/**
HTML File to PDF
anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new IronPdf.ChromePdfRenderer();
//render html file to pdf
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''HTML File to PDF
'''anchor-html-file-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New IronPdf.ChromePdfRenderer()
'render html file to pdf
Dim PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html")
'save to target location
PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu erstellte Sample.pdf-Datei unter Verwendung des obigen Codes:
Wir können sehen, dass die HTML-Seite myHtmlFile.html erfolgreich in eine PDF-Datei Sample.pdf umgewandelt wurde und die CSS-Stile ebenfalls angewendet wurden.
Lassen Sie uns die gleiche Aufgabe mit ActivePDF WebGrabber durchführen.
4.2. HTML-Datei mit ActivePDF
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify file path to be converted
wg.URL = "E:/myHtmlFile.html";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//newly generated file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify file path to be converted
wg.URL = "E:/myHtmlFile.html";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//newly generated file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'specify file path to be converted
wg.URL = "E:/myHtmlFile.html"
'specify the directory for newly generated file
wg.OutputDirectory = "E:/"
'newly generated file name
wg.NewDocumentName = "Sample.pdf"
'convert HTML file to PDF
wg.ConvertToPDF()
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu erstellte Sample.pdf-Datei unter Verwendung des obigen Codes:
4.3. Unterschied zwischen IronPDF und ActivePDF
Nur 3 Zeilen Code mit IronPDF
IronPDF-Datei ist etwas sauberer/attraktiver
5. URL in PDF-Datei umwandeln
Nehmen wir an, wir haben eine URL https://yandex.com/ und möchten eine PDF-Datei der entsprechenden Webseite erstellen. Hierfür bieten beide Komponenten eine Funktion. Zunächst werden wir sehen, wie IronPDF dies bewerkstelligen kann.
5.1. URL mit IronPDF
/**
URL to PDF
anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//Specify URL
using var PDF = converter.RenderUrlAsPdf("https://yandex.com/");
//Save the file
PDF.SaveAs("E:/Sample.pdf");
}
/**
URL to PDF
anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//Specify URL
using var PDF = converter.RenderUrlAsPdf("https://yandex.com/");
//Save the file
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''URL to PDF
'''anchor-url-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New ChromePdfRenderer()
'Specify URL
Dim PDF = converter.RenderUrlAsPdf("https://yandex.com/")
'Save the file
PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Sample.pdf-Datei durch den obigen Code
Sie können die Webseite des Beispiel-URL besuchen, um zu vergleichen und zu sehen, wie genau die IronPDF-Datei übereinstimmt.
Jetzt werden wir die gleiche Aufgabe mit ActivePDF WebGrabber durchführen.
5.2. URL mit ActivePDF
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify URL
wg.URL = "https://yandex.com/";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert specified URL webpage to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//specify URL
wg.URL = "https://yandex.com/";
//specify the directory for newly generated file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert specified URL webpage to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'specify URL
wg.URL = "https://yandex.com/"
'specify the directory for newly generated file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert specified URL webpage to PDF
wg.ConvertToPDF()
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Datei Sample.pdf durch den obigen Code:
5.3. Unterschied zwischen IronPDF und ActivePDF
IronPDF hat eine einfachere Struktur zur Erzeugung von PDF-Dateien
Nur drei Zeilen Code
IronPDF passt besser zur Website
6. Wasserzeichen in PDF-Dateien erstellen
In diesem Vergleich erstellen wir eine PDF-Datei mit einer HTML-Zeichenfolge und fügen dann ein Wasserzeichen in der Mitte der Seite ein. Beginnen wir mit IronPDF.
6.1. Wasserzeichen mit IronPDF
IronPDF bietet die folgende Funktion zum Hinzufügen von WaterMark:
WatermarkPage(Wasserzeichen HTML String, SeitenindexZumWasserzeichen, WasserzeichenPosition, Opazität, Drehung, Hyperlink)
Wir können WaterMarkLocation verwenden, um das Wasserzeichen an den folgenden Positionen festzulegen:
Oben links
TopCenter
ObenRechts
MitteLinks
MittelZentrum
MitteRechts
UntenLinks
UntenMitte
Unten rechts
Sehen wir uns an, wie man die oben genannten Funktionen zum Setzen des Wasserzeichens verwendet:
/**
Watermark PDF
anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//source html string
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//add above string as PDF file content
using var PDF = converter.RenderHtmlAsPdf(html);
//HTML string for WaterMark
string WMStr = "<h1 style='color:red'>WaterMark</h1>";
//add WaterMark
PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "");
//save the document
PDF.SaveAs("E:/Sample.pdf");
}
/**
Watermark PDF
anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create rendering converter
var converter = new ChromePdfRenderer();
//source html string
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//add above string as PDF file content
using var PDF = converter.RenderHtmlAsPdf(html);
//HTML string for WaterMark
string WMStr = "<h1 style='color:red'>WaterMark</h1>";
//add WaterMark
PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "");
//save the document
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Watermark PDF
'''anchor-watermark-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create rendering converter
Dim converter = New ChromePdfRenderer()
'source html string
Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
'add above string as PDF file content
Dim PDF = converter.RenderHtmlAsPdf(html)
'HTML string for WaterMark
Dim WMStr As String = "<h1 style='color:red'>WaterMark</h1>"
'add WaterMark
PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "")
'save the document
PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Datei Sample.pdf durch den obigen Code:
Wir können jeden Typ von WaterMark hinzufügen und seine Eigenschaften per CSS festlegen. Jetzt werden wir die gleiche Aufgabe mit ActivePDF WebGrabber durchführen.
6.2. Wasserzeichen mit ActivePDF
ActivePDF WebGrabber bietet im Gegensatz zu IronPDF keine spezielle Funktion für WaterMark. Aber wir können die Funktion AddStampText() als Umgehungslösung für diesen Zweck verwenden:
AddStampText(float x, float y, string stempelText);
float x, um die x-Koordinate für den Ursprung des neuen TextStempels festzulegen.
float y, um die y-Koordinate für den Ursprung des neuen TextStamp festzulegen.
stampText ist der eigentliche Text des TextStempels.
Hinweis: ActivePDF WebGrabber unterstützt keine CSS-Stilierung für TextStamp. Wir müssen es mit anderen bereitgestellten Funktionen wie folgt einstellen:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML source for Page content
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//assign page content source
wg.CreateFromHTMLText = html;
//add text stamp as WaterMark
wg.AddStampText(270.0f, 350.0f, "WaterMark");
//specify WaterMark's font size
wg.StampFontSize = 20;
//specify WaterMark's font family
wg.StampFont = "Times New Roman";
//specify WaterMark's opacity
wg.StampFontTransparency = 1f;
//specify WaterMark's rotation
wg.StampRotation = 45.0f;
//specify WaterMark's color
wg.StampColorNET = new ADK.PDF.Color() { Red = 255, Green = 0, Blue = 0, Gray = 0 };
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//HTML source for Page content
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
//assign page content source
wg.CreateFromHTMLText = html;
//add text stamp as WaterMark
wg.AddStampText(270.0f, 350.0f, "WaterMark");
//specify WaterMark's font size
wg.StampFontSize = 20;
//specify WaterMark's font family
wg.StampFont = "Times New Roman";
//specify WaterMark's opacity
wg.StampFontTransparency = 1f;
//specify WaterMark's rotation
wg.StampRotation = 45.0f;
//specify WaterMark's color
wg.StampColorNET = new ADK.PDF.Color() { Red = 255, Green = 0, Blue = 0, Gray = 0 };
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'HTML source for Page content
Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
'assign page content source
wg.CreateFromHTMLText = html
'add text stamp as WaterMark
wg.AddStampText(270.0F, 350.0F, "WaterMark")
'specify WaterMark's font size
wg.StampFontSize = 20
'specify WaterMark's font family
wg.StampFont = "Times New Roman"
'specify WaterMark's opacity
wg.StampFontTransparency = 1F
'specify WaterMark's rotation
wg.StampRotation = 45.0F
'specify WaterMark's color
wg.StampColorNET = New ADK.PDF.Color() With {
.Red = 255,
.Green = 0,
.Blue = 0,
.Gray = 0
}
'specify directory for newly created file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert above sources to PDF file
wg.ConvertToPDF()
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu erstellte Sample.pdf-Datei.
6.3. Unterschied zwischen IronPDF und ActivePDF
IronPDF macht es wirklich einfach, ein Wasserzeichen hinzuzufügen
IronPDF bietet direkte Funktionen zum Einstellen der Wasserzeicheneigenschaften
ActivePDF WebGrabber hat eine komplexe Programmierstruktur mit vielen Codezeilen, die es zu umgehen gilt
7. Ränder auf PDF-Seite festlegen
Nehmen wir an, wir haben eine einfache Webseite namens myHtmlFile.html auf unserem Lokaler Datenträger E, die 100% Breite und einen Rahmen mit der Farbe schwarz hat. Wir werden daraus eine PDF-Datei erzeugen und den Seitenrand festlegen. Beginnen wir mit IronPDF.
7.1. Ränder mit IronPDF
Um die Ränder festzulegen, stellt IronPDF die ChromePdfRenderOptions-Klasse zur Verfügung, die die folgenden Eigenschaften hat:
MarginLeft zum Festlegen des Randes von der linken Seite der Seite.
MarginRight, um den Rand von der rechten Seite der Seite festzulegen.
MarginTop, um den Rand von der Oberseite der Seite festzulegen.
MarginBottom, um einen Rand von der Unterseite der Seite festzulegen.
Hinweis: Standardmäßig legt IronPDF einen Rand von 20mm von links, oben, rechts und unten fest, um die Seite lesbarer zu machen. Wir können es auf 0mm setzen, wenn wir es nicht benötigen.
/**
Set Margins
anchor-margins-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new ChromePdfRenderer();
//specify left Margin
converter.RenderingOptions.MarginLeft = 50;
//specify top Margin
converter.RenderingOptions.MarginTop = 40;
//render html file to PDF
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to the target location
PDF.SaveAs("E:/Sample.pdf");
}
/**
Set Margins
anchor-margins-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new ChromePdfRenderer();
//specify left Margin
converter.RenderingOptions.MarginLeft = 50;
//specify top Margin
converter.RenderingOptions.MarginTop = 40;
//render html file to PDF
using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
//save to the target location
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Set Margins
'''anchor-margins-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create html to PDF converter
Dim converter = New ChromePdfRenderer()
'specify left Margin
converter.RenderingOptions.MarginLeft = 50
'specify top Margin
converter.RenderingOptions.MarginTop = 40
'render html file to PDF
Dim PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html")
'save to the target location
PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Datei Sample.pdf durch den obigen Code:
Es ist zu sehen, dass die PDF-Seite 50mm von der linken Seite, 40 von oben entfernt ist und der linke Seitenrand 20mm beträgt, was standardmäßig ist. Wir können sehen, wie einfach es ist, den Rand jeder Seite mithilfe der ChromePdfRenderOptions-Klasse von IronPDF festzulegen.
Lesen Sie mehr über PDF-Generierungseinstellungen für weitere Details: wie man mit Rändern und anderen Eigenschaften der PDF-Datei arbeitet.
Jetzt werden wir die Seite Margin mit ActivePDF WebGrabber einstellen.
7.2. Ränder mit ActivePDF
Um die Seitenränder festzulegen, stellt ActivePDF WebGrabber die Funktion SetMargins() zur Verfügung, die wir wie folgt verwenden können:
Mit dieser Funktion legen wir den Seitenrand fest:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber()
//specify source HTML file path
wg.URL = "E:/myHtmlFile.html";
//Margins
wg.SetMargins(1, 0, 1.5f, 0);
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber()
//specify source HTML file path
wg.URL = "E:/myHtmlFile.html";
//Margins
wg.SetMargins(1, 0, 1.5f, 0);
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert HTML file to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: WebGrabber wg = new WebGrabber() wg.URL = "E:/myHtmlFile.html";
New WebGrabber() wg.URL = "E:/myHtmlFile.html"
Dim wg As New WebGrabber() wg.URL
'Margins
wg.SetMargins(1, 0, 1.5F, 0)
'specify directory for newly created file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert HTML file to PDF
wg.ConvertToPDF()
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Datei Sample.pdf durch den obigen Code:
Wir können sehen, dass die PDF-Seite einen Rand von 1.5f von der linken Seite und 1f von oben hat. Mit beiden Komponenten können wir die Seitenränder einfach gemäß unseren Anforderungen festlegen.
In diesem Vergleich werden wir sehen, wie man die Kopf- und Fußzeilen einer PDF-Datei festlegt. Wir werden die von beiden Komponenten bereitgestellten Funktionen und Techniken verwenden, mit denen wir programmgesteuert benutzerdefinierte Kopf- und Fußzeilen auf PDF-Seiten drucken können.
8.1. Kopf- und Fußzeilen mit IronPDF
IronPDF stellt die folgenden Eigenschaften zur Verfügung, mit denen sowohl Kopf- als auch Fußzeilen festgelegt werden können:
LeftText : setzt Kopf- oder Fußzeilentext auf der linken Seite.
CenterText : druckt den Kopf- oder Fußzeilentext in der Mitte.
RightText : setzt den Kopf- oder Fußzeilentext auf der linken Seite.
FontFamily : legt die Schriftfamilie des Kopf- oder Fußzeilentextes fest.
FontSize : legt die Schriftgröße des Kopf- oder Fußzeilentextes fest.
Abstand : legt den Abstand zwischen dem Seiteninhalt und dem Kopf- oder Fußzeile fest.
DrawDividerLine: Es zeichnet eine horizontale Linie, die den Seiteninhalt vom Kopf- oder Fußbereich trennt.
Wir können die folgenden vordefinierten Funktionen von IronPDF in geschweiften Klammern {} für Kopf- oder Fußzeilen verwenden:
{page} druckt die aktuelle Seitenzahl.
{total-pages} wird verwendet, um die Gesamtanzahl der Seiten eines PDFs zu drucken.
{url} wird verwendet, um die URL des gerenderten PDFs zu drucken.
{date} wird verwendet, um das heutige Datum zu drucken.
{time} gibt die aktuelle Uhrzeit aus.
{html-title} wird verwendet, um den Titel der gerenderten HTML-Datei auszugeben.
{pdf-title} stellt den Dokumenttitel ein.
Schauen wir uns das folgende Beispiel an, in dem wir die Kopf- und Fußzeilen der Seite mit Hilfe der oben genannten Funktionen einstellen werden:
/**
Set Header Footers
anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new IronPdf.ChromePdfRenderer();
//Page Content source
string html = "<h1 style='text-align:center;'>Page Content</h2>";
//Assign source to converter
using var PDF = converter.RenderHtmlAsPdf(html);
//Add Header settings
converter.RenderingOptions.TextHeader = new TextHeaderFooter()
{
LeftText = "Header Text",
RightText = "{date} {time}",
DrawDividerLine=true,
FontSize=13
};
//Add Footer settings
converter.RenderingOptions.TextFooter = new TextHeaderFooter()
{
RightText = "Page {page} of {total-pages}",
FontSize = 12
};
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
/**
Set Header Footers
anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
//create html to PDF converter
var converter = new IronPdf.ChromePdfRenderer();
//Page Content source
string html = "<h1 style='text-align:center;'>Page Content</h2>";
//Assign source to converter
using var PDF = converter.RenderHtmlAsPdf(html);
//Add Header settings
converter.RenderingOptions.TextHeader = new TextHeaderFooter()
{
LeftText = "Header Text",
RightText = "{date} {time}",
DrawDividerLine=true,
FontSize=13
};
//Add Footer settings
converter.RenderingOptions.TextFooter = new TextHeaderFooter()
{
RightText = "Page {page} of {total-pages}",
FontSize = 12
};
//save to target location
PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Set Header Footers
'''anchor-headers-and-footers-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
'create html to PDF converter
Dim converter = New IronPdf.ChromePdfRenderer()
'Page Content source
Dim html As String = "<h1 style='text-align:center;'>Page Content</h2>"
'Assign source to converter
Dim PDF = converter.RenderHtmlAsPdf(html)
'Add Header settings
converter.RenderingOptions.TextHeader = New TextHeaderFooter() With {
.LeftText = "Header Text",
.RightText = "{date} {time}",
.DrawDividerLine=True,
.FontSize=13
}
'Add Footer settings
converter.RenderingOptions.TextFooter = New TextHeaderFooter() With {
.RightText = "Page {page} of {total-pages}",
.FontSize = 12
}
'save to target location
PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Datei Sample.pdf durch den obigen Code:
Wir können sehen, dass
Header Text wird auf der linken Seite des Headers gedruckt.
DateTime wird auf der rechten Seite der Kopfzeile gedruckt.
Eine horizontale Linie trennt die Überschrift vom Seiteninhalt.
Seite AktuelleSeite von GesamtSeiten auf der rechten Seite der Fußzeile.
Lassen Sie uns nun ActivePDF WebGrabber verwenden, um Kopf- und Fußzeilen zu setzen:
8.2. Kopf- und Fußzeilen mit ActivePDF
ActivePDF WebGrabber bietet die Eigenschaften HeaderHTML und FooterHTML, um den Header bzw. Footer festzulegen. Der rohe HTML-Code wird an diese Eigenschaften als Kopf- oder Fußzeile der Seite übergeben. Im Gegensatz zu IronPDF stellt ActivePDF WebGrabber keine vordefinierten Funktionen zur Verfügung, um die Ausrichtung von Kopf- und Fußzeilen festzulegen. Daher müssen wir sie mit Hilfe von HTML- und CSS-Eigenschaften wie folgt festlegen:
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//Page content source
string html = @"<h1 style='text-align:center;'>Page Content</h2>";
//assign above source to WebGrabber
wg.CreateFromHTMLText = html;
//specify Footer height
wg.FooterHeight = 0.5f;
//Add Footer setting
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
//create object for datetime
DateTime now = DateTime.Now;
//specify header height
wg.HeaderHeight = 0.5f;
//Add Header setting
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
//append Header settings
wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>";
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
//Instantiate Object
WebGrabber wg = new WebGrabber();
//Page content source
string html = @"<h1 style='text-align:center;'>Page Content</h2>";
//assign above source to WebGrabber
wg.CreateFromHTMLText = html;
//specify Footer height
wg.FooterHeight = 0.5f;
//Add Footer setting
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
//create object for datetime
DateTime now = DateTime.Now;
//specify header height
wg.HeaderHeight = 0.5f;
//Add Header setting
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
//append Header settings
wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>";
//specify directory for newly created file
wg.OutputDirectory = "E:/";
//specify file name
wg.NewDocumentName = "Sample.pdf";
//convert above sources to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
'Instantiate Object
Dim wg As New WebGrabber()
'Page content source
Dim html As String = "<h1 style='text-align:center;'>Page Content</h2>"
'assign above source to WebGrabber
wg.CreateFromHTMLText = html
'specify Footer height
wg.FooterHeight = 0.5F
'Add Footer setting
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>"
'create object for datetime
Dim now As DateTime = DateTime.Now
'specify header height
wg.HeaderHeight = 0.5F
'Add Header setting
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>"
'append Header settings
wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>"
'specify directory for newly created file
wg.OutputDirectory = "E:/"
'specify file name
wg.NewDocumentName = "Sample.pdf"
'convert above sources to PDF file
wg.ConvertToPDF()
End Sub
$vbLabelText $csharpLabel
Der folgende Screenshot zeigt die neu generierte Sample.pdf-Datei aus dem obigen Code:
ActivePDF WebGrabber hat keine vordefinierte Funktion, um eine horizontale Linie zu zeichnen, die den Header vom Seiteninhalt trennt
ActivePDF erfordert die Verwendung der DateTime-Funktion des .NET Frameworks
IronPDF bietet eine einfache Einstellung der Kopf- und Fußzeileneigenschaften
9. ActivePDF Komponenten Liste
Name
Detail
ActivePDF DocConverter
It is used to convert popular file types to and from PDF format.
ActivePDF WebGrabber
It grabs the HTML from many sources and converts it to PDF files.
ActivePDF DocSpace
It provides Batch Process Automation, and a user interface for display, generate, converting, manipulating, and interacting with PDF and other file formats.
ActivePDF Toolkit
It is used to create, modify, view, extract, manipulate, and automate the document content to and from PDF files.
ActivePDF Portal
It enables the users to view and modify PDF documents from any source in a standard web browser.
ActivePDF CADConverter
It is used to convert CAD files into PDF.
ActivePDF Xtractor
It is used to extract and find the text and images from PDF files.
ActivePDF Spooler
It allows the developer to print the PDF file page on paper.
ActivePDF Redactor
It is used to hide sensitive information from the viewer.
ActivePDF Server
It provides the printing solution for different purposes.
10. Lizenzvergabe
ActivePDF bietet keine Informationen über ihre Pakete auf ihrer ActivePDF-Website an. Um Informationen über die Lizenzierung zu erhalten, müssen Sie ihren Vertriebsmitarbeiter kontaktieren. Sie müssen jedoch genau wissen, welche Art von Produktionslizenz Sie suchen. Sie stellen keine Preisliste zur Verfügung, und obwohl die Preise bei 1.180 $ für eine Jahreslizenz beginnen, können sie je nach Nutzungsumfang höher sein und müssen detailliert angegeben werden, um ein Angebot zu erhalten.
IronPDF bietet transparente Preisgestaltung mit Lizenzen ab $749, mit vielen anpassbaren Optionen. Wenden Sie sich an das Team, wenn Sie Fragen haben.
Tutorial Schnellzugriff
Erkunden Sie die IronPDF API-Referenz
Entdecken Sie die API-Referenz für die IronPDF C# Library, einschließlich Details zu allen IronPDF-Funktionen, Klassen, Methodenfeldern, Namespaces und Enums.
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.
< PREVIOUS Aspose PDF Converter Tutorial und Vergleich
NÄCHSTES > SpirePDF C# HTML zu PDF Tutorial & Bibliothek Vergleich