PDFの用紙への入力に関するメモです。
様式がPDFで提供されているケースを想定しています。
ここでは、Adobe Illustratorを使います。
他に、Acrobatでも入力もできますが、整形しにくく、あまり使いやすくありません。印刷で使うなら、フリーのPDF-Viewerの方が使いやすいです。
PDFに入力欄がきちんと設定されている場合は、Acrobatでいいです。
Illustratorでの手順
設定
OCRのマスへの入力は、字体が指定されていれば、英数字はOCR-HNフォント、カタカナはOCR-HKフォントを使います。
こちらが、OCR-HN, OCR-HKの字体です。
カタカナ | OCR-HK | JIS X9005 |
数字 | OCR-HN | JIS X9006 |
英字 | OCR-HA | JIS X9007 |
記号 | OCR-HS | JIS X9008 |
ひらがな | OCR-HH | JIS X9009 |
漢字 | OCR-HC | 参考JIS X9009 |
字体の定義は例示くらいで、細かくは定義されていません。
製品としては、カルチ手書きOCR TrueTypeフォントパック 16,500円があります。OCR-HN,HS,HA,HK,HHが含まれます。
他に、OCR-A,B,Kのフォントがあります。OCR-H*が手書き向けで、こちらは印字向けです。明確に字体が定義されています。
パブリックドメインで同じ字体のフォントがあるので、そちらでいいかと思います(ocr-bk ccで検索すると出てきます。)。このページでの説明は、そのフォントを利用しています。
仕事で使用する場合は、リコーのHGOCR-BKか、カルチのフォントが良いと思います。
リコー HGOCR-BK 19,800円
カルチ OCR-A/B/K TrueTypeフォントパック 16,500円
他の入力については、HGS教科書体がお勧めです(全部こちらでもいいです)。
IPAmj明朝も結構良いです。
HGSはリコーのフォントですが、類似フォントがいくつかあります。
記号、英数字 | 半角カナ | 非漢字 | 漢字 | |
HG | 等幅 | 等幅 | 等幅 | 等幅 |
HGP | プロポーショナル | プロポーショナル | プロポーショナル | 等幅 |
HGS | プロポーショナル | プロポーショナル | 等幅 | 等幅 |
PRO | プロポーショナル | 等幅 | 等幅 | 等幅 |
取り込み
入力
入力例
数字はBOLDにしているわけではなく、OCR文字は規格でこの大きさに対してこの太さになります。
枠内への文字入力
- とりあえず、1行分を入力します
- 必要なら、全文字を選択して、フォントを切り替えます。
- 枠に適切なフォントサイズにします。この場合、16ptにしています。この段階では、全体がずれていてもOKです。
- 先頭の文字が最初の枠にきれいに収まるようにします。
- 文字間隔(右下のVA)を調整して、全ての文字が枠に収まるようにします。等幅フォントなので、末端の文字が枠の中心になるようにすれば、全て収まるはずです。
複数行をまとめられますが、内容の書き換えでずれると面倒なので、1行ごとにするのが良いでしょう。
OCR文字以外も同じです。HGS教科書体を使いました。
発展
一度位置決めしたら、等幅フォントなので、基本的には入力を入れ替えても使えます。
スクリプトを組めば、CSVファイルから情報を取得して、個別のPDFを作成したりできます。
開いているドキュメントのテキストフレームで “400 8501” の部分を “123 4567” に置き換えて、デスクトップにtest1.pdfを書き出す例。
{
var doc = app.activeDocument;
var texts = doc.textFrames;
for (var index = 0; index < texts.length; ++index) {
var string = texts[index].contents;
if (string === "400 8501") {
texts[index].contents = "123 4567";
}
}
var pdfFilename = "~/Desktop/test1.pdf";
var pdfFile = new File(pdfFilename);
var options = new PDFSaveOptions();
options.compatibility = PDFCompatibility.ACROBAT8;
options.viewAfterSaving = false;
doc.saveAs(pdfFile, options);
$.writeln("write a pdf. filename:" + pdfFilename);
}
その他
印刷
印刷は、レーザープリンタで出力します。
レーザープリンタは縁なし印刷ができないので、縁で印刷が途切れて困る場合は、一回り大きい紙に印刷したあとに切り抜きます。この方法が必要になることはほとんどありません。
印刷済みの用紙に書き出すときは、一旦スキャナで取り込んだ後に記入して、用紙内容は印刷せずに、記入内容だけ印刷します。この方法が必要になることはあまりありません。たまにあります。複写式の用紙は、ドットインパクトプリンタを使ってください。