我想爲我的谷歌地圖編號的地圖標記,目前我正在使用Google Charts API方法動態創建編號標記。但是,我無法使用該方法使用我自己的圖標。用動態生成的數字自定義地圖標記圖標
有沒有辦法使用我自己的自定義地圖標記圖標,然後覆蓋/有一個數字的頂部?
另外,有沒有一種快速的方法來創建從1
到1000
運行的1000個.PNG標記?像Photoshop中的批處理過程
我想爲我的谷歌地圖編號的地圖標記,目前我正在使用Google Charts API方法動態創建編號標記。但是,我無法使用該方法使用我自己的圖標。用動態生成的數字自定義地圖標記圖標
有沒有辦法使用我自己的自定義地圖標記圖標,然後覆蓋/有一個數字的頂部?
另外,有沒有一種快速的方法來創建從1
到1000
運行的1000個.PNG標記?像Photoshop中的批處理過程
我從我寫的一篇文章中借用了這段代碼,並稍微調整了它。您應該下載this image,在Photoshop中對其進行編輯並將其放在與PHP腳本相同的目錄中。調整腳本中的數字,直到你得到一些體面的東西。我的系統上
<?php
define("FONT_SIZE", 6); // font size in points
define("FONT_PATH", "c:/windows/fonts/arial.ttf"); // path to a ttf font file
define("FONT_COLOR", 0x00000000); // 4 byte color
// alpha -- 0x00 thru 0x7F; solid thru transparent
// red -- 0x00 thru 0xFF
// greeen -- 0x00 thru 0xFF
// blue -- 0x00 thru 0xFF
$text = $_GET["text"];
$gdimage = imagecreatefrompng("marker.png");
imagesavealpha($gdimage, true);
list($x0, $y0, , , $x1, $y1) = imagettfbbox(FONT_SIZE, 0, FONT_PATH, $text);
$imwide = imagesx($gdimage);
$imtall = imagesy($gdimage) - 14; // adjusted to exclude the "tail" of the marker
$bbwide = abs($x1 - $x0);
$bbtall = abs($y1 - $y0);
$tlx = ($imwide - $bbwide) >> 1; $tlx -= 1; // top-left x of the box
$tly = ($imtall - $bbtall) >> 1; $tly -= 1; // top-left y of the box
$bbx = $tlx - $x0; // top-left x to bottom left x + adjust base point
$bby = $tly + $bbtall - $y0; // top-left y to bottom left y + adjust base point
imagettftext($gdimage, FONT_SIZE, 0, $bbx, $bby, FONT_COLOR, FONT_PATH, $text);
header("Content-Type: image/png");
header("Expires: " . gmdate("D, d M Y H:i:s", time() + 60 * 60 * 24 * 180) . " GMT");
imagepng($gdimage);
?>
輸出示例:
現在,您可以與谷歌圖表做到這一點。以下是一個示例語法:
(scale|rotation|color|fontsize|bold(b) or normal(_)|text[|line2]
https://chart.googleapis.com/chart?chst=d_map_spin&chld=1.0|0|FF8844|12|_|221B
不幸的是,這已被棄用,並建議使用服務器端代碼 –
*另外,有沒有一種快速的方法來創建1000.PNG標記... *是的,你可以在PHP + GD中做到這一點。事實上,你不需要預先創建標記。您可以像'marker-gen.php?text = 123'一樣按需創建它們。這會工作嗎? –
我沒有太多的PHP + GD經驗。假設我設法使用PHP + GD創建編號標記,可以使用'icon:「http://www.site.com/marker-gen.php?text=123」'將它們引入Google地圖嗎? – Nyxynyx
是的,理論上''http://www.site.com/marker-123.png「'和'」http://www.site.com/marker.php?text=123「'沒有區別'只要PHP提供正確的標題和圖像。 –