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");
In diesem Artikel wird erläutert, wie IronPDF zum Speichern von PDF-Dateien aus einer Windows Forms-Anwendung oder einer beliebigen .NET-Anwendung verwendet werden kann.
Die IronPDF-Bibliothek ist eine .NET-Bibliothek, die benutzerfreundliche Klassen und Methoden für die Erzeugung von und die Arbeit mit PDF-Dateien in C#-Anwendungen bietet. Es ermöglicht Entwicklern das Erstellen, Ändern und Speichern von PDF-Dateien mit nur wenigen Codezeilen, was es zu einer hervorragenden Wahl für Windows Forms-Anwendungen macht.
Schritt 1: Erstellen einer neuen Windows Forms-Anwendung
Erstellen Sie zunächst ein neues Visual Studio-Projekt. Hier sind die Schritte zum Erstellen einer neuen C# Windows Forms-Anwendung in Visual Studio 2022
Öffnen Sie Visual Studio 2022 wie unten gezeigt.
Visuelles Studio 2022
Klicken Sie auf der Startseite auf "Neues Projekt erstellen" oder gehen Sie auf "Datei" > "Neu" > "Projekt".
Wählen Sie im Dialogfeld "Neues Projekt erstellen" die Option "Windows Forms App" oder "Windows Forms App"(.NET-Framework)" unter "Neues Projekt erstellen" wie unten gezeigt.
Neue Formulare App
Geben Sie einen Namen für Ihr Projekt ein und wählen Sie einen Speicherort.
Projektstandort
Wählen Sie .NET-Framework. Wählen Sie .NET 7.0 aus dem Dropdown-Menü.
Klicken Sie auf die Schaltfläche Erstellen.
Zusätzliche Informationen
Visual Studio erstellt ein neues C# Windows Forms-Anwendungsprojekt für Sie, dem ein Standardformular mit dem Namen "Form1" hinzugefügt wird (siehe unten).
Form1-Projekt
Das war's! Nun beginnen wir mit der Erstellung der Windows Forms-Anwendung mit Hilfe des Designers und fügen Steuerelemente und Funktionen zum Erstellen und Speichern einer PDF-Dokumentendatei hinzu.
Schritt 2: Entwurf des Formulars
Sie können das Formular nach Ihren Wünschen gestalten. In diesem Tutorial wird ein minimalistisches Design erstellt, indem zwei Beschriftungen, ein Rich-Text-Feld und zwei Schaltflächen hinzugefügt werden.
Schaltflächen in das Formular einfügen
Schritt 3: IronPDF installieren
Der nächste Schritt besteht darin, IronPDF in diesem Projekt zu installieren, um seine umfangreichen Funktionen zu nutzen.
IronPDF kann mit dem NuGet Package Manager in Visual Studio installiert werden. Sie können zur NuGet Package Manager Console navigieren, indem Sie Tools > NuGet Package Manager > Package Manager Console wählen.
Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:
Install-Package IronPdf
Mit diesem Befehl wird das IronPDF-Paket heruntergeladen und in Ihrem Projekt installiert. Nach der Installation können wir IronPDF verwenden.
Code zum Erstellen und Speichern von PDF-Dateien schreiben
Um mit dem Ablauf zu beginnen, schreiben Sie zwei Methoden: Save_Click und getFilePath in der Klasse Form1.cs. Diese Methoden werden zusammen verwendet, um den Inhalt eines Textfeldes als PDF-Datei zu speichern, indem dieChromePdfRenderer-Klasse bibliothek. Schauen wir uns die einzelnen Methoden an, um zu verstehen, wie sie funktionieren.
Save_Click-Methode (PDF-Dokument erstellen)
Die folgende Methode ist ein Event-Handler für ein Button-Click-Ereignis. Der Zweck dieser Methode ist es, den Inhalt eines Textfeldes als PDF-Datei zu speichern.
private void Save_Click(object sender, EventArgs e)
{
// Get the file path to save the PDF file.
string filename = getFilePath();
// If the file path is not empty or null, proceed with saving the PDF file.
if (!String.IsNullOrEmpty(filePath))
{
// Create a new instance of the ChromePdfRenderer class.
var renderer = new ChromePdfRenderer();
// Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);
// Save the PDF document to the specified file path using the SaveAs method.
pdfDocument.SaveAs(filename);
// Show a message box to indicate that the PDF file has been saved successfully.
MessageBox.Show("PDF has been saved Successfully!");
}
}
private void Save_Click(object sender, EventArgs e)
{
// Get the file path to save the PDF file.
string filename = getFilePath();
// If the file path is not empty or null, proceed with saving the PDF file.
if (!String.IsNullOrEmpty(filePath))
{
// Create a new instance of the ChromePdfRenderer class.
var renderer = new ChromePdfRenderer();
// Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);
// Save the PDF document to the specified file path using the SaveAs method.
pdfDocument.SaveAs(filename);
// Show a message box to indicate that the PDF file has been saved successfully.
MessageBox.Show("PDF has been saved Successfully!");
}
}
Private Sub Save_Click(ByVal sender As Object, ByVal e As EventArgs)
' Get the file path to save the PDF file.
Dim filename As String = getFilePath()
' If the file path is not empty or null, proceed with saving the PDF file.
If Not String.IsNullOrEmpty(filePath) Then
' Create a new instance of the ChromePdfRenderer class.
Dim renderer = New ChromePdfRenderer()
' Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
Dim pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text)
' Save the PDF document to the specified file path using the SaveAs method.
pdfDocument.SaveAs(filename)
' Show a message box to indicate that the PDF file has been saved successfully.
MessageBox.Show("PDF has been saved Successfully!")
End If
End Sub
Im Folgenden wird Schritt für Schritt erklärt, wie diese Methode funktioniert:
Die Methode ruft die Methode "getFilePath" auf, um den Dateipfad zu ermitteln, unter dem die PDF-Datei gespeichert werden soll.
Wenn der Dateipfad nicht leer oder null ist, fährt die Methode mit dem Speichern der PDF-Datei fort.
Die Methode erzeugt eine neue Instanz der Klasse ChromePdfRenderer. Dies ist eine Bibliothek, die eine Möglichkeit bietet, HTML-Inhalte in PDF-Dokumente zu konvertieren, indem sie die Google Chrome Browser-Engine verwendet.
Die Methode verwendet dann dieRenderHtmlAsPdf-Methode der Klasse ChromePdfRenderer, um den HTML-Inhalt des Textfeldes pdfContent in ein PDF-Dokument zu konvertieren. Dieses PDF-Dokument ist demPdfDocument-Variable.
Die Methode speichert das PDF-Dokument in dem angegebenen Dateipfad unter Verwendung derSaveAs-Methode der Klasse PdfDocument.
Schließlich zeigt die Methode in einem Meldungsfenster an, dass die PDF-Datei erfolgreich gespeichert wurde.
getFilePath-Methode (PDF-Dateien speichern)
Diese Methode wird verwendet, um dem Benutzer einen "SaveFileDialog" anzuzeigen, damit er einen Dateipfad auswählen kann, unter dem die PDF-Datei gespeichert werden soll.
public string getFilePath()
{
// Create a new instance of the SaveFileDialog class.
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
// Set the initial directory where the SaveFileDialog will open.
saveFileDialog1.InitialDirectory = @"D:\";
// Set the title of the SaveFileDialog.
saveFileDialog1.Title = "Save the PDF Files";
// Set the SaveFileDialog to check if the specified path exists.
saveFileDialog1.CheckPathExists = true;
// Set the default extension for the file type.
saveFileDialog1.DefaultExt = ".pdf";
// Set the filter to display only PDF files or all files.
saveFileDialog1.Filter = "PDF files (*.pdf)
*.pdf
All files (*.*)
*.*";
// Set the filter index to display the PDF filter as the default.
saveFileDialog1.FilterIndex = 2;
// Set the RestoreDirectory property to true so that the SaveFileDialog
// restores the current directory before closing.
saveFileDialog1.RestoreDirectory = true;
// Show the SaveFileDialog and get the result.
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
// If the user clicked the OK button in the SaveFileDialog, return the selected file path.
return saveFileDialog1.FileName;
}
// If the user did not click the OK button, return an empty string.
return "";
}
public string getFilePath()
{
// Create a new instance of the SaveFileDialog class.
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
// Set the initial directory where the SaveFileDialog will open.
saveFileDialog1.InitialDirectory = @"D:\";
// Set the title of the SaveFileDialog.
saveFileDialog1.Title = "Save the PDF Files";
// Set the SaveFileDialog to check if the specified path exists.
saveFileDialog1.CheckPathExists = true;
// Set the default extension for the file type.
saveFileDialog1.DefaultExt = ".pdf";
// Set the filter to display only PDF files or all files.
saveFileDialog1.Filter = "PDF files (*.pdf)
*.pdf
All files (*.*)
*.*";
// Set the filter index to display the PDF filter as the default.
saveFileDialog1.FilterIndex = 2;
// Set the RestoreDirectory property to true so that the SaveFileDialog
// restores the current directory before closing.
saveFileDialog1.RestoreDirectory = true;
// Show the SaveFileDialog and get the result.
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
// If the user clicked the OK button in the SaveFileDialog, return the selected file path.
return saveFileDialog1.FileName;
}
// If the user did not click the OK button, return an empty string.
return "";
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
Im Folgenden wird Schritt für Schritt erklärt, wie diese Methode funktioniert:
Die Methode erzeugt eine neue Instanz der Klasse SaveFileDialog. Diese Klasse ist Teil der Windows Forms-Bibliothek und bietet ein Dialogfeld, in dem der Benutzer einen Dateipfad auswählen kann, unter dem die PDF-Datei gespeichert werden soll.
Die Methode setzt mehrere Eigenschaften des "SaveFileDialog"-Objekts, um sein Verhalten anzupassen. Die Eigenschaft InitialDirectory legt das Verzeichnis fest, in dem das Dialogfeld zuerst geöffnet wird. Die Eigenschaft "Titel" legt den Titel des Dialogfelds fest. Die Eigenschaft CheckPathExists gibt an, ob das Dialogfeld prüfen soll, ob der angegebene Pfad existiert. Die Eigenschaft DefaultExt legt die Standard-Dateierweiterung für den Dateityp fest. Die Eigenschaft "Filter" legt die Dateitypfilter fest, die im Dialogfeld angezeigt werden. Die Eigenschaft FilterIndex legt den Standardfilter fest, der angezeigt werden soll. Schließlich gibt die Eigenschaft "RestoreDirectory" an, ob das Dialogfeld vor dem Schließen das aktuelle Verzeichnis wiederherstellen soll.
Die Methode zeigt den "SaveFileDialog" durch Aufruf seiner "ShowDialog"-Methode an. Diese Methode zeigt das Dialogfeld an und gibt einen "DialogResult"-Wert zurück, der angibt, ob der Benutzer auf die Schaltfläche "OK" oder auf die Schaltfläche "Abbrechen" geklickt hat.
Wenn der Benutzer auf die Schaltfläche "OK" klickt, gibt die Methode den Dateipfad zurück, den der Benutzer durch Zugriff auf die Eigenschaft "FileName" des "SaveFileDialog" ausgewählt hat.
Wenn der Benutzer auf die Schaltfläche "Abbrechen" klickt oder das Dialogfeld schließt, gibt die Methode eine leere Zeichenfolge zurück.
Führen wir das Projekt aus und sehen wir uns die Ausgabe an. Starten Sie das Projekt, und das folgende Formular wird geöffnet.
Ausgeführtes Windows Forms-Projekt
Geben Sie Ihren PDF-Inhalt ein und klicken Sie auf die Schaltfläche "Speichern" (siehe unten).
Dialogfeld Speichern
Die folgende PDF-Datei wird erstellt.
Erstellte PDF-Datei
IronPDF bietet eine einfache Möglichkeit, HTML-Inhalte in PDF-Dokumente zu konvertieren und sie unter Verwendung der Klasse ChromePdfRenderer und des Dialogfelds SaveFileDialog in einem vom Benutzer ausgewählten Dateipfad zu speichern.
Schlussfolgerung
Das Speichern von PDF-Dateien aus einer Windows Forms-Anwendung ist eine häufige Anforderung, und IronPDF bietet eine einfach zu bedienende und flexible Methode, um diese Aufgabe zu erfüllen. In diesem Artikel wurde gezeigt, wie IronPDF zum Erstellen, Hinzufügen von Inhalten und Speichern von Dateien in einer C# Windows Forms-Anwendung verwendet wird. Mit IronPDF können Entwickler mit nur wenigen Codezeilen hochwertige PDF-Dateien aus ihren Anwendungen erzeugen.
Regan schloss sein Studium an der University of Reading mit einem BA in Elektrotechnik ab. Bevor er zu Iron Software kam, konzentrierte er sich in seinen früheren Jobs auf einzelne Aufgaben. Was ihm bei Iron Software am meisten Spaß macht, ist das Spektrum der Aufgaben, die er übernehmen kann, sei es im Vertrieb, im technischen Support, in der Produktentwicklung oder im Marketing. Es macht ihm Spaß, die Art und Weise zu verstehen, wie Entwickler die Bibliothek von Iron Software nutzen, und dieses Wissen zu nutzen, um die Dokumentation und die Produkte kontinuierlich zu verbessern.
< PREVIOUS Wie man CSHTML in C# in PDF konvertiert
NÄCHSTES > Wie man PDF aus Byte-Array in Blazor anzeigt