微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何构建一个没有有损画布使用的图像/png 数据 url

如何解决我如何构建一个没有有损画布使用的图像/png 数据 url

在浏览器中,我想读入一个 png 文件获取它的数据,修改它,然后将它写回。 (隐写术使用)

数据与Canvas imageData 基本相同:宽度、高度整数和一个图像像素的Uint8Array(每个4字节)

由于 alpha 预乘,我无法使用各种 Canvas 特技。所以我想直接从我拥有的数据中创建一个 dataUrl。

我尝试简单地制作一个由 4 个宽度字节、4 个高度字节和数据字节组成的新 Uint8Array,并使用字符串化 Uint8Array 的明显的“data:image/png;base64,”+ btoa base64。

我用两个像素的数据做这件事,然后将它与具有相同数据的 canvas.toDataURL() 进行比较。我使用 255 的 alpha 来避免失真。

生成的两个 dataUrls base64 不一样。显然base64中包含元数据或一些类似的差异。

那么有没有办法像这样“手动”创建图像/png dataURL?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。