PCOT関連の掲示板

PCOTの感想、質問、バグ報告受付

715 コメント
views
1 フォロー

PCOTの感想と質問、バグ報告を受け付けるトピックです。

以下の点に注意して投稿してください。

  • 質問、バグ報告はなるべく細かく書いてください。スクショの張り付けがあればベターです。
  • バグ報告についてはなるべく対応するようにしますが、必ずしも対応できるとは限りません。ご了承ください。
ぬるっぽ
作成: 2020/05/11 (月) 16:59:52
最終更新: 2020/09/11 (金) 19:00:10
通報 ...
2
kazuのFMSの部屋管理人 2020/05/11 (月) 17:58:31 修正 19fcb@13e49

HP再開おめでとうございます!
いつもお世話になっております。再開おめでとうございます、これからも応援しています。
リンク

3
synctam 2020/05/11 (月) 21:14:44 6a35e@02360

おお!これは素晴らしいですね。
早速、Eschalon: Book I で試してみましたが、まさに自分が求めていたものです。
素晴らしいツールを公開していただき、ありがとうございます。

4
synctam 2020/05/11 (月) 21:51:37 6a35e@02360

DeepL 連携について
現状では、「翻訳」ボタンを押した後、原文を右クリックする仕様になっていますが、
「DeepLと連携」にチェックが入っている場合は、「翻訳」ボタンを押した時に自動的に連携ができないでしょうか?

5
ぬるっぽ 2020/05/11 (月) 22:04:51 >> 4

早速ご使用して頂き、ありがとうございます!

現状では、「翻訳」ボタンを押した後、原文を右クリックする仕様になっていますが、「DeepLと連携」にチェックが入っている場合は、「翻訳」ボタンを押した時に自動的に連携ができないでしょうか?

DeepLについてはインストールしている人だけが恩恵を受けられるので、試験的に導入したものの、ご指摘の通りDeepLをインストールしていない場合でもクリップボードにコピーされるだけで、特に不便はないと思われますので早速修正しますね。
ご意見ありがとうございました!

6
ぬるっぽ 2020/05/11 (月) 22:15:39 >> 4

修正したものをOneDriveに上げました。
お手数ですがご確認ください。

8
ぬるっぽ 2020/05/11 (月) 22:34:02 修正 >> 4

すみません・・・勢いあまって右クリックの処理を外してしまいました・・・。
原文テキストを編集後、再度DeepLで翻訳する場合に右クリックは必要だったのを
思い出したので、急遽もとに戻しました。
周りの友人含めて誰一人まともに触ってもらえなかったので
ご意見を頂けて浮かれてしまったようです・・・すみません。
再度戻したものをアップしましたのでお手数ですがご確認ください。

10
synctam 2020/05/11 (月) 22:58:09 6a35e@02360 >> 8

早速の対応ありがとうございます。
ワンクリックで DeepL 翻訳も実行されるようになり、更に使いやすくなりました。

7
Spoonail 2020/05/11 (月) 22:27:59 c64f3@f0312

すみません、高DPI設定でスクリーンの拡大をしているとおそらくキャプチャ画像が切れてしまっているのか、OCRがうまくいかないようです。

以下の3行の文章に対してOCRを試してみたところ…
Even so, the Queen seems more
determined than ever. Under her rule,
prosperity awaits the Ant Kingdom!

以下のようにOCRされました。
Even so, the Queen seems determined than ever. Under

アプリケーションの自動拡大設定をオフ※にすると以下のように全体がOCRできたので、この設定の影響の可能性が高いです。
Even so, the Queen seems more determined than ever. Under her rule. prosperity awaits the Ant Kingdom!

※アプリケーションのプロパティ>互換性タブ>高DPIの設定>高DPIスケール設定の上書き>チェックボックスをON

一応※の操作でPCOT.exeに対して拡大をオフにすれば問題なく動作はするのですが、この設定に気づかないユーザーも多いかなと思い報告させていただきました。

9
ぬるっぽ 2020/05/11 (月) 22:45:25 >> 7

ご使用頂き、ありがとうございます!
高DPI設定については全くの盲点でした。ご指摘感謝いたします。
一点確認して頂きたいのですが、OCR読取を行うと実行ファイルと同階層に
「screen.png」という直前に取り込んだ画像を出力しています。
これが見切れているという認識で合っていますか?

一応※の操作でPCOT.exeに対して拡大をオフにすれば問題なく動作はするのですが、この設定に気づかないユーザーも多いかなと思い報告させていただきました。

ただ、ご指摘の点についてですが、調査をしてみますが内容によっては
対応できない場合もあることをご了承願います。
いずれにせよ、説明書には注意点として明記させていただきます。

ご指摘ありがとうございました!

11
Spoonail 2020/05/12 (火) 00:36:59 c64f3@f0312 >> 9

screen.pngを確認したところ、見切れていました。
一応、こちらに現物を添付します。
https://drive.google.com/open?id=1lafteBnh0g3n-aP5hsxfck5K-19vXw0b

高DPI対応ですが、Windowsフォームの場合マニフェストファイルで対応できるようです。(Windowsフォームでの開発かな?と予想しました。違っていたらすみません。)
https://qiita.com/felis_silv/items/efee4b1a397b0b95100a

実は自分もOCR+翻訳ソフト作っていて、これに一時期悩まされました(^_^;)
フォームが拡大されているのでズレちゃうんですよね…

12
ぬるっぽ 2020/05/12 (火) 02:01:37 >> 9

有益な情報提供ありがとうございます!
なんとか対応してみましたので、お手数ですがご確認願います。

高DPI対応ですが、Windowsフォームの場合マニフェストファイルで対応できるようです。(Windowsフォームでの開発かな?と予想しました。違っていたらすみません。)

ご推察の通り、Windowsフォームで作成しています。
本業が業務システム開発なので、見た目がダサいのはご愛敬ですw

Spoonail様も同様のツールを作成されていたんですね。
私はOCRも翻訳APIも殆ど触ったことがなく、無料で際限なく使えるものを
手探りで探してましたが・・・この分野は色々大変そうだということを
身に染みて実感いたしました。

13

とても便利なツールありがとうございます!
要望なのですが、フリー選択ボタンのキーコンフィグがあるとマウスのサイドボタンなどで楽にキャプチャ画面が出せて便利かなと思いました。
また自分のディスプレイ(2560x1440)だと翻訳テキストのフォントが小さく行間が狭いので、ちょっと読みづらいと感じました。

15
ぬるっぽ 2020/05/12 (火) 21:38:05 >> 13

ご使用頂き、ありがとうございます!
要望についての確認ですが、ショートカットを設定出来るようにしてほしいといった内容で合っていますか?
申し訳ありませんがフォントの件と併せて対応しますので少しお時間下さい。
ご不便をおかけしますが、お願いいたします。

17

お返事ありがとうございます。

