PageMediaSize Classe

Definição

Descreve o tamanho da página para papel ou outras mídias.

public ref class PageMediaSize sealed
public sealed class PageMediaSize
type PageMediaSize = class
Public NotInheritable Class PageMediaSize
Herança
PageMediaSize

Exemplos

O exemplo a seguir mostra como usar essa classe para dimensionar um elemento visual para caber dentro das margens do papel no qual ele deve ser impresso.

/// <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()

Comentários

Para uma classe que inclui as mesmas informações sobre o tamanho PageMediaSize da mídia e também inclui informações sobre a área imagens da página, consulte PrintDocumentImageableArea.

Cuidado

Não há suporte para classes no System.Printing namespace para uso em um serviço windows ou ASP.NET aplicativo ou serviço. Tentar usar essas classes de dentro de um desses tipos de aplicativo pode produzir problemas inesperados, como redução do desempenho do serviço e exceções em tempo de execução.

Se você quiser imprimir de um aplicativo Windows Forms, consulte o System.Drawing.Printing namespace .

Construtores

PageMediaSize(Double, Double)

Inicializa uma nova instância da classe PageMediaSize usando a largura e a altura.

PageMediaSize(PageMediaSizeName)

Inicializa uma nova instância da classe PageMediaSize usando o PageMediaSizeName especificado.

PageMediaSize(PageMediaSizeName, Double, Double)

Inicializa uma nova instância da classe PageMediaSize usando o PageMediaSizeName especificado e a largura e a altura.

Propriedades

Height

Obtém a altura da página.

PageMediaSizeName

Obtém o nome do tamanho da página para papel ou outra mídia.

Width

Obtém a largura da página.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Exibe o tamanho da página para papel ou outras mídias.

Aplica-se a