Data uri 如何构造不使用(有损)画布的图像/png数据url

Data uri 如何构造不使用(有损)画布的图像/png数据url,data-uri,steganography,imagedata,Data Uri,Steganography,Imagedata,在浏览器中,我想读入一个png文件,获取它的数据,修改它,然后把它写出来。(隐写术使用) 数据基本上与Canvas imageData相同:宽度、高度整数和图像像素的UINT8数组(每个4字节) 由于alpha预乘,我不能使用各种画布特技。因此,我想直接从我拥有的数据创建一个dataUrl 我试着简单地制作一个新的uint8数组,由4个宽度字节、4个高度字节和数据字节组成,并使用明显的“data:image/png;base64,“+btoa字符串化UINT8数组的base64 我使用了两个像素

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

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

由于alpha预乘,我不能使用各种画布特技。因此,我想直接从我拥有的数据创建一个dataUrl

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

我使用了两个像素的数据,然后将其与具有相同数据的canvas.toDataURL()进行了比较。为了避免失真,我使用了255的alpha

由此产生的两个DataURL Base64不相同。显然,base64中包含了元数据或类似的差异

那么,有没有一种方法可以像这样“手工”创建一个image/png数据URL