>要望についての確認ですが、ショートカットを設定出来るようにしてほしいといった内容で合っていますか?

はい、ショートカットキーで自分の好きなキーをフリー選択ボタンに設定できればいいなと思いました。自分の場合は海外ゲームプレイ中の翻訳に使いたいのですが、翻訳のたびにボタンを押しにゲーム画面外にカーソルを移動するのが手間だったので実装していただけたらとても嬉しいです。

あとこれは自分のOSの「閉じる」等のボタンやタイトルバーの大きさを少し変更して使っているからかもしれませんが、辞書登録と名詞登録の「確定」「キャンセル」ボタンが上のチェックボックスやテキストボックスに重なって表示されてしまいます。そこ以外は問題ありませんでした。

また辞書リストと名詞リストの機能なのですが、この2つの具体的な違いや使い分け方はありますか?辞書リストの方はうまく機能していたのですが、名詞リストの方は自分の使い方が悪かったのか機能しないようでした。

18
ぬるっぽ 2020/05/12 (火) 23:51:23 >> 15

フィードバックありがとうございます。長文です。すみません。

ショートカット

やっぱりこういう要望でますよね・・・私も欲しいですw
実は当初実装しようかと思っていたんですが、キーストロークを監視して上書きするような事をするので、Windowsや現在アクティブなアプリ(接続できるのはゲームだけじゃないので)とバッティングしたらどうしようと思って、実装を見送ったのです。
後は、もしキーコンフィグを付けるとなると上記の理由からプロセスごとにショートカットキーを設定する必要もあって、些か設定の手間が増えそうな気がして・・・。
なので、ショートカットの対象ボタン(フリー選択や翻訳)を決めた上で原則Windowsや他のどのアプリともバッティングしないショートカットを決め打ちで実装するなら、行けそうな気がします。
PCOTがアクティブな状態でのキーコンフィグの実装については他のアプリに影響しないので全然問題ないんですけどね。

あとこれは自分のOSの「閉じる」等のボタンやタイトルバーの大きさを少し変更して使っているからかもしれませんが、辞書登録と名詞登録の「確定」「キャンセル」ボタンが上のチェックボックスやテキストボックスに重なって表示されてしまいます。

もし宜しければ、画面のハードコピーなどを貼っていただくことはできますか?そうでなければ、OSがどのような設定になっているかを教えて頂けると幸いです。

辞書リストと名詞リストの違いについて説明します。
辞書リスト・・・原文に対して置換を行う
名詞リスト・・・訳文に対して置換を行う
が大まかな違いとなります。

名詞リストについてですが、海外のゲームで固有名詞などがそのまま翻訳されずに訳文に出てきた際に任意の名称に置き換えられるというものです。
例えば、Eschalon: Book I のEverSleep墓地とかなどは翻訳されずに
そのまま訳文に「EverSleep」と出てきますがそれを翻訳時に「EverSleep」→「エヴァースリープ」と置き換えてから訳文に表示する機能です。

上記の性質上、訳文の対象箇所を選択した上で名詞登録機能を利用して頂ければ、正常に機能すると思われます。
原文から選択した文字を置換前テキストに設定すると、原文と訳文で大文字小文字や半角全角が変わってしまっている可能性がありますので、置換前テキストは訳文から取得するようにしてください。

20

お返事ありがとうございます。
ショートカットの実装にはそういう難しさがあるんですね。別の翻訳キャプチャソフトではWinキー+Qキーとか、あまり使われないWinキーと他のキーを同時押しした時にキャプチャするのが初期設定になっていたのですが、それもアクティブなアプリとバッティングしないためだったのかもしれませんね。

>もし宜しければ、画面のハードコピーなどを貼っていただくことはできますか?そうでなければ、OSがどのような設定になっているかを教えて頂けると幸いです。

画像1
画像1

これでアップロードできてるでしょうか。一応ボタンを押すことは出来るので自分だけの問題でしたら修正などはなくても大丈夫だと思います。

名詞リストの説明もありがとうございます。訳された文章に対して使うのですね。辞書リストも名詞リストも、翻訳キャプチャソフトにあったらいいなと思っていた機能だったので嬉しいです。

16
synctam 2020/05/12 (火) 22:13:38 6a35e@02360

「翻訳表示」画面のチェックボックスの状態について

現状、「DeepLと連携」のチェック状態が記憶されないようです。チェック状態を記憶できるように変更できないでしょうか?できれば、他のチェックボックスも記憶されると嬉しいです。

ただ、記憶はゲーム毎とシステムに分ける必要があるかもしれません。例えば、「DeepLと連携」のチェック状態はシステムで共通の設定として保存。一方、「対象通りに改行」や「原文を小文字化」についてはゲーム毎に記憶など。

ご検討いただけると嬉しいです。

19
ぬるっぽ 2020/05/13 (水) 01:15:12 >> 16

要望ありがとうございます。
「DeepLと連携」については確かにシステムで覚えておきたいですね。設定ファイルを新設します。

「対象通りに改行」は試したプロセスのサンプル数が少なかったせいか、翻訳精度が落ちる傾向があって辞書登録時の比較用という認識でした。
ただ、確かに改行の位置によってGoogle翻訳もDeepLも翻訳結果が変わるので、ゲームごとに覚えておくといいですね。

「原文を小文字化」については、DeepLがある以上もう正直要らないかなと思っていたんですが、よくよく考えれば辞書登録は訳文と対比して作成するので必要ですね。
というわけで、近いうちに実装します。少しお時間ください。

>>NOFA様
ショートカットについては、まだ色々と検討の余地がありそうなので、こちらを先に対応させてもらいます。
フォントサイズについては、こちらの対応と併せてリリースしますので、ご了承願います。

21
Sorori 2020/05/13 (水) 10:24:40 a2662@f02be

要望なのですが、ゲームによってはテキストをそのまま選択コピーできるものが
あったりするので、もしよければテキストコピーからの翻訳にも対応してもらえないでしょうか、よろしくおねがいします。

22
ぬるっぽ 2020/05/13 (水) 17:24:09 >> 21

ご使用頂きありがとうございます。

ご要望の件ですが、テキストを選択コピー出来るのであれば辞書登録は不要ですし、DeepLを使用して頂ければ翻訳精度の低いPCOTを使用するまでもなく質の高い翻訳結果を得られますので、DeepLのご使用を強く推奨いたします。

また、もしなんらかの事情で、DeepLをインストールしたくない場合は、PCOTの原文にコピーした後で原文下部にある「即時翻訳」ボタンを押して頂ければ、すぐに翻訳結果が得られます。

23
ぬるっぽ 2020/05/13 (水) 21:28:06 修正

お知らせ

公開して早々ですが、次回更新は少し大幅な更新となりそうです。ご使用して頂いている皆様にはご不便をおかけしますが、今しばらくお待ちください。
少し言い訳させて頂きますと、元々思いつきで自分が使うだけの想定で始めてバージョン管理も何もなく2か月程度で作った物なので粗が多いのです・・・。見た目がダサいのはセンスがないからです。

