C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C#中GraphicsPath的Warp方法

C#中GraphicsPath的Warp方法用法实例

作者:zhuzhao

这篇文章主要介绍了C#中GraphicsPath的Warp方法用法,实例分析了Warp方法的相关使用技巧,需要的朋友可以参考下

本文实例讲述了C#中GraphicsPath的Warp方法用法。分享给大家供大家参考。具体实现方法如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
namespace advanced_drawing
{
  public partial class Form13 : Form
  {
    public Form13()
    {
      InitializeComponent();
    }
    private void Form13_Paint(object sender, PaintEventArgs e)
    {
      // Create a path and add a rectangle.
      GraphicsPath myPath = new GraphicsPath();
      RectangleF srcRect = new RectangleF(0, 0, 100, 200);
      myPath.AddRectangle(srcRect);
      // Draw the source path (rectangle)to the screen.
      e.Graphics.DrawPath(Pens.Black, myPath);
      // Create a destination for the warped rectangle.
      PointF point1 = new PointF(200, 200);
      PointF point2 = new PointF(400, 250);
      PointF point3 = new PointF(220, 400);
      PointF[] destPoints = { point1, point2, point3 };
      // Create a translation matrix.
      Matrix translateMatrix = new Matrix();
      translateMatrix.Translate(100, 0);
      // Warp the source path (rectangle).
      myPath.Warp(destPoints, srcRect, translateMatrix,
        WarpMode.Perspective, 0.5f);
      // Draw the warped path (rectangle) to the screen.
      e.Graphics.DrawPath(new Pen(Color.Red), myPath);
    }
  }
}

希望本文所述对大家的C#程序设计有所帮助。

您可能感兴趣的文章:
阅读全文