1

我知道两种方法:

  1. 使用 .line、.circle 等方法
  2. 使用 bitblt
  3. PaintPicture(从未使用过;在 google 上找到)

还有其他人吗?

使用某个系统相对于另一个系统有什么优势?(速度、抗锯齿等)

4

1 回答 1

4

Line 和 Circle 用于矢量图形。Line 绘制线条、矩形和正方形。Circles 绘制椭圆和圆形。您可以控制这些方法是轮廓还是填充、线宽以及前景和背景颜色。

BitBlt 是一个 Win32 API 调用(不是内置的 VB 功能),它允许您将位图写入设备上下文(PictureBox 具有)。有许多不同的模式允许您将正在绘制的背景的像素与图形的像素进行交互)。

PaintPicture() 方法本质上是一个围绕 BitBlt 的 COM 包装器,位图句柄被替换为 Picture 对象。

还有PSet,它只是简单的在屏幕上的指定位置画一个点。而且我想您还可以包括 Print,它允许您绘制文本(可能包含图形字体)。

如果您使用 Win32 API,还有许多其他图形函数可用于绘制其他形状,例如圆弧、多边形和贝塞尔曲线。但是,它们通常比内置的 VB 方法更难使用。

至于一个比另一个的优势,基本上是:

  • VB 特性 vs. Win32 API 特性:易用性 vs. 功耗
  • 矢量图形与位图图形:更灵活,但需要更多编程而不是简单,但使用更多内存。
于 2012-07-04T00:37:39.320 回答