以下、私信です。
>> synctam様
ゲームごとのチェック状態の記憶に関してですが、既に何かしら登録されたプロセスが存在する場合、データ構造の整合性が合わずエラーとなってしまいます。
お手数ですが、次回リリース時にお手元でdataフォルダ配下の[プロセス名].cfgファイルから新規作成した同名ファイルとの差分をマージして頂く必要があります。ご不便をお掛けして申し訳ありません・・・。
上記の通り、プロセスごとの設定についてはデータ構造上、影響範囲大きそうなので今のうちに潰しておいた方がいいですね。他に今ある機能でプロセスごとに記憶しておきたい項目は無いと思ってよろしいですか?

>> NOFA様
貼っていただいた画像を確認しました。酷いですね・・・。
一応対応してみたので、次回リリース時には直っていると思います。ダメだった場合はお手数ですが再度ご報告をお願いいたします。
あと、ショートカットについてですが、なるべく他のアプリに迷惑(笑)をかけずに、ショートカット以外の方法でアプローチ出来ないか模索中です。
コレジャナイ感が半端ないことになりそうな気もしますが、期待せずにお待ちください。

24

ご検討いただきありがとうございます。
設定(.cfg)ファイルの非互換については了解いたしました。

OCR訂正辞書(wordlist.dat)については、現状通りシステムにひとつで構わないと思います。名刺リストについては、ゲーム毎に設定できると良いと感じました(何処に情報が保存されているか確認できなかったのですでに対応済みであればごめんなさい)。

あと、画像の拡大倍率をゲーム毎に設定できるようにするのも良いかもしれません。例えば、設定ファイルにデフォルト値を入れておいてUIへの実装は先送りする方法でも良いかとおもいます。なお、以前実装の確認をしていた時は、領域ごとに拡大倍率を設定できるようにしていました。これについいては、現状での必要性が明確ではないため、参考程度に考えてください。

今のところ気がついたのは以上となります。
よろしくおねがいします。

25
ぬるっぽ 2020/05/13 (水) 23:05:36 >> 24

早速のフィードバックありがとうございます。

名詞リストについては、ゲーム毎に設定できると良いと感じました(何処に情報が保存されているか確認できなかったのですでに対応済みであればごめんなさい)。

現行で名詞リストはゲームごとの保存となっております。名詞リスト登録後に作成される[プロセス名].cfg内で「NounTable」とある場所のデータがそれです。

画像の拡大倍率をゲーム毎に設定できるようにするのも良いかもしれません。

こちらについても、現行で(私の方では読取倍率と呼んでいますが)ゲームごとではなくタイトルラベル単位で設定されています。前述の[プロセス名].cfg内の「TitleTable」とある場所の「ReadMultiples」という項目がそれです。
デフォルト値は2(2倍)となっています。この値はタイトル設定画面で直接値を設定するほか、新規作成時もしくは編集時の翻訳範囲の再選択時にキャプチャー画面上でマウスホイールで値を増減(最小x1~最大x10)できます。
何故ゲームごとではなく、タイトルラベルごとにしたかというと、同じゲーム内でも場所によってフォントサイズが変わっている箇所があったので、それに対応した結果となります。

なお、以前実装の確認をしていた時は、領域ごとに拡大倍率を設定できるようにしていました。

つまり、同じことを考えていたということですね。先生に近づけた気がしてなんだか嬉しいです。
今だから言いますが、開発中ブログに訪れるたび、synctam様のことを勝手に「先生」と呼んでいましたw

あとこれは余談ですが、私も当初synctam様に倣って画像を二値化してOCRにかける方法を実装してみたのですが、二値化する際の閾値を取得するのに大津の二値化手法を使って最適な閾値で二値化を実現できたと思いきや、人の目から見るとちゃんと文字として認識できるにも関わらず、どうもTesseractOCRとの相性が悪いらしくて読取精度が異常に下がりました・・・。
PCOTでは結局画像の二値化は没になりましたが・・・こちらについて、何か解決策はご存じですか?
自分の中では今の所、どんな画像も強制的にグレースケールにした状態が一番読み取り精度が高い気がします。

26

気が付きませんでした、指摘した部分は既に実装済みとのことですね、安心しました。

私も、二値化については閾値などの設定がわからず、大津の二値化も含めてうまくいきませんでした。また、ガンマ値変更もやってみましたが効果はあまりなかったです。仰るとおりグレースケールのみで良いような気がします。

Tesseractの精度向上策としては、切り取った画像の周りに余白を追加するとOCRの精度が向上することがあります。この例では上下左右に8ドットの余白を追加しています。
変更前画像:https://i.imgur.com/kZ3aIye.jpg
変更後画像:https://i.imgur.com/zkNyAMl.jpg
切り取り領域の設定でどうしても文字ギリギリで指定しないといけないゲームもありますので、余白の追加は有効だと思います。
もう一つは、Tesseractのオプションで whitelist の指定をすることでした。自分の場合はアルファベットの英数字+記号(縦棒|は除く)のみを指定していました。これは、数字のイチ(1)、大文字のアイ(I)、小文字のエル(l) を縦棒(|)に誤認識することが多かったためです。

参考になれば幸いです。

27
ぬるっぽ 2020/05/14 (木) 02:14:43 修正 >> 24

参考意見ありがとうございます。

余白を設けるのは盲点でした、検討してみます。
whitelistについてですが、まだ画像の拡大をやってなかった頃か設定の方法が悪かったのか定かではありませんが、以前やった時は読取精度が著しく下がってしまったので元に戻した経緯があります。
もし宜しければ、synctam様の方で設定した具体的なwhitelistの文字リストをご提示頂けないでしょうか?
あと、重ねて質問で恐縮ですがwhitelistに読取対象の文字を全て列挙するのと、blacklistに除外文字だけを列挙するのとでは、読取精度に差が出るのでしょうか?
どちらもやってみた感じ、読取精度が逆に下がってしまったので設定方法か何かがまずかったような気がしてなりません・・・。(変化があったということは、設定自体は出来てたと思うのですが・・・)

画像の余白についてはC#のGraphicsクラスの操作に慣れていないため、少し時間がかかりそうなので、今回の更新からは外しますが、whitelistなどはすぐに反映できると思うので次回リリース時に反映しようと思います。

あと最後に確認しておきたかったのですが、「対象通り改行」や「原文を小文字化」チェックの保存単位はゲーム(プロセス)単位でよろしかったでしょうか?それともタイトル(領域)単位の方がよろしいでしょうか?

28

・動作環境について
自分は、tesseract-ocr v3.5.2.0 を使用していました。PCOTでは、tesseract-ocr 4.1.0 をお使いのようなので状況が異なるのかもしれません(v4系はOCRエンジンが大幅に拡張されたので私も移行したいのですが、まだ使い方がわかっていません)。

