文珠川慧久の道楽帳2

turezure naru mama ni

Garmin eTrex 30x --- 英語版を日本語化 OSM日本語地図

2017-08-19 | GPS
ガーミンの英語版GPS端末を買ってきて仮名漢字交じりの日本語を表示可能にすることができます。ただし仮名漢字をGPS端末に単独で入力する機能ではありません。このような日本語化を行う手順などを記してくださったブロガーの皆様のお陰で、小生にも簡単にできました。ブログはたくさんありますので、小生が参照させていただいたサイトを下にご紹介します。
  これです。
   ↓
英語版 Garmin eTrex 30x の日本語化と文字サイズ調整
このサイトの面白いところは、処理を全部 Macintosh でやることにこだわってくださったことです。このブログ、以前はアクセスできたのですが、最近(例えば2017-08-19現在)アクセスできなくなってしまったので、記憶を頼りに、また他に参考にさせていただいた多くの諸先輩のブログからの情報も交えて(出展を失念してしまったため覚えている範囲で申し訳ありませんが)以下に備忘録として記しておきます。

ーーーーーーーーー

★ Garmin eTrek 30x 英語版に日本語フォントを導入する方法

英語版のGarmin eTrex 30xを日本語化する(但しUTF8エンコードのOSM地図で仮名漢字交じりの地名を表示可能にするだけでありBluetooth接続したスマートフォンからの仮名漢字交じり文通知などは表示可能にならない)手順は以下の通りです。

英語版Garmin eTrek 30xで仮名漢字交じりのOSM地図を表示するためには、日本語フォントが必須です。Garmin eTrek 30xで使えるフォントはユニコード対応のTrueTypeフォントに特殊な改造を加えたもの(これをGarmin形式と呼ぶ)だけです。特殊な改造の内訳は、ユニコード対応TrueTypeフォントの各ビットと0x76との排他論理和(xor)をとることです。参考サイトに従って、小生は、日本語フォントとして「VLゴシック」を使う方法を選びました。FontForgeというパソコンアプリを使い、日本語フォントとラテンアルファベットとの大きさのバランスを調整しました。

