Wie lege ich die Papierabstände für den Druck in C# fest
Druckabstände steuern den leeren Raum zwischen Ihrem Dokumentinhalt und den Rändern der physischen Seite. Das richtige Einstellen verhindert abgeschnittenen Text, sorgt für konsistente Layouts über Drucker hinweg und erfüllt Formatierungsanforderungen für Rechnungen, Berichte und juristische Dokumente.
Die Klasse Margins von IronPrint akzeptiert Werte in Millimetern und bietet drei Konstruktor-Überladungen – einheitlich, horizontal/vertikal und pro Seite –, sodass wir jede Layoutanforderung in einer einzigen Zeile erfüllen können. Im Folgenden gehen wir auf jeden Ansatz ein, von der Installation bis zum Drucken mit benutzerdefinierten Rändern.
Quickstart: Papierabstände festlegen
- Installieren Sie IronPrint über NuGet:
Install-Package IronPrint - Fügen Sie
using IronPrint;zur Datei hinzu - Erstellen Sie ein
PrintSettings-Objekt - Weisen Sie
Marginsden WertPaperMarginszu (Werte in Millimetern) - Übergeben Sie die Einstellungen an
Printer.Print()mit dem Dateipfad
-
Installieren Sie IronPrint mit NuGet Package Manager
PM > Install-Package IronPrint -
Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
using IronPrint; // Set 15 mm margins on all sides and print PrintSettings settings = new PrintSettings(); settings.PaperMargins = new Margins(15); Printer.Print("report.pdf", settings); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronPrint in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- Installieren Sie die IronPrint C#-Druckbibliothek
- Erstellen Sie ein
PrintSettings-Objekt - Weisen Sie
Marginseinen WertPaperMarginszu - Übergeben Sie die Einstellungen an
Printer.Print() - Führen Sie das Projekt aus, um mit benutzerdefinierten Rändern zu drucken
Wie kann ich gleiche Abstände auf allen Seiten festlegen?
Der einfachste Konstruktor nimmt eine ganze Zahl und wendet sie einheitlich auf alle vier Seiten an. Wir übergeben den Wert in Millimetern:
:path=/static-assets/print/content-code-examples/how-to/set-paper-margins/set-paper-margins-uniform-margins.cs
using IronPrint;
// Configure a uniform 20 mm margin on all sides
PrintSettings settings = new PrintSettings
{
PaperMargins = new Margins(20),
PaperSize = PaperSize.A4
};
// Print the invoice
Printer.Print("invoice.pdf", settings);
Imports IronPrint
' Configure a uniform 20 mm margin on all sides
Dim settings As New PrintSettings With {
.PaperMargins = New Margins(20),
.PaperSize = PaperSize.A4
}
' Print the invoice
Printer.Print("invoice.pdf", settings)
Margins(20) setzt Left, Top, Right und Bottom jeweils auf 20 mm. Dies ist die häufigste Wahl für Standardgeschäftsdokumente, bei denen konsistenter Leerraum an jedem Rand ausreichend ist.
IronPrint misst Ränder in Millimetern, wodurch die Verwirrung der Klasse System.Drawing.Printing.Margins vermieden wird, die Hundertstel Zoll verwendet. Ein Rand von 25,4 mm in IronPrint entspricht new System.Drawing.Printing.Margins(100) – eine Umrechnung ist unsererseits nicht erforderlich.
Wie lege ich unterschiedliche Abstände für jede Seite fest?
Wenn ein Dokument oben mehr Platz für einen Briefkopf oder unten für eine Fußzeile benötigt, verwenden wir den Vier-Parameter-Konstruktor:
:path=/static-assets/print/content-code-examples/how-to/set-paper-margins/set-paper-margins-per-side-margins.cs
using IronPrint;
// Configure per-side margins (left, top, right, bottom)
PrintSettings settings = new PrintSettings
{
PaperMargins = new Margins(10, 25, 10, 20),
PaperOrientation = PaperOrientation.Portrait
};
// Print the letterhead
Printer.Print("letterhead.pdf", settings);
Imports IronPrint
' Configure per-side margins (left, top, right, bottom)
Dim settings As New PrintSettings With {
.PaperMargins = New Margins(10, 25, 10, 20),
.PaperOrientation = PaperOrientation.Portrait
}
' Print the letterhead
Printer.Print("letterhead.pdf", settings)
Die Parameterreihenfolge lautet left, top, right, bottom. Jeder Wert ist unabhängig, sodass wir asymmetrische Layouts erstellen können, die Header, Footer, Bindungsränder oder Lochplatzplatz aufnehmen. Die Margins-Klassen-API Referenz dokumentiert jedes Feld.
Welche Kurzformen gibt es für gängige Layouts?
Die Klasse Margins von IronPrint bietet zwei zusätzliche Konstruktoren zusätzlich zu den Versionen "uniform" und "per-side":
Horizontale/vertikale Kurzschreibweise — Margins(int horizontal, int vertical) setzt "left+right" auf den ersten Wert und "top+bottom" auf den zweiten:
:path=/static-assets/print/content-code-examples/how-to/set-paper-margins/set-paper-margins-shorthand-margins.cs
using IronPrint;
// Configure horizontal and vertical margin shorthand
PrintSettings settings = new PrintSettings
{
PaperMargins = new Margins(10, 20)
};
// Print the landscape report
Printer.Print("report-landscape.pdf", settings);
Imports IronPrint
' Configure horizontal and vertical margin shorthand
Dim settings As New PrintSettings With {
.PaperMargins = New Margins(10, 20)
}
' Print the landscape report
Printer.Print("report-landscape.pdf", settings)
Keine Ränder — Margins.Zero entfernt alle Ränder für randloses Drucken:
:path=/static-assets/print/content-code-examples/how-to/set-paper-margins/set-paper-margins-zero-margins.cs
using IronPrint;
// Configure zero margins for edge-to-edge printing
PrintSettings borderless = new PrintSettings
{
PaperMargins = new Margins(0)
};
// Print the poster
Printer.Print("poster.png", borderless);
Imports IronPrint
' Configure zero margins for edge-to-edge printing
Dim borderless As New PrintSettings With {
.PaperMargins = New Margins(0)
}
' Print the poster
Printer.Print("poster.png", borderless)
Beachten Sie, dass die meisten physischen Drucker einen hardwaremäßigen minimal druckbaren Bereich erzwingen. Das Setzen von Margins.Zero sendet Anweisungen für einen Nullrand an den Treiber, aber der Drucker kann je nach seinen Fähigkeiten dennoch Inhalte in Randnähe abschneiden.
Wie kombiniere ich Ränder mit anderen Druckeinstellungen?
PaperMargins ist eine Eigenschaft von PrintSettings. Wir können es mit Papiergröße, Ausrichtung, DPI, Kopien, Graustufenmodus und Druckerauswahl in einem einzigen Konfigurationsobjekt kombinieren:
:path=/static-assets/print/content-code-examples/how-to/set-paper-margins/set-paper-margins-combined-settings.cs
using IronPrint;
// Configure full print settings with asymmetric margins
PrintSettings settings = new PrintSettings
{
PaperMargins = new Margins(15, 20, 15, 25),
PaperSize = PaperSize.A4,
PaperOrientation = PaperOrientation.Portrait,
Dpi = 300,
NumberOfCopies = 2,
Grayscale = false,
PrinterName = "HP LaserJet Pro MFP M428"
};
// Print the Q4 report to the named printer
Printer.Print("Q4-report.pdf", settings);
Imports IronPrint
' Configure full print settings with asymmetric margins
Dim settings As New PrintSettings With {
.PaperMargins = New Margins(15, 20, 15, 25),
.PaperSize = PaperSize.A4,
.PaperOrientation = PaperOrientation.Portrait,
.Dpi = 300,
.NumberOfCopies = 2,
.Grayscale = False,
.PrinterName = "HP LaserJet Pro MFP M428"
}
' Print the Q4 report to the named printer
Printer.Print("Q4-report.pdf", settings)
Bei asynchronen Workflows – WPF-, MAUI- oder ASP.NET-Webanwendungen – ersetzen Sie Printer.Print() durch await Printer.PrintAsync(), um eine Blockierung des UI-Threads zu vermeiden. Dasselbe PrintSettings-Objekt funktioniert mit beiden Methoden.
Was sind meine nächsten Schritte?
Wir haben vier Möglichkeiten zur Konfiguration von Druckrändern mit IronPrint behandelt: einheitliche Ränder mit Margins(int), seitenweise Steuerung mit Margins(int, int, int, int), die horizontale/vertikale Kurzform Margins(int, int) und randloses Drucken mit Margins.Zero. Jeder Ansatz fließt in PrintSettings.PaperMargins ein und funktioniert sowohl mit Printer.Print() als auch mit Printer.PrintAsync().
Für weiterführende Informationen konsultieren Sie bitte diese Ressourcen:
- IronPrint-Tutorials – Dokument drucken für vollständige Druckanleitungen.
- Print Settings How-To für DPI, Ausrichtung, Kopien und mehr.
MarginsKlassen-API Referenz für die vollständige Dokumentation der Konstruktoren und Felder.PrinterKlassen-API Referenz für alle statischen Druckmethoden.
Holen Sie sich eine kostenlose Testlizenz, um jede Funktion in einer Live-Umgebung zu testen, oder sehen Sie sich die Lizenzierungsoptionen an, wenn Sie bereit sind, zu starten.
Häufig gestellte Fragen
Was ist IronPrint und wie hilft es beim Festlegen von Druckrändern in C#?
IronPrint ist eine .NET-Bibliothek, die das Festlegen von Druckrändern in C# vereinfacht. Sie bietet eine Margins-Klasse, die es Entwicklern ermöglicht, Druckränder mit einheitlichen, seitenweise und randlosen Optionen einfach zu gestalten, und das alles mit nur einer Codezeile.
Wie kann ich einheitliche Ränder für das Drucken in C# mit IronPrint festlegen?
Um einheitliche Ränder für das Drucken in C# mit IronPrint festzulegen, können Sie die Margins-Klasse verwenden. Diese Klasse ermöglicht es Ihnen, die gleiche Randgröße für alle Seiten in einer einzigen Codezeile zu spezifizieren.
Ist es möglich, unterschiedliche Ränder für jede Seite in C# festzulegen?
Ja, IronPrint ermöglicht es Ihnen, unterschiedliche Ränder für jede Seite in C# festzulegen. Die Margins-Klasse bietet Optionen, um die oberen, unteren, linken und rechten Ränder individuell anzupassen.
Kann ich mit IronPrint randlose Drucke erstellen?
IronPrint unterstützt die Erstellung von randlosen Drucken. Indem Sie die Ränder mit der Margins-Klasse anpassen, können Sie die Ränder auf null setzen und so einen randlosen Druck erzeugen.
Was sind die Vorteile der Verwendung von IronPrint zum Festlegen von Papiermargen?
IronPrint vereinfacht die Festlegung von Papiermargen in C# durch eine einfach zu bedienende und effiziente API. Die Margins-Klasse vereinfacht den Code und erhöht die Produktivität, sodass benutzerdefinierte Druckanforderungen leichter umgesetzt werden können.
Benötige ich umfangreiche Programmierkenntnisse, um Druckränder mit IronPrint festzulegen?
Nein, Sie benötigen keine umfangreichen Programmierkenntnisse, um Druckränder mit IronPrint festzulegen. Die Bibliothek ist benutzerfreundlich gestaltet, sodass auch Personen mit grundlegenden C#-Kenntnissen benutzerdefinierte Ränder einfach implementieren können.
Wie geht IronPrint mit unterschiedlichen Papiergrößen bei der Festlegung von Rändern um?
IronPrint passt sich an verschiedene Papiergrößen an, indem es Ihnen erlaubt, Ränder festzulegen, die den spezifischen Abmessungen Ihres Dokuments entsprechen. Diese Flexibilität gewährleistet, dass Ihre Druckausgaben Ihre spezifischen Layoutanforderungen erfüllen.
Kann IronPrint in andere .NET-Anwendungen integriert werden?
Ja, IronPrint kann nahtlos in andere .NET-Anwendungen integriert werden, sodass Sie benutzerdefinierte Druckrand-Einstellungen in eine Vielzahl von Projekten und Workflows einfügen können.

