2008/05/21

Google Maps API ~追記~

2008/05/03にGoogle Maps APIを使ったときは、GoogleローカルのAPIの存在に気づいていなかったので、Googleローカルの検索結果をGoogle Mapsの情報ウィンドウ(吹き出し)で表示するように変更してみた。実行結果は以下の通り(画像で貼り付けています)。


追加したコードはだいたいこんな感じ。

// ローカルサーチオブジェクトを生成
var localSearch = new GlocalSearch();

// 検索終了時に呼ばれるコールバック関数を登録
localSearch.setSearchCompleteCallback(null, OnLocalSearch);

// とりあえず有楽町駅を基準にする
localSearch.setCenterPoint("有楽町駅");

// "全聚徳"で検索実行
localSearch.execute("全聚徳");

検索の実行が終了すると、上で指定したコールバック関数が呼ばれる。

// 検索終了時に呼ばれるコールバック関数
function OnLocalSearch()
{
  // 結果があれば
  if (localSearch.results.length > 0)
  {
    // 検索結果を情報ウィンドウに表示
    map.openInfoWindowHtml(latlng,       localSearch.results[0].html.innerHTML);
  }
}

※ 上のlatlngはGoogle Maps APIで取得してきた"全聚徳"の位置です。

検索結果はすでにHTML形式(1個のDIV要素になっている)で取得できるので、上の例ではそれをそのまま情報ウィンドウ(=地図上の吹き出し)渡している。中身をちょっと加工すればもっと見やすい表示にできるけど、面倒なので今回はそのまま。
 

2008/05/11

i18n l10n g11n m17n

こう書くと何かの暗号みたいだけど、単に長い語を中抜きして字数に置き換えているだけ。"internationalization"の場合、先頭の"i"と末尾の"n"の間に18文字あるので"i18n"と書く。

i18n: internationalization (国際化)
l10n: localization (地域化、ローカリゼーション)
m17n: multilingualization (多言語化)
g11n: globalization (国際化、グローバル化、グローバリゼーション)

で、意味の違いはというと、じつはこれがけっこう面倒なことになっているようだ。Googleでいろいろ検索してみたけれども、それぞれの開発コミュニティごとに意味は若干異なっている。たとえばIT用語辞典e-Wordsあたりを見てみると、まず複数の言語で使えるような設計にすることがi18n、それから具体的に英語版とか日本語版とかを提供することがl10n、それで各種言語対応がそこそこ終わっていろんな言語で使えるようになった状態をm17nと言うらしい(手っ取り早く言えば。正確な解説はe-Wordsのこちらを参照)。この場合g11nという言葉は使わない。

Microsoftは基本的にl10nとg11nの2つだけを使っている。英語版のソフトウェアを日本語化して日本で売るような場合がl10n、特定のカルチャに依存しないでUnicodeベースでプログラムを開発することがg11nということのようだ。i18nはg11nとほぼ同じ意味、m17nという言葉は使われていない。Microsoftはグローバル開発のポータルサイトを用意している。ここで用語集も公開しているので、Windows向けの製品を開発している人にとっては結構便利である。

2008/05/05

Yahoo!地図情報API

これもGoogle Mapsと同じような地図情報サービス。おとといと同じように全聚徳を表示させてみた。Yahoo!地図情報APIにはJavaScript版Flash版の2つがあるが、以下はJavaScript版で作ったもの。



地図データはアルプス社が提供している。Google Mapsはゼンリンなので見た目がちょっと違う。拡大率を最大にしてみると、Yahoo!ではワールドタウンビルというビル名が出てくるが、Googleではこのビル名は表示されない。他はどうかわからないが、この点だけを見るとYahoo!の地図の方が情報が多い。

一方、吹き出しはGoogleの方がかっこいい。どちらも吹き出しのテキストとしてHTMLが使えるのでやれることはほとんど同じだと思うが、見栄えはGoogleの方が洗練されている。
 

2008/05/03

Google Maps API

全聚徳が東京にもあることを今日初めて知った。しかも銀座と新宿の2箇所にあるらしい。



Google Mapsで店を検索すると、店の写真とかレビューとかも表示させることができるけど、そうした情報をGoogle Maps APIで取得することはできないみたいだ。そんなのは地図情報でも何でもないので当然と言えば当然だが、Google Mapsで出来ることがAPIでは出来ないというのは残念な気もする。

iframeが使えるブログであれば、Google Mapsで検索後「このページのリンク」をクリックすれば、検索結果画面をそのままiframeに収めたJavaScriptが取得できるので、これをブログの本文に貼り付ければ良い。Bloggerはiframeが使えるのでこっちの方が簡単だけど、暇つぶしにGoogle Maps APIを使ってやってみた。

※ 追記
店の写真やレビューはGoogleローカル(GlocalSearch)とかGoogleの別の検索サービス(ブログ検索、Web検索等)を使えば取得できることに気づいた。Google AJAX Search APIにAPIの解説が載っている。こっちに修正版の実行結果(画像)を掲載。
 

2008/05/02

四声符号付き文字のコード値一覧

四声符号付き文字のUnicodeのコードポイント値の一覧を以下に書いておく。アルファベット大文字の四声符号付き文字もあるが、使うことはないと思われるので小文字だけ。

ā:U+0101á:U+00E1ǎ:U+01CEà:U+00E0
ō:U+014Dó:U+00F3ǒ:U+01D2ò:U+00F2
ē:U+0113é:U+00E9ě:U+011Bè:U+00E8
ī:U+012Bí:U+00EDǐ:U+01D0ì:U+00EC
ū:U+016Bú:U+00FAǔ:U+01D4ù:U+00F9
ǖ:U+01D6ǘ:U+01D8ǚ:U+01DAǜ:U+01DC

あと、おまけでウムラウト付きのuも挙げておく。
ü:U+00FC
 

2008/05/01

Unicodeのコード値で文字入力する方法

WindowsでUnicodeのコードポイント値をキーボードから直接キー入力して文字を書くには以下の3つ方法がある。

(1) 日本語のIMEを使う
IMEが有効な状態でまずUをキーボードからキー入力し、つづけてコード値を入れる。それからF5キーを押すと、コード値に対応した文字に変換される。

(2) Unicodeの直接入力
NumLockした後、ALTキーを押し下げたままUnicodeのコード値を入力し、終わったらALTキーを離す。

(3) MS WordのALT+x変換
MS Word(未確認だがおそらくWord 2002以降)であれば、Unicodeのコード値を入力した後、ALTキーを押しながらxを押すと、コード値に対応した文字に変換される。