・ブラック/ホワイトリストについて
ブラックリストについてですが、自分は使ったことがありません。理由は、Tesseract-ocr で言語に英語を指定した場合の認識対象の文字種を調べる方法がわからなかったためです。認識対象の文字種がわかればブラックリストでも良いと思います。

・ホワイトリストの使用例について
Tesseract-ocr ホワイトリストのサンプルプログラムを Gist にアップしました。
https://gist.github.com/synctam/5b351411ca6062eff2b89173a87cb152
CatInnerTesseract.cs 31行目のコンストラクタでホワイトリストの設定を行っています。ホワイトリストの文字種は CatOcrDriverBase.cs 58行目の GetWhiteList() 関数で設定しています。どちらも、MITライセンスで公開しますので、ご自由にお使いください。

・「対象通り改行」について
領域ごとに保存できた方が良いと思います。この部分については、PCOTがどの様な処理を行っているのかわかりませんので、以前検討していた時のことを書きます。自分の場合は、改行が一つの場合は無条件に文を繋げてしまい、改行が二つ以上の場合は段落が別と捉えていました。しかし、この方式ですと、例えばアイテムの説明画面のようにアイテム名と説明文が繋がってしまい問題が発生しました。このように領域ごとに状況が異なるため領域ごとに指定できるのが良いと思います。

・「原文を小文字化」について
ゲーム(プロセス)単位で保存できた方が良いと思います。「原文を小文字化」は一律で行っても良いように感じます。

・「ダブルコーテーションを除去する」について
この前の投稿で言い忘れましたが、「ダブルコーテーションを除去」すると、一部の文章では翻訳精度が上がることがありました。以前検討していた時は、領域ごとに保存していました。

長くなりましたが、よろしくおねがいします。

29
ぬるっぽ 2020/05/14 (木) 16:12:13 >> 24

参考ソースまで貼って頂いてありがとうございます!

・ブラック/ホワイトリストについて

ただ・・・まことに残念なことにtesseract-ocr 4.1.0では、ホワイトリストが使えないようです・・・。
How to whitelist characters in tess4j version 4.1.*

使い始めた時にはそんなことはつゆ知らず・・・。せっかく参考ソースを貼って頂いたのにすみません。

・「対象通り改行」について
アイテム名と説明文

確かにそういう使い方が出来ますね。ならば領域ごとの保存が望ましいということですね。

・「原文を小文字化」について

>>「原文を小文字化」は一律で行っても良いように感じます。
とありますが、チェック機能そのものがなくていいという意味合いでしょうか?
元々「原文を小文字化」については、GoogleTranslateFreeAPIが大文字だけの単語や大文字だけの文章の翻訳精度が異常に悪かったので、読み取り箇所が全て大文字の場合は強制的に小文字にしています。
ただ、文章を一律小文字化すると頭大文字の段落や固有名詞などでは翻訳結果が変わるため、その場でユーザーが確認できるようにチェックして利用して頂くことを目的としていました。
文章全てが大文字だと強制的に小文字になる現在の仕様と、文章単位で強調表示としての大文字の単語が混在することを考えると、プロセス単位、領域単位で保存するメリットがあまりないように思いますがこれといった要件はありますか?

・「ダブルコーテーションを除去する」について

ダブルコーテーションについてですが、文章単位で翻訳精度が上下するので、PCOTでは領域単位やプロセス単位で持つのではなく、翻訳(読取)全体に関わる事だと思うので、辞書登録で処理タイプを「無視」とする仕様になっています。尚、辞書に登録した文言は「辞書一覧画面」にて、有効/無効を切り替えることが可能です。

30

・ブラック/ホワイトリストについて
2019/6にリリースされた v4.1.0 でサポートされたはずなのですが・・・
「Release 4.1.0 Release · tesseract-ocr/tesseract」
https://github.com/tesseract-ocr/tesseract/releases/tag/4.1.0
しかし、まだ上手く機能しているのか判断できませんね。しばらく様子を見た方が良さそうですね。

・「原文を小文字化」について
そうですね、その仕様であれば今のままで良いと思います。

・「ダブルコーテーションを除去する」について
その仕様で良いと感じました。

31
ぬるっぽ 2020/05/14 (木) 23:41:20 >> 24

・ブラック/ホワイトリストについて
確かに自分で貼ったリンク先の最後に「It has been fixed !」と書いてありますね、見落としてました。
とりあえず、仕様がまとまったことなので一旦要望は締め切ります。

32
ぬるっぽ 2020/05/16 (土) 00:52:18 修正

お知らせ:翻訳支援ツールPCOTを更新しました!

更新項目を以下に列挙します。

  • システム設定を追加
  • 簡易コマンド画面追加
  • 描画くずれを修正
  • 各種要望の反映
  • いくつかのバグ修正

    注意事項

    今回の更新により、画面を右上の「×」ボタンで閉じずにタスクトレイに常駐します。
    PCOTを終了させる場合は翻訳表示画面右下の「PCOTを終了」ボタンを押して終了させるか、タスクトレイのアイコンを右クリックして「PCOTを終了」を選択してください。

今回追加された簡易コマンド画面について

翻訳表示画面を最小化したり、「ESC」キーや右上の「×」ボタンで非表示にした場合、「簡易コマンド画面を使用」が有効になっていると、簡易コマンド画面が表示されます。
画像1
これは、翻訳に必要最低限のコマンドをまとめた機能になっています。対象がマウスカーソルから離れたら翻訳できないという場合などに利用してください。透明度を高くしておくとゲームの邪魔になりにくいです。
また、簡易コマンド画面は「ESC」キーで非表示にできます。簡易コマンド画面が非表示になった場合は翻訳表示画面が表示される仕組みです。今回の更新の目玉は間違いなくこの機能ですが、割と色々無茶したため、盛大にバグっている可能性があります。もしおかしな挙動をした場合はご報告お願いします。

システム設定画面について

今回の更新のもう一つの新機能です。システムの共通設定を行います。プログラム一覧画面から起動します。
画像1
こちらから原文、訳文それぞれのフォントとフォントサイズを指定できます。TOP画像にある通り、かなり色んな種類のフォントが指定できますが、フォントデータを読み込むのに多少画面表示に時間がかかる場合があります。ご注意ください。
DeepLとの連携についてもこちらで設定を行いますが、翻訳表示画面でも設定可能です。
前バージョンではDeepLと連携するかしないかの二択でしたが、今回翻訳後にDeepLを自動で起動するかどうかのチェックも追加されています。
これは何のためかと言うと、ゲーム(プロセス)によってはOCRの精度が悪い場合もあり、その状態で翻訳時にDeepLが問答無用で起動してしまうとDeepLを閉じる手間があるので、原文を辞書登録などで編集後に右クリックでDeepLを起動したい場合などに利用します。
最後は上記の説明にある今回追加した簡易コマンド画面の使用可否や簡易コマンド画面の透明度を設定することができます。
【注意】不透明度を最低値の「1」に設定すると、簡易コマンド画面が見えなくなります!

