Поделиться через


Pen Класс

Определение

Определяет объект, используемый для рисования линий и кривых. Этот класс не может быть унаследован.

public ref class Pen sealed : MarshalByRefObject, ICloneable, IDisposable
public sealed class Pen : MarshalByRefObject, ICloneable, IDisposable
type Pen = class
    inherit MarshalByRefObject
    interface ICloneable
    interface IDisposable
Public NotInheritable Class Pen
Inherits MarshalByRefObject
Implements ICloneable, IDisposable
Наследование
Реализации

Примеры

В следующем примере кода показано создание с Pen помощью a Brush и эффекты установки LineJoin свойства на объект Pen.

Этот пример предназначен для использования с Windows Forms. Вставьте код в форму и вызовите ShowLineJoin метод при обработке события формы Paint , передавая e как PaintEventArgs.

private:
   void ShowLineJoin( PaintEventArgs^ e )
   {
      // Create a new pen.
      Pen^ skyBluePen = gcnew Pen( Brushes::DeepSkyBlue );

      // Set the pen's width.
      skyBluePen->Width = 8.0F;

      // Set the LineJoin property.
      skyBluePen->LineJoin = System::Drawing::Drawing2D::LineJoin::Bevel;

      // Draw a rectangle.
      e->Graphics->DrawRectangle( skyBluePen, Rectangle(40,40,150,200) );

      //Dispose of the pen.
      delete skyBluePen;
   }
private void ShowLineJoin(PaintEventArgs e)
{

    // Create a new pen.
    Pen skyBluePen = new Pen(Brushes.DeepSkyBlue);

    // Set the pen's width.
    skyBluePen.Width = 8.0F;

    // Set the LineJoin property.
    skyBluePen.LineJoin = System.Drawing.Drawing2D.LineJoin.Bevel;

    // Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, 
        new Rectangle(40, 40, 150, 200));

    //Dispose of the pen.
    skyBluePen.Dispose();
}
Private Sub ShowLineJoin(ByVal e As PaintEventArgs)

    ' Create a new pen.
    Dim skyBluePen As New Pen(Brushes.DeepSkyBlue)

    ' Set the pen's width.
    skyBluePen.Width = 8.0F

    ' Set the LineJoin property.
    skyBluePen.LineJoin = Drawing2D.LineJoin.Bevel

    ' Draw a rectangle.
    e.Graphics.DrawRectangle(skyBluePen, _
        New Rectangle(40, 40, 150, 200))

    'Dispose of the pen.
    skyBluePen.Dispose()

End Sub

Комментарии

Рисует Pen линию указанной ширины и стиля. DashStyle Используйте свойство для рисования нескольких разновидностей дефисированных линий. Линия, рисуемая с помощью диаграммы Pen , может быть заполнена различными стилями заливки, включая сплошные цвета и текстуры. Стиль заливки зависит от кисти или текстуры, используемой в качестве объекта заливки.

Замечание

В .NET 6 и более поздних версиях пакет System.Drawing.Common, который включает этот тип, поддерживается только в операционных системах Windows. Использование этого типа в кроссплатформенных приложениях вызывает предупреждения во время компиляции и исключения во время выполнения. Дополнительные сведения см. в статье System.Drawing.Common, поддерживаемой только в Windows.

Конструкторы

Имя Описание
Pen(Brush, Single)

Инициализирует новый экземпляр Pen класса с указанным Brush и Width.

Pen(Brush)

Инициализирует новый экземпляр Pen класса с указанным Brush.

Pen(Color, Single)

Инициализирует новый экземпляр Pen класса с указанными Color и Width свойствами.

Pen(Color)

Инициализирует новый экземпляр Pen класса с указанным цветом.

Свойства

Имя Описание
Alignment

Возвращает или задает выравнивание для этого Pen.

Brush

Возвращает или задает Brush атрибуты этого Penпараметра.

Color

Возвращает или задает цвет этого Penпараметра.

CompoundArray

Возвращает или задает массив значений, указывающий составное перо. Составное перо рисует составную линию, состоящей из параллельных линий и пробелов.

CustomEndCap

Возвращает или задает настраиваемую крышку, используемую в конце линий, рисуемых с этим Penпараметром.

CustomStartCap

Возвращает или задает настраиваемую крышку, используемую в начале линий, рисуемых с этим Penпараметром.

DashCap

Возвращает или задает стиль крышки, используемый в конце дефисов, составляющих пунктирные линии, рисуемые с этим Pen.

DashOffset

Возвращает или задает расстояние от начала строки до начала шаблона тире.

DashPattern

Возвращает или задает массив пользовательских дефисов и пробелов.

DashStyle

Возвращает или задает стиль, используемый для дефисированных линий, рисуемых с помощью этого Penпараметра.

EndCap

Возвращает или задает стиль крышки, используемый в конце линий, рисуемых с помощью этого Penэлемента.

LineJoin

Возвращает или задает стиль соединения для концы двух последовательных линий, нарисованных с помощью этого Penэлемента.

MiterLimit

Возвращает или задает ограничение толщины соединения в митрированного угла.

PenType

Возвращает стиль линий, рисуемых с помощью этого Penэлемента.

StartCap

Возвращает или задает стиль крышки, используемый в начале линий, рисуемых с этим Pen.

Transform

Получает или задает копию геометрического преобразования для этого Pen.

Width

Получает или задает ширину этого Penобъекта в единицах объекта, используемого Graphics для рисования.

Методы

Имя Описание
Clone()

Создает точную копию этого Penобъекта.

CreateObjRef(Type)

Создает объект, содержащий все соответствующие сведения, необходимые для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.

(Унаследовано от MarshalByRefObject)
Dispose()

Освобождает все ресурсы, используемые этим Penпараметром.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Finalize()

Позволяет объекту пытаться освободить ресурсы и выполнять другие операции очистки перед его восстановлением сборкой мусора.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetLifetimeService()
Устаревшие..

Извлекает текущий объект службы времени существования, который управляет политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
InitializeLifetimeService()
Устаревшие..

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неглубокую копию текущего MarshalByRefObject объекта.

(Унаследовано от MarshalByRefObject)
MultiplyTransform(Matrix, MatrixOrder)

Умножает матрицу преобразования для этого Pen на указанный Matrix порядок.

MultiplyTransform(Matrix)

Умножает матрицу преобразования для этого Pen на указанный Matrix.

ResetTransform()

Сбрасывает матрицу геометрического преобразования для этого Pen удостоверения.

RotateTransform(Single, MatrixOrder)

Поворот локального геометрического преобразования по указанному углу в указанном порядке.

RotateTransform(Single)

Поворот локального геометрического преобразования по указанному углу. Этот метод добавляет поворот к преобразованию.

ScaleTransform(Single, Single, MatrixOrder)

Масштабирует локальное геометрическое преобразование по указанным факторам в указанном порядке.

ScaleTransform(Single, Single)

Масштабирует локальное геометрическое преобразование указанными факторами. Этот метод добавляет матрицу масштабирования к преобразованию.

SetLineCap(LineCap, LineCap, DashCap)

Задает значения, определяющие стиль крышки, используемой для конечных линий, рисуемых этим Pen.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TranslateTransform(Single, Single, MatrixOrder)

Преобразует локальное геометрическое преобразование указанными измерениями в указанном порядке.

TranslateTransform(Single, Single)

Преобразует локальное геометрическое преобразование указанными измерениями. Этот метод предопределен преобразованием.

Применяется к