我正在使用laravel中的图像干预来上传图像(jpg,bmp,gif)并将其转换为PNG类型,上传后png图像可以发送给另一个用户。接收图像的用户然后将该PNG图像转换回原始上传类型。
例如我正在上传大小为1.5MB的JPG图片,上传并转换为PNG后它的大小为5MB。当收到该png图像的用户将其转换回原始JPG类型时,转换后JPG图像的大小为850KB(而不是1.5MB)。问题是当图像转换回原始类型时,尺寸不一样。有没有办法在转换为png之前转换图像并获得相同的大小?
1.5MB(JPG) - > PNG - > 850KB ??(JPG)
转换为png: $ png_image =(string)Img :: make($ image) - > encode(' png');
转换回原始类型: $ originalImage =(string)Img :: make($ png_image_path) - > encode($ extension,100);