Freigeben über


PageMediaSize Klasse

Definition

Beschreibt die Seitengröße für Papier oder andere Medien.

public ref class PageMediaSize sealed
public sealed class PageMediaSize
type PageMediaSize = class
Public NotInheritable Class PageMediaSize
Vererbung
PageMediaSize

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie diese Klasse verwenden, um ein visuelles Element so zu skalieren, dass es an die Seitenränder des Papiers passt, auf dem es gedruckt werden soll.

/// <summary>
///   Returns a scaled copy of a given visual transformed to
///   fit for printing to a specified print queue.</summary>
/// <param name="v">
///   The visual to be printed.</param>
/// <param name="pq">
///   The print queue to be output to.</param>
/// <returns>
///   The root element of the transformed visual.</returns>
private Visual PerformTransform(Visual v, PrintQueue pq)
{
    ContainerVisual root = new ContainerVisual();
    const double inch = 96;

    // Set the margins.
    double xMargin = 1.25 * inch;
    double yMargin = 1 * inch;

    PrintTicket pt = pq.UserPrintTicket;
    Double printableWidth = pt.PageMediaSize.Width.Value;
    Double printableHeight = pt.PageMediaSize.Height.Value;

    Double xScale = (printableWidth - xMargin * 2) / printableWidth;
    Double yScale = (printableHeight - yMargin * 2) / printableHeight;

    root.Children.Add(v);
    root.Transform = new MatrixTransform(xScale, 0, 0, yScale, xMargin, yMargin);

    return root;
}// end:PerformTransform()
''' <summary>
'''   Returns a scaled copy of a given visual transformed to
'''   fit for printing to a specified print queue.</summary>
''' <param name="v">
'''   The visual to be printed.</param>
''' <param name="pq">
'''   The print queue to be output to.</param>
''' <returns>
'''   The root element of the transformed visual.</returns>
Private Function PerformTransform(ByVal v As Visual, ByVal pq As PrintQueue) As Visual
    Dim root As New ContainerVisual()
    Const inch As Double = 96

    ' Set the margins.
    Dim xMargin As Double = 1.25 * inch
    Dim yMargin As Double = 1 * inch

    Dim pt As PrintTicket = pq.UserPrintTicket
    Dim printableWidth As Double = pt.PageMediaSize.Width.Value
    Dim printableHeight As Double = pt.PageMediaSize.Height.Value

    Dim xScale As Double = (printableWidth - xMargin * 2) / printableWidth
    Dim yScale As Double = (printableHeight - yMargin * 2) / printableHeight

    root.Children.Add(v)
    root.Transform = New MatrixTransform(xScale, 0, 0, yScale, xMargin, yMargin)

    Return root
End Function ' end:PerformTransform()

Hinweise

Eine Klasse, die dieselben Informationen über die Mediengröße wie PageMediaSize und auch Informationen zum bildbaren Bereich der Seite enthält, finden Sie unter PrintDocumentImageableArea.

Achtung

Klassen innerhalb des Namespace werden nicht für die System.Printing Verwendung innerhalb eines Windows-Diensts oder ASP.NET-Anwendung oder -Diensts unterstützt. Der Versuch, diese Klassen aus einem dieser Anwendungstypen zu verwenden, kann zu unerwarteten Problemen führen, z. B. zu leistungseinbußen und Laufzeitausnahmen.

Wenn Sie aus einer Windows Forms-Anwendung drucken möchten, lesen Sie den System.Drawing.Printing Namespace.

Konstruktoren

PageMediaSize(Double, Double)

Initialisiert eine neue Instanz der PageMediaSize-Klasse mit der angegebenen Breite und Höhe.

PageMediaSize(PageMediaSizeName)

Initialisiert eine neue Instanz der PageMediaSize-Klasse, indem der angegebene PageMediaSizeName verwendet wird.

PageMediaSize(PageMediaSizeName, Double, Double)

Initialisiert eine neue Instanz der PageMediaSize-Klasse mit dem angegebenen PageMediaSizeName und der angegebenen Breite und Höhe.

Eigenschaften

Height

Ruft die Seitenhöhe ab.

PageMediaSizeName

Ruft den Namen der Seitengröße für das Papier oder andere Medium ab.

Width

Ruft die Seitenbreite ab.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Zeigt die Seitengröße für das Papier oder andere Medium an.

Gilt für: