前回の記事でも取り上げた、eighttails氏が公開されたOCRソフト、「Program List OCR」でいくつかのプログラムリストを認識させてみました。
プログラムリストとプリンターの関係について
プログラムの打ち込み経験のある方ならご存知かと思いますが、当時の出版物に掲載されたリストは、プリンターで出力したものをそのまま掲載するという形を採っていました。そしてよく見ると、雑誌によって、あるいは機種によって、リストの字体が異なっているのに気づかされます。
これは、FMシリーズ対応、PCシリーズ対応、MZシリーズ対応……といったように、各々のPCに対応したプリンターが存在したためです(ただし、複数の機種に対応したプリンターも少なくはありませんでした)。各プリンターが持っているフォントの字体がそれぞれ異なるため、様々な字体によるリストが掲載されることとなったわけです。
さらに、たとえばFMシリーズ対応プリンターは多数発売されていたので、雑誌AはX社のプリンター、雑誌BはY社のプリンター……というように、同じFMシリーズ用のリストでも雑誌ごとに字体が異なることとなりました。もっといえば、同じ雑誌でも年代によって採用プリンターが変わったりもしています。
これらのことはたとえば、多数の機種のリストが掲載されていた「マイコンBASICマガジン」を見るとよくわかります。リストを見ただけで、どの機種用のプログラムかがわかるというケースもありました。
それでも、現在の一般的なOCRソフトは多少の字体の違いも読み取ってくれるものですが、当時のプリンターは解像度が低かったのに加え、前述のようにプリントアウトしたものをそのまま掲載しているため鮮明さに欠けるケースも多く、OCRで認識させるのは困難であろうことは容易に想像できます。
にもかかわらず、この「Program List OCR」は高い精度でリストを読み取ってくれます。PC-6001用リストに合わせて言語ファイルを作ってあるということですが、前回の記事でも取り上げたように、FM-7用リストでもきちんと読み取ってくれました。
とはいっても、FM-7用リストも掲載誌、あるいは時期によって様々な字体が使われており、一括りにできるものではありません。そこで検証の意味も含めて、4つほどのプログラムリストを認識させてみました。イメージ化を行なう際の参考になれば幸いです。
なお、リストのスキャン画像は、「Program List OCR」のマニュアルにあるように600dpiで取り込み、画像補正やグレースケール化などを施したものを読み取らせています。リストの編集には「サクラエディタ」を使用し、行番号、予約語、REM文、ダブルクォーテーション内文字などに色づけをして見やすくしてあります。フォントはVLゴシックを使っています。