かなり色々と更新したので、恐らく不具合があると思います。その場合はこの掲示板にてご連絡ください。
以上です。あー疲れた。

38

更新お疲れ様です!
ボタンの表示バグが直ってること確認できました。
フォント指定でテキストもすごく見やすくなりました。簡易コマンドも、半透明度を増やすことで思った以上にゲーム画面上にあっても気にならずに使いやすかったです。

使ってみての細かい要望としては、翻訳文を読んだあと閉じるボタンを忘れてゲーム画面に戻ってしまうことが結構あったので、選択したプロセスをアクティブにした場合は自動的に簡易コマンドモードにするオプションがあると嬉しいかなと思いました。
あとテキストボックスの枠と文章の左端の間にもう数ピクセルの隙間があるともっと見やすくなるかなと感じました。

39
ぬるっぽ 2020/05/16 (土) 15:40:53 >> 38

ご報告ありがとうございます!
>>ボタンの表示バグが直ってること確認できました。

よかったです!この更新で一番意義があったかもしれませんw

>>フォント指定でテキストもすごく見やすくなりました。

原文に指定するフォントですが、見てお気づきの通り、(見た目上)大文字と小文字の区別がないフォントや、暗号さながらの記号ばかりのフォントがあるのでご注意ください。
全て大文字で表示されるフォントでも内部的には大文字小文字が分かれています。辞書登録には向かないので使用を控えてください。

>>簡易コマンドも、半透明度を増やすことで思った以上にゲーム画面上にあっても気にならずに使いやすかったです。

そういって頂けてとても嬉しいです!頑張った甲斐がありました。ショートカットには及ばないものの、代替機能としての利用は期待できそうですか?

>>テキストボックスの枠と文章の左端の間にもう数ピクセルの隙間があるともっと見やすくなるかなと感じました。

修正しました。最新版をDLして確認してみてください。

最後に・・・
>>使ってみての細かい要望としては、翻訳文を読んだあと閉じるボタンを忘れてゲーム画面に戻ってしまうことが結構あったので、選択したプロセスをアクティブにした場合は自動的に簡易コマンドモードにするオプションがあると嬉しいかなと思いました。

このご要望の件についてですが、正直いうと難しいです!w
というのも、「翻訳表示画面がアクティブでなくなった時に簡易コマンドモードへ移行する」のであれば割とすぐに実装できそうなのですが、「特定のプロセスがアクティブになった時に簡易コマンドモードへ移行する」だと、接続先のプロセスが現在アクティブかどうかを常に監視する必要があるのです。
前者と後者の明確な違いは、後者がゲームをアクティブにした時にだけ簡易コマンドモードに移行するのに対し、前者は試してませんが、恐らくデスクトップをクリックしても簡易コマンドモードに移行してしまいます。使う人によっては「あれっ消えた!?」となりかねないので実装に慎重にならざるを得ません。
ただ、後者が実現できるならその方がいいですよね。その場合はオプション設定ではなく、簡易コマンド画面を使用する場合に無条件でそのように動作するようにしたいのですがいかがでしょうか?
設定がたくさん出来ると一見自由度が高くて汎用性がありそうですが、設定の手間もどんどん増えていくので、オプション項目を増やすのは消極的です。

いずれにせよ、まず実現できるかどうか調査しますのでしばらく時間をください。
WinAPIを叩けば多分なんとか出来ると思うのですが、慣れてないのです・・・。
長くなりましたが、ご確認願います。

40

更新ありがとうございます!文章がさらに見やすくなりました。原文に指定するフォントの方も気をつけたいと思います。

>このご要望の件についてですが、正直いうと難しいです!w
>というのも、「翻訳表示画面がアクティブでなくなった時に簡易コマンドモードへ移行する」のであれば割とすぐに実装できそうなのですが、

翻訳を読んだあとの閉じるボタンを押す手間が減ってくれればいいなと思っていたので、もし前者の方が楽に実装できるなら自分はそちらでも大丈夫ですが、たしかに初めて使う方はちょっと混乱しちゃうかもしれませんね。

>設定がたくさん出来ると一見自由度が高くて汎用性がありそうですが、設定の手間もどんどん増えていくので、オプション項目を増やすのは消極的です。

それはたしかに…。自分もオプションが多すぎるツールは、どれがより重要・便利になる項目か逆にわからず結局デフォルトのままで使っちゃたりすることがあります。
前者・後者どちらの方法でもオプションなしの無条件で動作するよう実装するなら、Readmeに「ツールが画面から消えてしまった・小さくなってしまった」とかの項目を作って「~の場合自動的に簡易コマンドモードに移行するようになっています」という解説を付記しておくといいかもしれません。

41
ぬるっぽ 2020/05/17 (日) 00:37:05 >> 38

色々と考えてみたのですが、接続先のゲームのフォントの関係でOCRの読取精度があまりよくない場合、辞書登録で読みそこなった単語などを補完するような仕組みになっていますが、その際にゲームの文章でどこの単語を読み間違えたのかを翻訳表示画面と見比べて辞書登録を行うケースもあると思います。
そうした場合に、対象ゲーム画面を移動させた瞬間に簡易コマンドモードに移行してしまうと、画面を二つ並べて見比べるのに手間がかかってしまいます。

・文字だけだと分かりにくいかも知れないので、参考画像を用意しました。
画像1

このような場合、どちらかがどちらかに不便を押し付ける形になってしまいます。
ご存じかも知れませんが、翻訳表示画面は右上の「×」ボタンだけでなく、「ESC」キーで閉じることも可能です。
両方を活かす方策があれば言うことなしですが、幸いDeepLを閉じるのも「ESC」キーで閉じられますので簡易コマンドモードに移行するのは「ESC」キーを2回押すだけと思えばそこまで手間ではないと思いますが、如何でしょうか?

42

お返事ありがとうございます!

>そうした場合に、対象ゲーム画面を移動させた瞬間に簡易コマンドモードに移行してしまうと、画面を二つ並べて見比べるのに手間がかかってしまいます。

自分の場合OCRのキャプチャの一部に間違いがあった時などは、基本PCOTの方をアクティブにしたまま修正しているのでそういった問題は起こらないのですが、たしかにそういった部分はゲームによって変わってきますし、動かす必要のあるゲームの場合は機能が邪魔になってしまうかもしれませんね。

>ご存じかも知れませんが、翻訳表示画面は右上の「×」ボタンだけでなく、「ESC」キーで閉じることも可能です。

一度閉じ忘れてゲーム画面の方をアクティブにしてしまうと、ESCでも簡易モードにはならなくなってしまうのでそこを手間に感じてしまいました。元々自分の閉じ忘れぐせ?が発端の要望なので、閉じるくせを身につけるようにしたいと思います!