手順は次の通りです。
1. VL-PGothic-Regular.ttf を用意( http://vlgothic.dicey.org )
2. FontForgeでVL-PGothic-Regular.ttf を開く( http://fontforge.github.io/en-US/ )
3. control+a で文字を全選択
4. メニューを Element → Transformations → Transform とたぐり
5. OriginにGlygh Originを、Scale Uniformlyを選択して 130% を指定
6. Transforming... がしばらく時間かかるので待つ
7. メニューを File → Generete Fonts とたぐり TrueType フォントを出力
8. このTrueTypeフォントファイルの名前を006-D0952-06.binにする
9. Garmin epixの¥Garmin¥ExtDataに格納
  ¥Garmin¥ExtData¥006-D0952-06.bin

参考サイト1: Garmin用フォントファイルを作るxorをMacで|Kuniyoshi's Memo
https://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0ahUKEwjkhaDkh97VAhXHvrwKHR5LCDgQFggtMAE&url=http%3A%2F%2Fkuniyoshi.jp%2Fpost-52&usg=AFQjCNE2XMTWfIChTLI5NDzZl8YQ-Owo3w
参考サイト2: https://osm-for-garmin.org/japanese-fonts/

★ 日本語フォント導入済Garmin eTrex 30x英語版で仮名漢字交じり表記のOSM日本地図を利用する方法

Garmin製品は長らく公式な日本語(仮名漢字交じり)対応がなされなかったため、Garmin正式コードはUTF8であるにもかかわらずアングラでShift JISコードを使う形でなされてしまい、その後も長らく黙殺放置されてきたため、UTF8とShift JISコードの混乱があります。Garmin用にも配布されているOpen Street Map (OSM)地図データファイルをGarmin epixで利用させていただく際に、ひとひねりの面倒な対応が必要になります。

ひとひねりの面倒な対応の概要は次の通りです。英語版Garmin eTrex 30xでは、地図の文字コードはUFT8であることが前提になっていますが、日本語だけはShift JISコードで長い期間アングラ対応されてきたという歴史的な影響からか、地図ファイル .img がShift JISでないとGarmin eTrek 30xには認識されません。Shift JISのOSM地図データファイルも配布されているからそちらをeTrek 30xに入れても使えないという症状が出ます。どこにどんなパッチをすればいいか精密な情報があれば、見通しのよい対処方法があると思いますが、それがありません。一方、かなりアバウトなパッチなので見通しがよくないのですが、とにかくこれで使えるようになるという手順が諸先輩のブログで紹介されています。それらを参考にさせていただいて下記の通りやって小生のGarmin eTrek 30xでもUTF8のOpen Street Map (OSM)地図を入れて仮名漢字交じりの日本語地名が表示されるようになりました。

(step1) Garmin用OSMデータファイルを配布してくださっているサイトから等高線ありUTF8の地図データファイルをダウンロードしてファイルを解凍して gmapsupp.img を取り出します。およそ700MBあります。
https://osm-for-garmin.org/downloads/
(step2) gmapsupp.img をコピーして gmapsupp.img.UTF8 を作成します。
(step3) gmapsupp.img をバイナリエディタ等を使用して加工します。加工内容はバイト列: E9FD13000480 を A40313000480 に全て置換します。UTF8をShift JISに変えています。本当に変えるべき箇所が厳密には分かっていない為それらしいところ全部にパッチしてしまえということです。パッチ作業にはバイナリーエディタというアプリケーションソフトを利用します。小生は、Windows 用の Stirling というバイナリーエディタをWindows 7 Professional 環境で利用させていただきました。Stirling は1999年頃に作られたソフトウェアでその頃の Windows NT, Windows 98, Windows 95 に対応だとありますが Windows 7 Professional 環境でも全く問題なく使えました。
(step4) Garmin epixをパソコンにUSB接続しますと¥GARMINフォルダがストレージとしてマウントされます。
(step5) gmapsupp.img 及び gmapsupp.img.UTF8 を Garmin eTrek 30x の¥GARMIN フォルダにコピーします。
(step6) コピーが完了したらGarmin eTrek 30xとパソコンとのUSB接続を切断(¥GARMINストレージをアンマウント)します。するとeTrek 30xの画面にupdateとかなんとか表示されて少し経つと時計画面になります。
(step7) eTrek 30xを地図画面に切り替える。地図が表示されて地名が文字化けしていることを確認する。
(step8) eTrek 30xを再びパソコンとUSB接続する。
(step9) ¥GARMINフォルダに入れた gmapsupp.img を削除して gmapsupp.img.UTF8 を gmapsupp.img にリネームする。
(step10) Garmin eTrek 30xとパソコンとのUSB接続を切断(¥GARMINストレージをアンマウント)します。するとeTrek 30xの画面にupdateとかなんとか表示されて少し経つと時計画面になります。
(step11) eTrek 30xを地図画面に切り替える。地図が表示されて地名が文字化けせずきちんと表示されていることを確認する。

注記1:日本語フォントの入れ方及びUTF8の仮名漢字交じりで地名情報を持っているOSM(Open Street Map)日本地図を使えるようにするために必要な上記の(step)は、Garmin epix の日本語化と全く同じ方法でOKです。
注記2:UTF8のCP(コードページ)が書き込まれている部分を認識できる他のコードページに書き換えた地図を作り、GPS本体に誤認識させる。その後に正しいコードページの地図にすり替えることにより制限を回避する方法です。発見者は eizo というひとらしいです。
注記3:日本語フォント及び地図の導入とかな漢字変換入力機能とは全く関係がありません。かな漢字変換機能は有りません。
注記4:gmapsupp.img と gmapsupp.img.UFT8 とは、同一サイズのファイルでないといけません。
注記5:上記の(step)として紹介する手順は、地図を更新する度にShift JISパッチを施したいわゆるダミーファイルの作成からの作業を行う必用があります。また、ダミーファイルと同一のファイル名で尚且つダミーファイルと同一サイズのファイルでないと認識しません。

ーーーーーーーーー
FontForgeで130%処理をしなかった場合(左側)とした場合(右側)の画面サンプルを以下に示します。

 → 

 → 

FontForgeで130%処理をしたフォントを使ってトリップコンピュータの画面を表示したところです。
  ↓


FontForgeで130%処理をしたフォントを使って地図の画面です。
  ↓