我正在重写之前在一个大 Canvas ( a fullscreen wallboard ) 上手动布局和渲染的应用程序以使用 Swing,但我在渲染文本和缩放图像时遇到了一些质量问题。
在旧应用程序中,我的渲染方法只是在绘制整个屏幕之前启用了 Graphics2D
对象上的一些设置:
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
但在新版本中,绘图分布在各个组件上,没有 1 个根方法。那么我怎样才能在 Swing 中做同样的事情呢?
最佳答案
我相信所有子组件都从其父组件获取其 Graphics 对象。因此,如果您在其 paint
方法(如果父组件不需要设置其渲染提示,则在其 paintChildren
方法)中设置父 Graphics 对象的渲染提示然后调用 super 方法,它可能会起作用。您不会希望对整个 GUI 执行此操作,因为它会减慢渲染速度。
关于java - Swing 中 AA 和插值的全局渲染提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8954121/