43
ぬるっぽ 2020/05/17 (日) 14:52:43 >> 38

ご理解が早くて助かります!そうなんですよね、アプリごとで理想の挙動が変わるのが難しいです。
一旦はご不便かと思いますが、今の仕様のまま継続してご使用頂きたいです。
ただ、NOFA様のおっしゃりたいことも分かるので、「これ!」という方法が見つかったら対応するかもしれません。
また何かありましたらお気軽にお問合せください。

33
ぬるっぽ 2020/05/16 (土) 01:03:11

私信です。
>>synctam様

[プロセス名].cfgファイルですが、PCOT起動直後に設定ファイルの不整合を自動で修正するようにしてみたので、まずは一度普通に起動して頂いてもいいですか?もしそれでおかしなことになったらお手数ですがご報告をお願いします。

34

要望を取り入れていただき、ありがとうございます。

・[プロセス名].cfgファイルについて
旧バージョンのフォルダーに上書きコピーし、普通に起動したところ、問題なく起動できました。
意図したとおりに動作しております。

・DeepLの起動について
システム設定で「DeepLと連携」と「自動的にDeepLを起動」がチェックされているにも関わらず、翻訳時に DeepL が自動起動されません。
何か確認すべきことがありますか?

35
ぬるっぽ 2020/05/16 (土) 13:07:34 >> 34

早速デグレましたね・・・すみません・・・orz
問題を切り分けるため、いくつか確認して頂きたいことがあります。

  • 原文右クリック時にはちゃんとDeepLが起動しますか?(私の環境では起動)
  • 自動でDeepLが起動する場合と起動しない場合がありますか?(私の環境ではそうでした)

どちらにせよ一度見てみますね。ご報告ありがとうございました。

37
ぬるっぽ 2020/05/16 (土) 13:23:04 >> 34

修正してみました。確認をお願いします。

46

遅くなりました、今ダウンロードして起動確認をしてみました。
どうも、DeepL が起動しないようです。
原文右クリック時も起動しません。

予め、DeepL を起動しておくと意図したとおりに翻訳してくれるのですが。

48
ぬるっぽ 2020/05/18 (月) 23:45:36 修正 >> 34

そんなぁ・・・orz
>>予め、DeepL を起動しておくと意図したとおりに翻訳してくれるのですが。
というのは、タスクトレイにある状態ではなくて、DeepLがアクティブじゃないか最小化されているだけという状態だと上手く翻訳してくれるという認識で合っていますか?
もし、DeepLがプロセスにない状態からだと無理というのなら、今の仕様です。

その場合もし「DeepLがプロセスにない場合は起動するようにしてほしい」という要望があれば、なんとかやってみますが・・・できるかどうかは確約しかねます。

51

すいません、勘違いしていました。
DeepLを全く起動せず、テストしていました。DeepLは起動しておかないといけないんですね。それであれば、問題解決です。
大変失礼しました。

44
ぬるっぽ 2020/05/17 (日) 17:35:17 修正

PCOTを更新しました。最新版をDLしてご利用ください。

  • いくつかのバグを修正しました。

私信です。
・synctam様
大分落ち着いた(?)のでOCRの読取精度の向上に注力したいと思うのですが、いくつか質問させてください。

・ホワイトリストについて
前にホワイトリストを取得するサンプルを頂いたと思うのですが、以前私がやったホワイトリストの設定方法は対象の文字を直接指定する方法でした。
参考URL:<http://notame.hatenablog.com/entry/2019/02/03/234131>
synctam様のサンプルにある文字コードを指定する方法と何か違うのでしょうか?
もし3.X系と4.X系のバージョン違いに起因する問題だったらすみません。

それとサンプルには文字種に「Ascii」と「Windows1252」とで分かれていますが、分ける意図はあるのでしょうか?サンプルソースから読み取った感じだと基本Asciiで問題ないという認識で合っていますか?

・余白について
余白をつけると読取精度が上がるという情報、とても為になりました。ありがとうございます。
そしてまたしても質問で恐縮ですが、数ピクセルの余白を付ける際、黒字に白の文字などでも文字通り白の余白を付けた場合、読取精度は上がるのでしょうか?もし試していたら結果を教えて頂きたいです。

最後にこの分野では知識が浅いため、恥も外聞もなく質問しています。もしお気を悪くされていたら申し訳ありません。

45

返事が遅くなってすいません。
Terrariaのアップデートが来ましてちょっとバタバタしてました。

・ホワイトリストについて
指定方法はリンクの通りでOKだと思います。自分の場合は、漏れに気が付きやすいように ASCII コード順に並べただけです。「Ascii」と「Windows1252」にわかれているのは、試行錯誤していたときの残骸です。ご指摘の通り ASCII のみで良いと思います。

・余白について
自分の場合は、黒地に白い文字に場合は、反転させて白地に黒い文字に変換していました。
特に意味はないのですが、条件を統一したほうが、認識精度向上のテストケースが減るかな?と考えたためです。

それとプログラムは趣味で覚えたものですので、詳しいことはわかっていません。画像処理やOCRも以前作成していた時にネットで調べたものです。ネットがあれば素人でも色々なことにチャレンジできる時代になったので、とてもありがたいです。

後ほど、最新版を使ってみたいと思います、ありがとうございました。

47
ぬるっぽ 2020/05/18 (月) 23:20:38 修正 >> 45

忙しい中お返事くださりありがとうございます。
・ホワイトリストについて
リンクの通りで良さそうとのことなので、試しにホワイトリストではなくブラックリストの方に「|」を指定してみました。
画像1
結果としてちゃんと「|」を無視してくれるようですね。
画像1
(※一番右のは紛らわしいですがIビームです)
前にちゃんと動作しなかったのは、画像側の問題だったかもしれません。

他に何かOCRの段階で無視した方がいい文字などありましたら、是非助言をお願いします。

・余白について
余白についてですが、画像の二値化を行わないので、決め打ちで白や黒を入れるのは難しいですね・・・。やれるとしたら画像の一番外側を拡張して引き伸ばす感じになるんでしょうかね?

・プログラムについて
ことプログラムの分野においては、素人玄人問わず、出来る人はすごいという認識です。
趣味であそこまでやれるのはすごいですね、素直に尊敬します。

フィードバックはモチベーション維持に直結しますので、どしどしください。また、こちらも質問させてください。

49

ブラックリスト上手く行きましたか、良かったですね。

・余白について
確かに難し問題ですね、仰るとおり一番外側の色で拡張するのが良いかもです。
ちなみに、画像処理は OpenCV が処理速度も早く楽に画像処理ができて便利です。時間のある時に試してみるのも良いと思います。

・無視した方がいい文字について
今のところ、思い当たる文字はありません。
以前検討していた情報がここ↓にあります。
「Issues · synctam/GCat4X」
https://github.com/synctam/GCat4X/issues?q=
あまり参考になる部分はないと思いますが、リンクを張っておきます。

