问题很简单,但是我在任何地方都找不到文档。如何告诉canvas.toDataURL()将文件另存为PNG-8?
thumbnail = canvas.toDataURL();我知道我可以通过"image/jpeg“得到一个jpeg,但是PNG-8怎么样呢?
发布于 2017-03-17 12:59:22
目前,在任何主流浏览器中都没有通用的内置方法来生成带调色板索引的PNG。浏览器只有required to support basic PNG、24位位图和alpha。
虽然,它们可以自由地支持任何他们想要的附加格式,但它们不太可能偏离跨浏览器兼容的格式(存在一些例外,但不太常用,如Safari中的TIFF,Firefox中的ICO )。
然而,要想在今天工作,您需要提取像素,将颜色量化到调色板中,然后编译文件,格式化位图,对其进行编码和压缩-然后将其保存出来。这是可行的,但它本身就是一个项目。
可以选择查看服务,如TinyPNG I'm not affiliated。他们提供了一个API,可以用来以编程方式发送普通的PNG,并最小化了返回的PNG,通常意味着"PNG8“。
https://stackoverflow.com/questions/42818725
复制相似问题