javascript – Node-Canvas图像抗锯齿似乎不起作用
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – Node-Canvas图像抗锯齿似乎不起作用,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1435字,纯文字阅读大概需要3分钟。
内容图文
![javascript – Node-Canvas图像抗锯齿似乎不起作用](/upload/InfoBanner/zyjiaocheng/732/c82514f5c2ba436bb0c99037c2fd4bef.jpg)
我正在尝试使用node.js和node-canvas包生成动画文件,逐帧提取.动画的一部分包括缩放和移动图像.我的问题是,似乎没有发生反锯齿,尽管根据node-canvas和cario(画布背后的图形库),默认情况下应该进行抗锯齿处理.此外,可以使用此systex ctx.antialias =’gray’来控制according to node-canvas抗锯齿,但它似乎也没有做任何事情.
如果有任何更多细节我可以提供,可能会有所帮助,请告诉我.
有没有办法,直接使用node-canvas甚至cairo为图像转换添加抗锯齿?
附:我正在使用ctx.drawImage方法绘制图像,我已经尝试过使用patternQuality =’best’;没有成功.
解决方法:
升级模式时,cairo默认使用双线性插值,这看起来应该合理.但是,当缩小时,cairo目前(截至1.12.14)没有正确的抗锯齿模式.没有办法得到这个,没有实际将功能添加到cairo本身,但请参阅下面的潜在解决方法.
cairo中的“antialias”设置控制光栅化形状和文本的抗锯齿,而不是模式.控制模式抗锯齿的设置称为“cairo_pattern_set_filter”,并具有以下值:
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.
内容总结
以上是互联网集市为您收集整理的javascript – Node-Canvas图像抗锯齿似乎不起作用全部内容,希望文章能够帮你解决javascript – Node-Canvas图像抗锯齿似乎不起作用所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。