【问题标题】:How to enable android antialiasing in java canvas?如何在 Java 画布中启用 android 抗锯齿功能?
【发布时间】:2014-09-13 20:45:48
【问题描述】:

我们在用 java 绘制漂亮和平滑的图像时遇到了问题,因为它们是锯齿状的。 这段代码解决了我们的问题:

g2d.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);

但现在我们正在为安卓应用制作相同的应用,但我们不知道如何将类似的插值或抗锯齿应用于安卓应用。

(我们使用eclipse模拟器)

【问题讨论】:

    标签: android image canvas paint antialiasing


    【解决方案1】:

    使用 Paint 对象。

    1. 创建一个Paint对象p

    2. 设置p.setFilterBitmap(true)

    3. Canvas 的绘制方法中传递p 的绘制方法

    这将激活(双线性)过滤,以平滑位图的“内容”。您也可以尝试使用Paint.setAntiAlias(true) 激活抗锯齿功能,但这只会影响位图的外边缘(不过对于文本来说非常方便)。

    【讨论】:

    • 谢谢,但我究竟如何传递油漆 p 和其他东西? “在 Canvas 的绘制方法中传递油漆 p”
    • onDraw(Canvas canvas) 中,您可以执行以下操作:canvas.drawBitmap(mBitmap, 0.f, 0.f, mPaint)
    • 谢谢。 setFilterBitmap 是我一直在寻找的,因为 setAntiAlias 对(我的)图像几乎没有影响..
    猜你喜欢
    • 2019-05-13
    • 2017-03-09
    • 1970-01-01
    • 2011-08-27
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    • 2010-09-15
    • 2018-04-01
    相关资源
    最近更新 更多