nippon_bmi_tokyo_pgis.map の tokyo_kukaku レイヤにクエリに必要な設定を追加します。
---
LAYER
NAME tokyo_kukaku
GROUP tokyo_kukaku
TYPE LINE
STATUS ON
CONNECTIONTYPE POSTGIS
CONNECTION "dbname=nippon_bmi host=localhost user=user password=password"
DATA "the_geom from tokyo_kukaku"
# DATA "../mapdata/tokyo_bmi/AdmArea.shp"
LABELITEM "name"
METADATA
"group_title" "行政界"
"queryable" "true" #ここを追加
"fields" "name:区市町村" #ここを追加
END
CLASS
NAME "kukaku"
STYLE
COLOR 255 255 204
OUTLINECOLOR 204 204 204
END
LABEL #ここから追加
MINFEATURESIZE 40
TYPE TRUETYPE
FONT vl-gothic
ENCODING utf-8
SIZE 8
END #ここまで
END
TEMPLATE name_template.html #ここを追加
END
---
name_template.htmlの内容は次のようになります。
nippon_bmi_tokyo_pgis.map と同じフォルダにおいてください。
<html>
<head>
<title>Name Template</title>
</head>
<body>
<li>[name]
</body>
</html>
■参考
シェイプファイルで地図表示するときは、結果が文字化けしてしまいます。
これは、ka-Map は文字エンコード utf-8 で処理するのですが、シェイプファイルのデータは Shift-JIS だからです。
シェイプファイルのデータの文字コードを ka-Map で表示できるように次のようにしました。
Search 機能の修正にも必要ですので、ここで設定しておきます。
まず、マップファイル nippon_bmi_tokyo_pgis.map の tokyo_kukaku レイヤのメタデータ(METADATA)にシェイプファイルのデータの文字コード SJIS を指定します。
---
METADATA
"group_title" "行政界"
"layer_encoding" "SJIS" #ここを追加
"queryable" "true"
"fields" "name:Name"
END
---
htdocs/map_query_float.php ファイルの すべての 「//END METADATA」 の前につぎのように追加します。
---
//get LAYERENCODING ここから追加
$szLayerEncode = $oLayer->getMetaData("layer_encoding");
if ($szLayerEncode != '') {
$layerencode = $szLayerEncode;
} else {
$layerencode = 'utf-8';
}
// ここまで
//END METADATA
---
すべての echo"<td>$val</td>"; の前に次の行を追加します。
$val = iconv($layerencode, "UTF-8", $val);
すべて修正した後の画像です。
0 件のコメント:
コメントを投稿