diff --git a/examples/d3.js b/examples/d3.js index b5c9daaca9..9ca323ad01 100644 --- a/examples/d3.js +++ b/examples/d3.js @@ -38,11 +38,13 @@ d3.json('data/us.json', function(error, us) { * This function uses d3 to render the topojson features to a canvas. * @param {ol.Extent} extent Extent. * @param {number} resolution Resolution. + * @param {number} pixelRatio Pixel ratio. * @param {ol.Size} size Size. * @param {ol.proj.Projection} projection Projection. * @return {HTMLCanvasElement} */ - var canvasFunction = function(extent, resolution, size, projection) { + var canvasFunction = function(extent, resolution, pixelRatio, + size, projection) { var canvasWidth = size[0]; var canvasHeight = size[1]; diff --git a/src/ol/canvasfunction.js b/src/ol/canvasfunction.js index 878d79645c..202952effa 100644 --- a/src/ol/canvasfunction.js +++ b/src/ol/canvasfunction.js @@ -2,7 +2,7 @@ goog.provide('ol.CanvasFunctionType'); /** - * @typedef {function(this:ol.source.ImageCanvas, ol.Extent, number, ol.Size, - * ol.proj.Projection): HTMLCanvasElement} + * @typedef {function(this:ol.source.ImageCanvas, ol.Extent, number, + * number, ol.Size, ol.proj.Projection): HTMLCanvasElement} */ ol.CanvasFunctionType; diff --git a/src/ol/source/imagecanvassource.js b/src/ol/source/imagecanvassource.js index 478a4c00d6..35e7e5c1f1 100644 --- a/src/ol/source/imagecanvassource.js +++ b/src/ol/source/imagecanvassource.js @@ -65,12 +65,13 @@ ol.source.ImageCanvas.prototype.getImage = var height = (extent[3] - extent[1]) / resolution; var size = [width * pixelRatio, height * pixelRatio]; - var canvasElement = this.canvasFunction_(extent, resolution, size, - projection); - canvas = new ol.ImageCanvas(extent, resolution, pixelRatio, - this.getAttributions(), canvasElement); + var canvasElement = this.canvasFunction_( + extent, resolution, pixelRatio, size, projection); + if (!goog.isNull(canvasElement)) { + canvas = new ol.ImageCanvas(extent, resolution, pixelRatio, + this.getAttributions(), canvasElement); + } this.canvas_ = canvas; return canvas; - };