php - 将图像转换为 png,然后再转换为原始类型 - Laravel,PHP
问题描述
我在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);
解决方案
推荐阅读
- phpstorm - 如何找到比 X 行更长的所有函数?
- c# - 如何使用 Wix# 将构建文件夹的所有内容添加到安装中?
- ios - 在 iOS 设备上拖动后抬起手指时,如何修复 GestureDetector.onScaleUpdate 中的偏移偏移?
- laravel - Laravel - {"exception":"[object] (InvalidArgumentException(code: 0): Driver [bugsnag] is not supported
- python - 当我使用 Process.Start(*vscode.exe-path*, *file path*) 打开文件时,文件为空
- apache-spark - EMR 6.3 Spark 3.1.1 资源文件 MalformedInputException
- python - 支持 SCTP 的 Twisted Reactor 的替代方案?或者使用套接字允许类似功能的方法?
- cassandra - 无法将集群连接到 opscenter
- react-native - unmountOnBlur 时没有清理路由
- postgresql - POSTGRESQL 从 jsonb 中提取密钥