delphi - 如何在 Delphi (FireMonkey) 中更改画布 FillMode
问题描述
请看一下 FireMonkey 中的这个 TPathData ,它包含两个子路径:第一个是外部矩形,第二个是第一个内部的另一个矩形:
TmpPathData := TPathData.Create;
TmpPathData.Data := 'M1,1 H100 V100 H1 Z M30,30 H70 V70 H30 Z';
然后我想在 Bitmap 上填充这个路径,所以:
TmpBmp := TBitmap.Create(200, 200);
TmpBmp.Canvas.Fill.Kind := TBrushKind.Solid;
TmpBmp.Canvas.Fill.Color := TAlphaColors.Blue;
TmpBmp.Canvas.BeginScene;
TmpBmp.Canvas.FillPath(TmpPathData, 1);
TmpBmp.Canvas.EndScene;
结果是这样的:
但我想得到这个:
所以:如何将 FireMonkey 中的 FillMode 从“Alternate”更改为“Winding”。
注意:我使用的是 Delphi 10.3.3
解决方案
推荐阅读
- regex - 仅当不是超链接的一部分时才匹配正则表达式
- c# - 使用 PathGradientBrush 创建的阴影显示了不想要的刺结果
- django - 我如何加载带有初始数据的表单?
- python - 检查是否通过 cmd 和 python 进行了正确的安装
- mysql - 如何根据另一个表的字段进行查询?
- docker - 如何部署war并使用docker运行
- c - 如何在没有内存泄漏的情况下删除 C 中的前导/尾随空格
- python - 熊猫数据框:每批行的操作
- jquery - 如果绑定到 ajax 请求,则指向 tel 的 href 链接不起作用
- javascript - 我对“for”做错了什么