如何使用一个SVG图像作为层(所以不作为地图标记)与的OpenLayers-3我怎样才能上的OpenLayers-3
我无法得到的任何输出使用SVG图像作为层当使用ol.source.Vector
和ol.format.Feature
实例中的任何一个时,显示我的SVG图像。
小例子:(?)
var mapLayer = new ol.layer.Vector({
source: new ol.source.Vector({
url: 'image.svg',
format: new ol.format.Feature() // http://openlayers.org/en/v3.12.1/apidoc/ol.format.Feature.html
}),
});
我能够使用ImageStatic层时得到输出,但这种使用/生成静态图像,从而SVG的优点消失了。
例子:
// Not sure if I need this for SVG, but is is required for an image
var extent = [0, 0, 1000, 1000]; // random image size
var projection = new ol.proj.Projection({
code: 'test',
units: 'pixels',
extent: extent
});
var mapLayer = new ol.layer.Image({
source: new ol.source.ImageStatic({
url: 'image.svg',
projection: projection,
imageExtent: extent
})
});
我已经尝试过的伎俩与设置Content-type:
到image/svg+xml
但这并没有帮助我。
所以,再次: 我如何(如果可能)使用OpenLayers-3的SVG图像?
我很好奇,你怎么会想使用SVG的不是静态图像等优点,? – PSorey
嗯,对我的想法(如果我错了,请纠正我)我应该可以添加一个“可缩放”的SVG图层,所以即使放大图像也不会变得像素化并保持清晰。我们倾向于将它用于平面布局图,所以SVG(或者其他矢量格式)会很好。当然静态图像仍然可以使用,但是放大后总是会变得模糊不清。 – Matthijs
我自己也在跟OL3进行速度攀升,并一直在想SVG。我还需要在基础图层上绘制类似于CAD的矢量图,并且从我读过的评论中可能还不支持SVG?但是你可以使用Point,LineString和Polygon类型来制作一个可缩放的图层。我将尝试[ogr2ogr将DXF转换为GeoJSON。](http://ogre.adc4gis.com/) – PSorey