我已经用自己的ImageIO实现替换了Java内部ImageFetcher。我们软件的一些图像渲染器使用这些图像,现在绘制抗锯齿缩放图像,而不是非抗锯齿图像。唯一的变化是图像的来源,现在是BufferedImages而不是Toolkit-Images。
现在的问题是,区别在哪里?哪个属性会导致图像缩放抗锯齿?我一直认为抗锯齿键只依赖于我在其上绘制的图形-但这显然是错误的。
顺便说一下:不幸的是,我不能改变渲染器。
发布于 2009-12-17 22:59:41
好的,毕竟有一个重要的区别: BufferedImages是RenderedImages,ToolkitImages不是。在某些情况下,这可能会导致不一致的行为,但一般来说,这似乎不是Java问题。
发布于 2009-12-30 11:17:26
正如@Ichorus指出的那样,如果ImageIO.read做了任何反锯齿,这可能是一个特定于平台的问题,因为ImageIO.read没有指定任何关于缩放或反锯齿的预期行为。
在发出g.drawImage或类似命令之前,您可以尝试修改Graphics2D上下文的呈现提示。
http://bit.ly/7b6lvg <-- Graphics2D.setRenderingHint上的Java Sun文档
https://stackoverflow.com/questions/1922148
复制相似问题