メインコンテンツへ移動

ドットマトリクス辞書ツール

ドットマトリクス辞書ツールは、画像内の文字や図形を再利用可能なドットマトリクスデータとして整理するのに適しています。スクリーンショット内の文字が通常のテキストではなく、テキスト要素として取得できない場合によく使用します。

ツールを開く​

サンプルワークベンチ を開き、ドットマトリクス辞書ツール ページへ切り替えます。先にカラーピッカーでスクリーンショットを開き、ドットマトリクス辞書ツールへ切り替えて同じ画像を引き続き使用することもできます。

1 文字のドットマトリクスを作成する​

  1. 対象の文字または図形を含むスクリーンショットを開きます。
  2. 元の画像で対象文字の色をクリックし、その色を 二値化の色範囲一覧 へ追加します。
  3. 必要に応じて 既定の許容差 を調整するか、RRGGBB-RRGGBB のような色範囲を直接編集します。
  4. 二値化 をクリックし、二値化プレビューに対象の文字または図形だけができるだけ残るようにします。
  5. Shift を押しながらドラッグして、1 文字を囲みます。2 つ目の選択範囲が必要な場合は、Meta/Ctrl を押しながらドラッグします。
  6. 文字 に、A や 阿 などの対象文字を入力します。
  7. 送信/更新 をクリックすると、ドットマトリクスが ドットマトリクス一覧 に表示されます。

タッチスクリーンやモバイル端末では、Shift 選択範囲、Meta 選択範囲 ボタンで選択モードを切り替えられます。

1 行の文字を分割する​

スクリーンショットに文字が 1 行並んでいる場合は、まず行全体を囲んでから 分割 をクリックします。空の列を境界として、1 行の文字が複数のドットマトリクスへ分割されます。

分割前に、二値化プレビューが十分に明瞭であることを確認してください。背景をできるだけ空にし、文字をできるだけ完全な状態にします。分割結果が不適切な場合は、最小間隔の列数を小さくするか大きくします。または、先に 選択範囲を内容に合わせる を使用して、選択範囲を内容へ合わせます。

結果の見方​

  • 二値化:対象の色だけを残した白黒プレビューへ画像を変換します。
  • 色範囲:色にある程度の誤差を許容し、スクリーンショットのアンチエイリアスによって点が欠けることを防ぎます。
  • ドットマトリクス一覧:整理済みの辞書項目です。
  • コピー:現在のドットマトリクスのエンコード行をコピーします。既存の辞書へ貼り付ける場合に適しています。
  • エクスポート:ドットマトリクス一覧全体をコピーまたはダウンロードします。バックアップや別のプロジェクトへのインポートに適しています。
  • コードテンプレート → コードをコピー:現在の色範囲、選択範囲、ドットマトリクス一覧からスクリプト断片を生成します。スクリプトへ直接貼り付ける場合に適しています。
  • 左オフセット / 右オフセット:文字の左右に空白を設けます。通常は既定値のままでかまいません。

ドットマトリクス画像を保存する​

ドットマトリクスのプレビューを画像として保存する場合:

  1. ドットマトリクス画像を保存 をクリックします。
  2. ファイル名を入力します。
  3. 生成されたコード を確認します。
  4. 保存先を選択します。
  5. 保存 または コードをコピーして画像を保存 をクリックします。

コードをコピーして画像を保存 を選択すると、その画像を読み込むコードがクリップボードへコピーされます。通常は、リソースを読み込むスクリプトの箇所へ貼り付けます。

ドットマトリクス画像を保存 のコードテンプレートは、カラーピッカーの範囲画像テンプレートとは別に保存されます。ファイル名変数 $imgFileBaseName のほか、ドットマトリクスのコードテンプレートにあるすべての変数に対応します。

  • Shift 選択範囲:$shiftRect.left、$shiftRect.top、$shiftRect.right、$shiftRect.bottom。
  • Meta 選択範囲:$metaRect.left、$metaRect.top、$metaRect.right、$metaRect.bottom。
  • ドットマトリクスの内容:$colorRange、$matrix、$matrixList、$word。

デバイスでテンプレートをテスト​

テキストエディターまたはデバイスの右クリックメニューで「現在の開発テスト用デバイス」を設定し、コピーの左にあるテストボタンを押します。取色器の 5 テンプレート、find_image、load_data、領域画像と、ドットマトリクスの 6 テンプレートおよび画像に対応します。両ツールは現在の開発テスト用デバイスを使用し、その切り替えにすぐ追従します。撮影デバイス、デバイス一覧やグループの選択はテスト対象を変更しません。未設定または利用できない場合は、上記の操作で利用可能なデバイスを設定してください。

取色器のタイトル横の鉛筆で名前、元コード、テスト用コードとプレビューを編集します。ドットマトリクスは既存の編集画面を使います。変更は自動保存され、Escape でも保持されます。テンプレート 1~5 の名前が空なら現在の言語の既定名を表示し、テスト用コードが空ならテストを無効にします。既定に戻すと名前、元コード、テスト用コードをまとめて戻します。

$code は生成済みコードを挿入し、その内容を再展開しません。$screenOrient は撮影方向で既定は 0、ドットマトリクスでは $coreLine も使えます。画像テストでは $testResourceRoot と $testImagePath を使え、ローカル保存せず現在の PNG を直接送れます。

テスト時はエディターのデバイスログを開き、ファイル、既存ログ、作業内容を保持します。ログ接続後にコードを送り、結果とエラーをログに表示します。実行中のスクリプトやエディターの実行・デバッグは先に終了してください。送信結果が不明な場合は、再試行前にログを確認してください。

OCR と FindStr は現在のドットマトリクス一覧を自動で読み込みます。$matrixListLiteral は引用符、改行、特殊文字を安全な Lua 文字列にします。未変更の旧既定コードのみ更新し、カスタムコードは保持します。テストはコードのコピーと同じ内容を使い、完全なコードが空の場合はコア行を使います。

よくある問題​

  • 二値化プレビューが空:対象の色をもう一度クリックするか、許容差を適度に広げます。
  • 背景と内容が逆:背景色モードを切り替えてから、もう一度抽出します。
  • 分割結果が 0:選択範囲が対象文字を覆っていること、色範囲へチェックが入っていること、最小間隔の列数が大きすぎないことを確認します。
  • ドットマトリクスデータが無効と表示される:インポート内容が 1 行につき 1 件になっているか確認するか、選択範囲から再抽出します。