あとOCRの精度については、Capture2Text のソース(OcrEngine.cpp や OcrEngine.h)を参考にしてはいかがでしょうか。
「GSam/Capture2Text: Linux CLI port of Capture2Text v4.5.1」
https://github.com/GSam/Capture2Text

50
ぬるっぽ 2020/05/19 (火) 21:46:22 >> 45

・余白について
ありがとうございます。
実を言うと画像の二値化を行った際に一度OpenCvSharpというのを使ってました。Bitmapで大津の二値化手法を試そうとしてネットで情報を得ようとしても、有料の記事だったり、数式や概念の様なもので難しすぎて挫折しました。
OpenCvSharpはBitmapとMat形式の相互変換で多少躓きはしたものの、処理自体は確かに簡単でしたね。
また時間のある時に手を出してみようと思います。

・「Issues · synctam/GCat4X」について
今もこのプロジェクトは継続中なのでしょうか?
私がこのツールを公開したからこそ、synctam様と直接交流できて喜ばしい反面「素直に待っておけば良かった!」という気持ちもあり、複雑な気分ですw
もしとん挫したのでなければ、日の目を見ることを楽しみにしています。
参考資料が必要であれば、連絡さえ頂ければPCOTのソースをソリューションごと渡してもいいです。
もちろん、その際の著作権は放棄します。
あ、でもアイコンだけはネットのフリー素材なので、流用しない方がいいと思います。

・Capture2Textについて
ソース公開されてたんですね、知りませんでした・・・。
OCRは仕事で有料のものを一度触ったきりで、完全に門外漢でした。今更ながら無知を晒して恥ずかしい限りです。

最後に、前のレスにも書きましたがDeepLが起動しない挙動について、返答頂いてもいいですか?

52

失礼しました、DeepLについては返信いたしました。
GCat4Xは、まだ仕様を確認している段階で動くものは何もありません。時間のある時に実現性の確認をしている状態で、まだ実現の目処は立っていません。ちょうどそんな時に、ぬるっぽさんから連絡があったので、情報を公開したという訳です。また、Github は、仕様をまとめるのに便利だったので使っておりました。という事で、現状では公開できるようなソースはありません。

53
ぬるっぽ 2020/05/20 (水) 01:03:03 >> 45

・DeepLについて
>>失礼しました、DeepLについては返信いたしました。
返信確認しました。こちらでDeepLについて今の所感を書きます。
まず更新内容の書き方が分かりにくかったですね、こちらこそすみませんでした。
DeepLのプロセス自動起動についてですが、前にPCOTとは全く関係ないアプリでレジストリからインストールディレクトリを検索する処理を書いたことがあるので、レジストリに名前が載ってさえいれば流用すればいけそうかなと思ったものの、翻訳が終わった後の後始末(プロセスを終了するか否か)をどうするかとか、あとはDeepLの設定を見る限り、無効時間を設定したり、ショートカットを拾って欲しくないプログラムを例外設定していく設計思想に倣うならば、基本常駐させるべきものという認識です。

・GCat4Xについて
長期ベースのプロジェクトということですね。
ならば即興で動くPCOTを作ったのは無駄ではなかったということですね。少し報われた気がします。
改めて、いつか公開されることを楽しみにしています。

あと別件になりますが、PCOTの要望にもGCat4Xの構想にもあったショートカットについてsynctam様の意見を伺いたいです。
私は簡易コマンド画面によってショートカットの実装を避けましたが、理由は前に書いた通りWindowsを含む、他アプリとのバッティングが怖かったからです。
極端な例を挙げると「CTRL+S」とキーコンフィグに設定してしまったら、他アプリで保存ができないみたいな弊害が起きたら困ると思ったからです。
なので決め打ちなら・・・とも思ったのですが、フリー選択はともかく、PCOTの機能の売りはsynctam様もご存じの通り固定翻訳です。別にフリー選択だけでいいならプロセスに接続するメリットはあまりありません。(最小化されていても勝手にアクティブになってくれる位のメリットはありますが・・・)
どうせショートカットを入れるなら固定翻訳もショートカットで機能してくれないと片手落ちに見えるのです。
その場合、固定翻訳はタイトル(領域)ごとに動的に変わってきます。そうすると、ショートカットの数も必然的に増減しますよね?(ベースキー*設定領域数)という感じで。
その辺をユーザーに設定させて後はバッティングしようがどうなろうが知らんと言ってしまうとあまりに無責任なので、PCOTは簡易コマンド画面の実装に落ち着いたわけですが、何か腹案はありますか?
もし良さそうな案があれば簡易コマンド画面を残すかどうかはともかく、今からでもショートカットの実装を検討します。

長くなってしまいましたが、ご確認ください。

54

・ショートカットについて
グローバルフックを使用した場合、CallNextHookEx()関数のコールを忘れなければ他のアプリに悪影響を及ぼす可能性を減らすことができると思います。ただ、利用者に対して正しい使い方と注意事項を説明する必要がありますね。

ちなみに、以前テストしていたバージョンでは、Ctrl+0 ~ 5 をそれぞれの領域の翻訳用に割り当てていました。
「synctamの雑談日記: ゲーム画面翻訳ツール作成中・・・その1」
https://synctamdiary.blogspot.com/2018/12/hdd-eschalon-book-eschalon-book-ocr-ocr.html
(各ボタンのキャプションに数字が書いてありますがこの番号がショートカットキーの番号です)
当時はまだキーは固定でしたが、変えたい時は設定ファイルを変更してテストしていました。グローバルフックを使用した理由は、「Eschalon: Book I」のキャラクター作成画面ではマウスオーバーした場所の説明が説明欄に表示される仕様のため、翻訳ボタンが押せなかったからです。

55
ぬるっぽ 2020/05/21 (木) 01:51:10 >> 45

お返事ありがとうございます。
なるほど、CallNextHookEx()関数を呼べばフックが継続する感じなんでしょうかね?(というか、基本呼べって書いてありますね)同じショートカットなら、処理の順番が変わるだけで両方そのショートカットの処理を行う感じでしょうか。でも、外部アプリの画面状態を強制的に変更するPCOTとは相性が悪い気もします・・・。

んー、でもやっぱり怖いですねw
注意喚起するにしても、皆が一様にReadmeを読んでくれるわけでもないですし・・・。
仕事柄、目的としたもの以外の外部アプリを巻き込む処理の実装には消極的(下手すると賠償問題に発展するので)なんですよね・・・。過剰反応していると思われたらすみません。

>>「Eschalon: Book I」のキャラクター作成画面ではマウスオーバーした場所の説明が説明欄に表示される仕様のため、翻訳ボタンが押せなかったからです。

一応、今の簡易コマンド画面でもかなり不格好ですが、簡易コマンド画面を対象項目に重ねて翻訳ボタンを押せば、説明欄の翻訳を行ってくれるので、一旦様子を見させてください。
あまり使ってくれてる人もいない気がしますが、これから先「ショートカットがどうしても欲しい!」という要望がたくさん挙がってきたら、慎重に対応します。

