查了点资料,总结为:
浏览器会解码不同格式的图片为位图
这是正确的吗?
关于加载浏览器不支持的图片格式
使用: Electron
通信协议: grpc
- 我可以先把获取到的未支持格式图片(比如jxl)用后端服务解码(比如golang)后在返回给浏览器对吗?
- 浏览器如何使用解码的图片数据?
- 图片很大的话,如何实现先显示一张完整的预览图,再慢慢变得清晰?
谢谢
查了点资料,总结为:
浏览器会解码不同格式的图片为位图
这是正确的吗?
关于加载浏览器不支持的图片格式
使用: Electron
通信协议: grpc
谢谢
是的,浏览器会解码不同格式的图片为位图。浏览器本身并不能理解所有的图片格式,但它可以解析并显示多种不同的图片格式,如 JPEG、PNG、GIF 等。当浏览器遇到一个它不理解的图片格式时,它会使用一个叫做解码器(decoder)的库来将图片数据转换为位图(bitmap),这是一种可以被浏览器理解的图片格式。
针对你的其他问题:
是的,你可以在后端服务中解码非浏览器支持的图片格式,然后以浏览器可以理解的格式(如PNG或JPEG)返回。你可以使用各种编程语言来实现这个过程,包括但不限于Go。
当浏览器接收到解码后的图片数据后,它会将这些数据解析为位图,然后在网页上显示出来。
这通常可以通过实现渐进式加载(progressive loading)或渐进式渲染(progressive rendering)来实现。在这种情况下,你会先发送一个低分辨率或较小的图像版本(即预览图),然后随着数据的逐步加载,图像会逐渐变得更加清晰。这可以通过各种方式实现,包括在服务器端实现,或者使用JavaScript在客户端实现。例如,你可以使用HTML5的canvas元素和JavaScript来动态地调整图像的尺寸和质量。
2 回答2.6k 阅读✓ 已解决
1 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读
3.7k 阅读
2 回答804 阅读
1 回答845 阅读
1 回答470 阅读