【Rust日报】2024-11-05 image 0.25.5 大幅改进了对AVIF图像格式的解码能力
💡
原文中文,约1100字,阅读约需3分钟。
📝
内容提要
文章介绍了图像解码能力的显著提升,特别是对AVIF格式的支持,修复了多个解码错误,并提出了新的Pin提案MinPin,旨在以最小破坏性集成Pin,同时保持向后兼容性。
🎯
关键要点
- 图像解码能力显著提升,特别是对AVIF格式的支持。
- 现在支持10位和12位AVIF图像,并修复了多个解码错误。
- rayon特性可以正确切换AVIF编码时的并行处理。
- EXR格式暂时不支持并行处理以避免破坏向后兼容性。
- 识别极少使用的'.jfif'作为JPEG文件扩展名。
- AVIF解码仍依赖于C语言库dav1d,未来希望迁移至rav1d。
- MinPin是一个新的Pin提案,旨在以最小破坏性集成Pin,同时保持向后兼容性。
- MinPin设计决策包括使用pinned关键字和修改Drop trait。
- 对于实现了Unpin的字段类型,始终允许投影。
- 未实现Unpin的字段类型的投影规则取决于结构体的实现情况。
- 引入struct Unpinnable,始终实现Unpin。
- 文章列出了一些设计原则,如Pin是语言的一部分、应有零概念成本等。
- 作者回答了一些常见问题,比较MinPin与UnpinCell提案的异同。
➡️