gpt4 book ai didi

java - BufferedImage 的 getSubimage 性能

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:20:32 25 4
gpt4 key购买 nike

我正在开发 Java 2D 渲染程序(在 1.6.0_11 上运行),它使用外部图像进行 UI 渲染。这些大图像同时包含多个 UI 图形部分,我现在使用 BufferedImage.getSubimage() 提取它们。假设一个普通的桌面系统(我们没有启用 DirectX/OpenGL 加速),我的问题是:

  • getSubimage() 是一种内存高效调用,因为它共享底层图像数据,但这是否会影响使用 Graphics2D.drawImage() 渲染这些子图像的速度?
  • 如果图像使用每像素 8 位调色板模式,使用 RGBA 模式(例如 4 倍内存)或依赖调色板颜色模型(例如转换时间)的 yield /损失是多少?

最佳答案

据我所知,getSubimage(...) 应该不会对渲染产生任何重大影响。

转换图像数据很慢,通常最好避免即时进行。


图像缓慢可以分为两类:

  • 磁盘输入/输出
  • 数据处理

磁盘 I/O 很容易成为最慢的部分。

如果您打算只使用图像的一部分,最好只能从磁盘加载图像的一部分。

我的经验是JAI比标准库的东西更擅长只做真正需要的事情。

关于java - BufferedImage 的 getSubimage 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/500484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com