没有插值的位图上的Firemonkey绘图

时间:2013-12-29 16:42:50

标签: delphi firemonkey firemonkey-fm2 firemonkey-fm3

我使用画布绘制函数drawrect和filltext绘制到Tbitmap但我不希望结果抗锯齿。有谁知道怎么做?

使用OSX和Delphi XE3(但如果需要,可以使用XE4和XE5)

2 个答案:

答案 0 :(得分:1)

问题是:

  1. 您创建的位图似乎在数据中存在抗锯齿?
  2. 或者你有一个好的位图,并希望在查看器/显示器中禁用消除锯齿?
  3. 如果是前者,您是否检查过抗锯齿实际存在于位图中,而不是由您的查看器引入?

    过去我发现绘制黑白测试图案很有用,并以1:1的比例显示图像。 Irfanview是一个很好的工具,以“真实”的规模观看。然后使用放大镜/峰值/镜头来获得实际像素的特写。

    黑白测试模式特别好,因为你应该能够看到(希望)当没有反对的存在时,R,G和B子像素都被均等照亮。如果你绘制一个黑色的白色图案,你得到单独的明亮子像素,那么你肯定会有反对(或其他形式的腐败!)。

    我的经验是图像查看器经常为您进行插值,除非您查看实际的位图数据或近距离查看未缩放的图像,否则查看正在发生的事情可能会很棘手... < / p>

答案 1 :(得分:0)

您好在drawBitmap方法中需要将HighSpeed参数设置为“True”,如下例所示:

NewBitmap.Canvas.DrawBitmap(SmallBmp, RectF(0, 0, SmallBmp.Width, SmallBmp.Height), RectF(0, 0, NewBitmap.Width, NewBitmap.Height), 1,**True**);

RGDS 伊万