未来の自分へ知識貯金

ゆーきのエンジニアブログ

約6分 Windows

PowerToys Text Extractor の使い方|画面の文字をOCRでコピー

PowerToys Text Extractor の使い方|画面の文字をOCRでコピー

画面に見えている文字をコピーしたいのに、選択できない——そんな場面は意外と多いです。

  • エラーダイアログのメッセージ(右クリックもコピーもできない)
  • 画像化された PDF や、スクリーンショットの中の文字
  • 動画のスライド、リモート画面の向こう側の文字

昔は Tesseract で OCR ツールを自作したりしていましたが、今は Microsoft 公式ツールの PowerToys に入っている Text Extractor を使えば、ショートカット一発で画面上のどこでもテキスト化できます。設定も簡単なので手順を紹介します。

PowerToys とは

PowerToys は Microsoft が無料で公開している Windows 用ユーティリティ集です。ウィンドウ整列の FancyZones や一括リネームの PowerRename など便利機能の詰め合わせで、その中のひとつが今回使う Text Extractor(画面の文字抽出)です。

PowerToys のインストール

公式ドキュメントからインストールできます。

https://learn.microsoft.com/ja-jp/windows/powertoys

インストール方法はいくつかありますが、どれでも同じものが入ります。

  • Microsoft Store で「PowerToys」を検索してインストール(更新も自動で楽)
  • winget ならコマンド一発:
winget install Microsoft.PowerToys

Text Extractor を ON にする

PowerToys をインストールできたら設定画面を開いて、Text Extractor が ON になっていることを確認します。既定で ON になっているはずですが、動かないときはまずここを見てください。

使い方

Win + Shift + T を押すと画面が薄暗くなり、エリアを選択できるようになります。

抽出したい文字の範囲をマウスでドラッグして選択します。

選択した瞬間に OCR が実行され、抽出したテキストがクリップボードに入ります。あとは貼り付けたいところ(メモ帳・検索窓・チャットなど)で Ctrl + V するだけです。

画面に表示されているものなら何でも対象にできるので、「ブラウザだろうが動画だろうがエラーダイアログだろうが、見えていれば拾える」のが強力なところです。

Text Extractor が使えないときは

「ショートカットを押しても何も起きない」「設定に Text Extractor が見当たらない」といったときは、だいたい次のどれかです。上から順に確認すると早いです。

ショートカットを押しても画面が暗くならない

  • PowerToys 自体が起動していない。タスクトレイに PowerToys のアイコンがあるか確認します。PC 再起動後に自動起動していないことがあるので、設定の「全般」で「起動時に実行する」を ON にしておくと安定します
  • Text Extractor が OFF になっている。前述のとおり設定画面で ON を確認します
  • ショートカットが他のアプリと競合している。Win + Shift + T を別のツール(スクリーンショット系・キャプチャ系・IME など)が先に取っていると反応しません。PowerToys 設定の Text Extractor にある「アクティブ化のショートカット」を、空いているキーに変更してください
  • 管理者権限で動いているウィンドウの上で押している。管理者として実行しているアプリの上では、PowerToys 側も管理者として実行していないとショートカットが届きません。PowerToys を管理者として起動し直すと解決します

設定メニューに Text Extractor が無い

PowerToys のバージョンが古い可能性が高いです。Text Extractor は途中のバージョンから追加された機能なので、それ以前の PowerToys には項目そのものがありません。設定画面の「全般」から更新を確認するか、入れ直してください。

winget upgrade Microsoft.PowerToys

範囲は選べるのにテキストが取れない

  • 貼り付け先を間違えている。抽出結果は画面に出ずクリップボードへ直接入る仕様です。選択した後、貼り付けたい場所で Ctrl + V を押してください
  • 文字が小さすぎる/背景と同化している。拡大してから選び直すと取れることがあります(→ 精度を上げるコツ
  • 日本語だけ取れない場合は言語パックの問題です(→ 次の章)
  • 保護された動画や一部のオーバーレイ表示は、画面キャプチャの時点で黒く映るため抽出できないことがあります

日本語が認識されないときは

Text Extractor は Windows 内蔵の OCR エンジンを使っており、認識できる言語は Windows にインストールされている言語パックに依存します。日本語の文字を選択したのに空文字や英数字の羅列しか取れない場合は、日本語の言語パックが入っているかを確認してください。

  1. Windows の「設定」→「時刻と言語」→「言語と地域」を開く
  2. 「日本語」が言語一覧にあることを確認(なければ追加)
  3. PowerToys 設定の Text Extractor に「優先する言語」の項目があるので、日本語を選択

日本語 Windows なら通常は最初から使えますが、英語版 Windows を使っている場合や、逆に英語の文書を精度よく抽出したい場合は、この言語設定を切り替えると結果が変わります。

精度を上げるコツ

使ってみて感じた傾向です。

  • 印刷文字・画面上のフォントは得意。手書き文字や崩れたフォントは苦手
  • 小さい文字は拡大してから撮ると精度が上がる。ブラウザなら Ctrl + マウスホイールで拡大してから Win + Shift + T
  • 日本語の抽出結果には不要な半角スペースが混ざることがあるので、長文は貼り付け後に軽く整形が必要
  • 複数行を選択すると改行位置もそのまま入るため、1行で欲しいときは行単位で選択した方が早いこともある

まとめ

  • 画面上の選択できない文字は PowerToys の Text Extractor でテキスト化できる
  • 使い方は Win + Shift + T → 範囲選択 → Ctrl + V の3ステップ
  • **反応しないときは「起動しているか・ON か・ショートカット競合・管理者権限」**の順に確認する
  • 設定に項目が無いときは PowerToys のバージョンが古い
  • 日本語が認識されないときは言語パックと優先言語の設定を確認する
  • 小さい文字は拡大してから撮ると精度が上がる

OCR ツールを自作していた身からすると、OS 標準機能に近いところでここまで手軽にできるのは感動ものです。エラーメッセージを手打ちで転記している方は、ぜひ一度試してみてください。

この記事をシェアする

ゆーき
ゆーき

プログラマー経験10年以上。好きなプログラム言語はC#。使える言語はC++, Python他。好きな開発環境はVisual Studio。

プロフィールを見る →