gpt4 book ai didi

java - JMapFrame 中的渲染质量

转载 作者:太空宇宙 更新时间:2023-11-04 14:20:10 26 4
gpt4 key购买 nike

我想提高 JMapFrame 中的渲染质量

    this.Map = new MapContent();

this.MainWindow = new JMapFrame(this.Map);

// rendering START
GTRenderer renderer = this.MainWindow.getMapPane().getRenderer();

java.util.Map<Object, Object> hints = renderer.getRendererHints();

hints.put(RenderingHints.KEY_RENDERING,RenderingHints.VALUE_RENDER_QUALITY);
hints.put(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
hints.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
hints.put(RenderingHints.KEY_DITHERING, RenderingHints.VALUE_DITHER_ENABLE);
hints.put(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
hints.put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
hints.put(RenderingHints.KEY_COLOR_RENDERING, RenderingHints.VALUE_COLOR_RENDER_QUALITY);

renderer.setRendererHints(hints);

this.MainWindow.getMapPane().setRenderer(renderer);
// rendering END

有或没有代码的渲染质量没有区别//渲染开始//渲染结束

最佳答案

看来您正在将 Java2D 提示传递给渲染器而不是图形。来自 JavaDocs

      Rectangle paintArea = new Rectangle(width, height);
ReferencedEnvelope mapArea = map.getBounds();

renderer = new StreamingRenderer();
renderer.setContext(map);

RenderingHints hints = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON );
renderer.setJava2DHints(hints);

Map rendererParams = new HashMap();
rendererParams.put("optimizedDataLoadingEnabled",new Boolean(true) );

renderer.setRendererHints( renderParams );

renderer.paint(graphic, paintArea, mapArea);

关于java - JMapFrame 中的渲染质量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27286920/

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