使用 Mapnik 的高分辨率图像
High resolution image with Mapnik
我使用 Mapnik 2.2.0 从我的 Java 库中使用 Mapnik JNI 渲染地图。这工作正常,没有问题。我现在正在尝试以高分辨率提供地图。
我将代码中的图像大小从 256x256 更改为 512x512。这导致 Mapnik 更改有效缩放级别,因为比例已更改。例如,当渲染 15/5000/10000 时,我看到一个 512x512 的图像和我的缩放 16 样式。
我想要的是一张和我原来的256x256图片坐标相同,样式相同,只有512x512的图片。
我发现了一个可能相关的参数:
<Parameter name="scale">2</Parameter>
其中 2 应该是我需要的因子。但是它对渲染图像没有任何影响,所以我可能看错了方向。
原来我使用的是 Mapnik JNI renderAgg 签名:
renderAgg(MapDefinition map, Image image)
将比例因子设置为 1.0。当我改成这个签名时:
renderAgg(MapDefinition map, Image image, double scaleFactor, int offsetX, int offsetY)
比例因子生效
我使用 Mapnik 2.2.0 从我的 Java 库中使用 Mapnik JNI 渲染地图。这工作正常,没有问题。我现在正在尝试以高分辨率提供地图。
我将代码中的图像大小从 256x256 更改为 512x512。这导致 Mapnik 更改有效缩放级别,因为比例已更改。例如,当渲染 15/5000/10000 时,我看到一个 512x512 的图像和我的缩放 16 样式。
我想要的是一张和我原来的256x256图片坐标相同,样式相同,只有512x512的图片。
我发现了一个可能相关的参数:
<Parameter name="scale">2</Parameter>
其中 2 应该是我需要的因子。但是它对渲染图像没有任何影响,所以我可能看错了方向。
原来我使用的是 Mapnik JNI renderAgg 签名:
renderAgg(MapDefinition map, Image image)
将比例因子设置为 1.0。当我改成这个签名时:
renderAgg(MapDefinition map, Image image, double scaleFactor, int offsetX, int offsetY)
比例因子生效