0
构建谷歌地图标记我有以下fonction,即得到一个图像作为参数:使用编码64图像
function getIcon(img){
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
var dataURL = canvas.toDataURL("image/png");
return dataURL;
}
例如:
icon = getIcon(document.getElementById("car_marker"));
与:
<img id="car_marker" src="img/car.png"/>
然后,创建的图标在Google Map中用作标记:
var marker = new google.maps.Marker({ position: latLng,
map: map,
title: description,
id: id,
icon: icon
});
这部分工作正常,但我现在需要修改getIcon方法,因此它需要另一个图像作为参数并合并两个图像。随着新形象,我需要补充的是在基地64编码,预计有下面不工作:
function getIcon(img1, img2){
var canvas = document.createElement("canvas");
canvas.width = img1.width;
canvas.height = img1.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img1, 0, 0);
ctx.drawImage(img2, 0, 0); // add the base 64 encoded image here... does not work
var dataURL = canvas.toDataURL("image/png");
return dataURL;
}
我结束了:
Could not convert JavaScript argument arg 0 [nsIDOMCanvasRenderingContext2D.drawImage]