相談に乗って頂き、ありがとうございました。

56
ぬるっぽ 2020/05/21 (木) 03:39:48 修正

PCOTを更新しました!最新版をDLしてご利用ください。

更新項目を以下に列挙します。

  • OCR読取精度向上のため、"|"の文字をOCRの段階で無視するように修正。
  • 簡易コマンド画面を使用する場合、対象プロセスをアクティブにすると自動的に簡易コマンドモードに移行するように修正。
  • 簡易コマンド画面の表示状態が不安定だったのを修正。
  • 他バグ修正。

以下私信です。
>>NOFA様
遅くなりました!やっと納得いく仕様に漕ぎつけたので、ご要望の通りに修正しました。
一応、各種アプリのアクティブ時の振る舞いを以下に列挙します。

  • 対象プロセスがアクティブになると無条件で簡易コマンドモードへ移行
  • 対象プロセスがアクティブな状態から他のアプリ(デスクトップ含む)をアクティブにした場合、翻訳表示画面を表示
  • 翻訳表示画面を「ESC」キーや「X」ボタンで非表示にしていた場合、対象プロセスのアクティブを外した場合でも、簡易コマンドモードを維持

以上になります。
一応動作確認をしていますが、もし何かおかしな挙動をした場合はお手数ですがご報告願います。

57

>遅くなりました!やっと納得いく仕様に漕ぎつけたので、ご要望の通りに修正しました。

実装ありがとうございます!閉じるクセを身につけるといったものの、やはり閉じ忘れが多かったのでさらに手軽に翻訳できるようになりました。動作の方も問題ありませんでした。

58
ぬるっぽ 2020/05/24 (日) 23:11:09

PCOTを更新しました。

今回はバグ修正のみです。
普通に使っていれば気づかないバグが大半だったので、細かい修正項目には触れません。
一応一つだけ、重要そうなのを以下に記します。
タイトル作成画面で既に作成済みのタイトルをリネームしようとするとタイトルを更新できないバグがありました。
今回の修正で直っている筈なので、最新バージョンに差し替えてご利用ください。

とりあえず大体安定してきたと思うので、そろそろ本格的に説明書を作ろうかどうか悩んでます・・・。
利用人口も全然把握できてないので、詳細に作っても意味ないかもとも思っていますが・・・。
画像付きでちゃんと説明書を作って欲しいよーって方がいたらコメントをお願いします。

59
ぬるっぽ 2020/05/28 (木) 00:58:17 修正

PCOTを更新しました!最新版をDLしてご利用ください。

更新項目を以下に列挙します。

  • タイトルコンボボックスの並びを登録順ではなくタイトル順で表示するように修正。
    タイトル名を編集した場合は再起動後に適用されます。
  • 原文内の単語が強調表示などで全て大文字だった場合に、強制的に小文字に変換するように修正。文章全てが大文字だった場合は従来通り文章全てを強制的に小文字に変換します。
    ※この修正により「原文の小文字化」は不要になった感はありますが、OCRが読みそこなった場合に、大文字と小文字が不自然に乱立する場合があるので、そのまま残しています。
  • 簡易コマンド画面上から簡易コマンド画面の不透明度を設定できるように修正。
    簡易コマンド画面の上で「CTRL+マウスホイール回転」で簡易コマンド画面の不透明度を増減させることができます。
    画像1
    ※画像にある通り、現在の不透明度が1%~100%の間で表示されます。
60
ぬるっぽ 2020/06/04 (木) 01:46:23 修正

告知:ショートカットキーを実装します!

この度、ショートカットキーを実装することにしました。理由として、NOFA様やものろぐ様や他の方からショートカットキーの要望がそれなりにあったので。使用は完全に自己責任ということでお願いします。
以下に概要を記します。

【概要】

グローバルフックでキー入力を監視し、設定したキーが押された場合に、対象の翻訳を行う。
有効なショートカット:
・固定翻訳の1~9
・フリー選択

ショートカットキーの種類
「CTRL(任意) + SHIFT(任意) + ALT(任意) + WIN(任意)」 + 0~9(固定)という形になります。
「」カッコ内を仮にベースキーと呼びます。
固定値の0~9については「1~9」が固定翻訳のコンボボックスの順番(※)と紐づきます。
固定値の「0」がフリー選択に紐づきます。
(※)固定翻訳を10個以上増やした場合は10番目以降はショートカット対象外とします。

【注意】

  • ベースキーをWinキーのみでショートカットを設定すると、タスクバーのクイック起動とバッティングします!!
  • ベースキーをShiftキーのみでショートカットを設定すると、記号入力(!”#$など)とバッティングします!!
     
    これから組み始めるので実装にどれくらいかかるか分かりませんが、乞うご期待!
    というか、こうして告知して自分を追い込まないとモチベーションが保てないのです・・・。
     
    以下、私信です。
    ものろぐ様
    ブログでPCOTを紹介してくださってありがとうございました!
    とても嬉しくて該当記事にコメントしようとしたのですが、謎の禁止ワードに阻まれて投稿できなかったのでこちらでお礼を言わせてもらいます!
61
ぬるっぽ 2020/06/12 (金) 19:39:32

PCOTを更新しました。(β版)

今回の更新はショートカットのお披露目・・・なんですが、実を言うとまだ完成していません。
予想に反して実装が難しかったので、まだショートカットキーの設定はできません。一応技術的な難所は越えたのでベータ版ということで公開します。
何度も念を押しますが、ご使用は自己責任でお願いします。

それでは早速、使用方法と注意点について説明します。

【概要】

  • プロセス一覧画面からシステム設定で「簡易コマンド画面使用」のチェックを外すと、ショートカットが使用できます。
  • ショートカットは「CTRL+SHIFT+数字キー」で動作します。数字キーは「0」がフリー選択で、「1~9」が固定翻訳になります。固定翻訳の数字は翻訳表示画面にあるコンボボックスの順番と連動しています。押した数字にタイトル設定が存在しない場合は当然ですが、何も起こりません。

注意点

  • ショートカットと簡易コマンド画面は併用できません。これは、グローバルフックの監視を翻訳表示画面で行っているためです。
  • ショートカットを使用する場合、翻訳表示画面を非表示にすることができません。「×」ボタンや「ESC」キーを押しても最小化するだけです。不具合ではありません。(何故かタスクバーに翻訳表示画面が残ってないと安定動作しないのです・・・)
  • 現状、ショートカットの指定はできません。次回更新時に正式版として実装する予定です。もし、対象プロセスでショートカットキーがバッティングしてしまった場合は、次回更新時まで簡易コマンド画面の使用を推奨いたします。
     
    使用した感想など、要望も含めて是非こちらでコメントください。作者の励みになります。