类 Pen

Pen class

定义用于绘制直线、曲线和图形的对象。

public class Pen : TransparencySupporter

构造函数

名称描述
Pen(Brush)使用指定的 Brush 初始化 Pen 类的新实例。
Pen(Color)使用指定的颜色初始化 Pen 类的新实例。
Pen(Brush, float)使用指定的 BrushWidth 初始化 Pen 类的新实例。
Pen(Color, float)使用指定的 ColorWidth 属性初始化 Pen 类的新实例。

属性

名称描述
Alignment { get; set; }获取或设置此 Pen 的对齐方式。
Brush { get; set; }获取或设置决定此 Pen 属性的 Brush
Color { get; set; }获取或设置此 Pen 的颜色。
CompoundArray { get; set; }获取或设置指定复合笔的值数组。复合笔绘制由平行线和间隔组成的复合线。
CustomEndCap { get; set; }获取或设置使用于此 Pen 绘制的线条末端的自定义帽。
CustomStartCap { get; set; }获取或设置使用于此 Pen 绘制的线条起始端的自定义帽。
DashCap { get; set; }获取或设置此 Pen 绘制的虚线中破折号末端使用的帽样式。
DashOffset { get; set; }获取或设置从线条起点到破折号模式起始的距离。
DashPattern { get; set; }获取或设置自定义破折号和间隔的数组。
DashStyle { get; set; }获取或设置此 Pen 绘制的虚线使用的样式。
EndCap { get; set; }获取或设置此 Pen 绘制的线条末端使用的帽样式。
LineJoin { get; set; }获取或设置此 Pen 绘制的两条连续线条端点的连接样式。
MiterLimit { get; set; }获取或设置斜接角连接处厚度的限制。
Opacity { get; set; }获取或设置对象的不透明度。该值应在 0 到 1 之间。0 表示对象完全可见,1 表示对象完全不透明。
PenType { get; }获取此 Pen 绘制的线条样式。
StartCap { get; set; }获取或设置此 Pen 绘制的线条起始端使用的帽样式。
Transform { get; set; }获取或设置此 Pen 的几何变换的副本。
Width { get; set; }获取或设置此 Pen 的宽度,单位为用于绘图的 Graphics 对象的单位。

方法

名称描述
override Equals(object)检查对象是否相等。
override GetHashCode()获取当前对象的哈希码。
MultiplyTransform(Matrix)将此 Pen 的变换矩阵乘以指定的 Matrix
MultiplyTransform(Matrix, MatrixOrder)按指定顺序将此 Pen 的变换矩阵乘以指定的 Matrix
ResetTransform()将此 Pen 的几何变换矩阵重置为单位矩阵。
RotateTransform(float)按指定角度旋转本地几何变换。此方法将在变换前置旋转。
RotateTransform(float, MatrixOrder)按指定顺序以指定角度旋转本地几何变换。
ScaleTransform(float, float)按指定因子缩放本地几何变换。此方法将在变换前置缩放矩阵。
ScaleTransform(float, float, MatrixOrder)按指定顺序以指定因子缩放本地几何变换。
SetLineCap(LineCap, LineCap, DashCap)设置决定此 Pen 绘制的线条结束时使用的帽样式的值。
TranslateTransform(float, float)按指定尺寸平移本地几何变换。此方法将在变换前置平移。
TranslateTransform(float, float, MatrixOrder)按指定顺序使用指定的维度平移局部几何变换。

示例

此示例展示了 Pen 对象的创建和使用。示例创建了一个新的 Image 并在图像表面绘制矩形。

[C#]

//创建 BmpOptions 的实例并设置其各种属性
Aspose.Imaging.ImageOptions.BmpOptions bmpOptions = new Aspose.Imaging.ImageOptions.BmpOptions();
bmpOptions.BitsPerPixel = 24;

//创建 FileCreateSource 的实例并将其指定为 BmpOptions 实例的 Source
//第二个 Boolean 参数决定要创建的文件是否为 IsTemporal
bmpOptions.Source = new Aspose.Imaging.Sources.FileCreateSource(@"C:\temp\sample.bmp", false);

//在指定路径创建 Image 的实例
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(bmpOptions, 500, 500))
{
    //创建 Graphics 的实例并使用 Image 对象进行初始化
    Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(image);

    //使用白色清除 Graphics 表面
    graphics.Clear(Aspose.Imaging.Color.White);

    //创建颜色为 Red、宽度为 5 的 Pen 实例
    Aspose.Imaging.Pen pen = new Aspose.Imaging.Pen(Aspose.Imaging.Color.Red, 5f);

    //创建 HatchBrush 的实例并设置其属性
    Aspose.Imaging.Brushes.HatchBrush brush = new Aspose.Imaging.Brushes.HatchBrush();
    brush.BackgroundColor = Aspose.Imaging.Color.Wheat;
    brush.ForegroundColor = Aspose.Imaging.Color.Red;

    //创建 Pen 的实例
    //使用 HatchBrush 对象和宽度进行初始化
    Aspose.Imaging.Pen brusedpen = new Pen(brush, 5);

    //通过指定 Pen 对象绘制矩形
    graphics.DrawRectangles(pen, new[]
    {
        new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(210, 210), new Aspose.Imaging.Size(100, 100)),
        new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(110, 110), new Aspose.Imaging.Size(100, 100)),
        new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(310, 310), new Aspose.Imaging.Size(100, 100))
    });

    //通过指定 Pen 对象绘制矩形
    graphics.DrawRectangles(brusedpen, new[]
    {
        new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(310, 110), new Aspose.Imaging.Size(100, 100)),
        new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(110, 310), new Aspose.Imaging.Size(100, 100))
    });

    // 保存所有更改。
    image.Save();
}

另请参见