Compartilhar via


Como: conjunto largura da caneta e alinhamento

Quando você cria um Pen, você pode fornecer a largura da caneta sistema autônomo um dos argumentos para o construtor. Você também pode alterar a largura de caneta com o Width propriedade das Pen classe.

Uma linha teórica tem uma largura de 0.Quando você desenha uma linha que é 1 pixel de largura, os pixels são centralizados na linha teórica.Se você desenhar uma linha que tenha mais de um pixel de largura, os pixels estão centralizados ou na linha teórica ou aparecem em um dos lados da linha teórica.Você pode conjunto a propriedade de alinhamento de caneta de um Pen para determinar como os pixels desenhados com a caneta serão posicionados em relação às linhas teóricas.

Os valores de Center, Outset, e Inset que aparecem no exemplo a seguir exemplos de código são membros das PenAlignment enumeração.

O exemplo de código a seguir desenha uma linha, duas vezes: uma vez com uma caneta preta de 1 de largura e uma vez com uma caneta verde da largura 10.

Para variar a largura de uma caneta

  • conjunto o valor de Alignment propriedade para Center (o padrão) para especificar que os pixels desenhadas com a caneta verde serão centralizados na linha teórica. A ilustração a seguir mostra a linha resultante.

    O exemplo de código a seguir desenha um retângulo duas vezes: uma vez com uma caneta preta de 1 de largura e uma vez com uma caneta verde da largura 10.

    Dim blackPen As New Pen(Color.FromArgb(255, 0, 0, 0), 1)
    Dim greenPen As New Pen(Color.FromArgb(255, 0, 255, 0), 10)
    greenPen.Alignment = PenAlignment.Center
    
    ' Draw the line with the wide green pen.
    e.Graphics.DrawLine(greenPen, 10, 100, 100, 50)
    
    ' Draw the line with the thin black pen.
    e.Graphics.DrawLine(blackPen, 10, 100, 100, 50)
    
    
    Pen blackPen = new Pen(Color.FromArgb(255, 0, 0, 0), 1);
    Pen greenPen = new Pen(Color.FromArgb(255, 0, 255, 0), 10);
    greenPen.Alignment = PenAlignment.Center;
    
    // Draw the line with the wide green pen.
    e.Graphics.DrawLine(greenPen, 10, 100, 100, 50);
    
    // Draw the line with the thin black pen.
    e.Graphics.DrawLine(blackPen, 10, 100, 100, 50);
    

Para alterar o alinhamento de uma caneta

  • conjunto o valor de Alignment propriedade para Center Para especificar que os pixels desenhados com a caneta verde serão centralizados na borda do retângulo.

    A ilustração a seguir mostra o retângulo resultante.

    Dim blackPen As New Pen(Color.FromArgb(255, 0, 0, 0), 1)
    Dim greenPen As New Pen(Color.FromArgb(255, 0, 255, 0), 10)
    greenPen.Alignment = PenAlignment.Center
    
    ' Draw the rectangle with the wide green pen.
    e.Graphics.DrawRectangle(greenPen, 10, 100, 50, 50)
    
    ' Draw the rectangle with the thin black pen.
    e.Graphics.DrawRectangle(blackPen, 10, 100, 50, 50)
    
    
    Pen blackPen = new Pen(Color.FromArgb(255, 0, 0, 0), 1);
    Pen greenPen = new Pen(Color.FromArgb(255, 0, 255, 0), 10);
    greenPen.Alignment = PenAlignment.Center;
    
    // Draw the rectangle with the wide green pen.
    e.Graphics.DrawRectangle(greenPen, 10, 100, 50, 50);
    
    // Draw the rectangle with the thin black pen.
    e.Graphics.DrawRectangle(blackPen, 10, 100, 50, 50);
    

Para criar uma caneta de baixo-relevo

  • Altere alinhamento da caneta verde, modificando a terceira demonstrativo no exemplo de código anterior da seguinte maneira:

    greenPen.Alignment = PenAlignment.Inset
    
    
    greenPen.Alignment = PenAlignment.Inset;
    

    Agora sistema autônomo pixels na linha larga verde aparecem no interior do retângulo sistema autônomo mostrado na ilustração a seguir.

Consulte também

Outros recursos

Usando uma caneta para desenhar linhas e formas

Elementos gráficos e desenho em formulários do Windows