问题描述
在浏览器中,我想读入一个 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 (将#修改为@)