首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Node-Canvas图像反走样似乎不起作用

Node-Canvas图像反走样似乎不起作用
EN

Stack Overflow用户
提问于 2013-02-07 18:13:09
回答 1查看 1.5K关注 0票数 3

我的问题是,虽然根据node-canvas和cario (画布背后的图形库),默认情况下应该执行反走样,但似乎没有发生反走样。此外,可以使用这个systex ctx.antialias = 'gray';来控制according to node-canvas抗锯齿,但它似乎也不能做任何事情。有没有办法直接使用node-canvas甚至cairo来为图像转换添加抗锯齿功能?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-14 16:08:01

当放大模式时,cairo默认使用双线性插值,这看起来应该是合理的。但是,在缩小比例时,cairo当前(从1.12.14起)不能正确使用抗锯齿模式。除了将该功能实际添加到cairo本身之外,没有办法做到这一点,尽管请参阅下面的潜在解决方法。

cairo中的“抗锯齿”设置控制光栅化形状和文本的抗锯齿,而不是模式。控制patterns抗锯齿的设置称为'cairo_pattern_set_filter‘,具有下列值:

代码语言:javascript
复制
CAIRO_FILTER_FAST,             // usually the same as NEAREST
CAIRO_FILTER_GOOD,             // usually the same as BILINEAR
CAIRO_FILTER_BEST,             // usually the same as BILINEAR
CAIRO_FILTER_NEAREST,          // for upscaling, this is pixel-replication
CAIRO_FILTER_BILINEAR,         // for upscaling, this is linear interpolation
CAIRO_FILTER_GAUSSIAN          // not implemented, should not be used

但正如前面提到的,它们都不能很好地缩小规模。

一些人使用的一种解决方法是将图像按2步缩小。也就是说,将图像缩小到两个维度的一半,直到它大致达到所需的大小。然后,可以将该缩小的图像与缩小到2以下的修改后的变换一起使用。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14748536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档