入力として ( Redmonから) プリンターに送られるデータ ストリームを取得するアプリケーションを作成しています。データ ストリームには、モノクロ ビットマップとしてレンダリングされたテキストが含まれており、プリンターはそれを紙に印刷するために使用します。このデータ ストリームを解析し、プリンターに送信されるテキストを理解する予定です。私のアプリケーションは、任意の Windows アプリケーションから送信されてプリンターに送信されるデータを解析します。
データ ストリームを解析する方法は、ピクセル情報を (バイト単位で) 照合することです。完全に一致する場合は、文字を一意に識別できます。このため、すべての Windows アプリケーションが同じ Windows レンダラーを使用してフォントをピクセル単位でレンダリングすると想定しています。したがって、これらのアプリケーション(Javaベースのものを含む)がテキストを印刷するために同じフォントとフォントサイズを使用する場合、特定の文字に対して常に同じバイトシーケンスを取得します。これは正しい仮定ですか、それとも Windows は印刷用にテキストをレンダリングするためのさまざまなオプションをアプリケーションに提供しますか?
また、モノクロのビットマップ データを使用して文字認識を行うためのライブラリはありますか?
注: 私が使用しているプリンターは、ESC/POS 互換プリンターです。これらのプリンタのプリンタ ドライバは、印刷するデータをモノクロ ビットマップとして送信します。