如何在Graphics32库中绘制矢量圆角矩形?这可能吗?
How to draw Vector rounded rectangle in Graphics32 library? Is this possible?
如何在 Graphics32 库中绘制矢量 rounded rectangle?这可能吗?
不是光栅,应该是矢量。
Graphics32 是一个光栅图像库。它的主要图像类型是 TBitmap32
,这是一个光栅图像。它没有矢量图像功能。
如果您进行网络搜索,您会找到一个名为 G32_Interface 的单元,其中包含用于绘制真实字体、贝塞尔曲线、椭圆和旋转椭圆、圆角多边形和样条曲线的例程。它的作者是Roman Gudchenko。
还要检查这个 link draw antialiased rounded rectangle
主干(SVN)中的最新代码包含VPR矢量图形引擎。它仍然处于测试阶段,但已经有好几年了。有了这个,你可以很容易地画出一个圆角矩形:
uses
GR32, GR32_Polygons, GR32_VectorUtils;
[...]
var
Points: TArrayOfFloatPoint;
begin
Points := RoundRect(Rect(RectLeft, RectTop, RectRight, RectBottom), Radius);
PolyPolygonFS(MyBitmap32, Points, Color32);
end;
其中 RectLeft、RectTop、Radius、Color32 必须由用户指定。
如何在 Graphics32 库中绘制矢量 rounded rectangle?这可能吗?
不是光栅,应该是矢量。
Graphics32 是一个光栅图像库。它的主要图像类型是 TBitmap32
,这是一个光栅图像。它没有矢量图像功能。
如果您进行网络搜索,您会找到一个名为 G32_Interface 的单元,其中包含用于绘制真实字体、贝塞尔曲线、椭圆和旋转椭圆、圆角多边形和样条曲线的例程。它的作者是Roman Gudchenko。
还要检查这个 link draw antialiased rounded rectangle
主干(SVN)中的最新代码包含VPR矢量图形引擎。它仍然处于测试阶段,但已经有好几年了。有了这个,你可以很容易地画出一个圆角矩形:
uses
GR32, GR32_Polygons, GR32_VectorUtils;
[...]
var
Points: TArrayOfFloatPoint;
begin
Points := RoundRect(Rect(RectLeft, RectTop, RectRight, RectBottom), Radius);
PolyPolygonFS(MyBitmap32, Points, Color32);
end;
其中 RectLeft、RectTop、Radius、Color32 必须由用户指定。