PDFへの入力&印刷(Illustrator使用)

PDFの用紙への入力に関するメモです。

様式がPDFで提供されているケースを想定しています。
ここでは、Adobe Illustratorを使います。

他に、Acrobatでも入力もできますが、整形しにくく、あまり使いやすくありません。印刷で使うなら、フリーのPDF-Viewerの方が使いやすいです。
PDFに入力欄がきちんと設定されている場合は、Acrobatでいいです。

Illustratorでの手順

設定

OCRのマスへの入力は、字体が指定されていれば、英数字はOCR-HNフォント、カタカナはOCR-HKフォントを使います。
こちらが、OCR-HN, OCR-HKの字体です。

労働者災害補償保険 様式第5号の標準字体
カタカナOCR-HKJIS X9005
数字OCR-HNJIS X9006
英字OCR-HAJIS X9007
記号OCR-HSJIS X9008
ひらがなOCR-HHJIS X9009
漢字OCR-HC参考JIS X9009
OCR手書き文字の規格

字体の定義は例示くらいで、細かくは定義されていません。
製品としては、カルチ手書きOCR TrueTypeフォントパック 16,500円があります。OCR-HN,HS,HA,HK,HHが含まれます。

他に、OCR-A,B,Kのフォントがあります。OCR-H*が手書き向けで、こちらは印字向けです。明確に字体が定義されています。

同様に並べたOCR-Kの字体

パブリックドメインで同じ字体のフォントがあるので、そちらでいいかと思います(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. とりあえず、1行分を入力します
  2. 必要なら、全文字を選択して、フォントを切り替えます。
  3. 枠に適切なフォントサイズにします。この場合、16ptにしています。この段階では、全体がずれていてもOKです。
  4. 先頭の文字が最初の枠にきれいに収まるようにします。
  5. 文字間隔(右下の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);
}

その他

印刷

印刷は、レーザープリンタで出力します。
レーザープリンタは縁なし印刷ができないので、縁で印刷が途切れて困る場合は、一回り大きい紙に印刷したあとに切り抜きます。この方法が必要になることはほとんどありません。

印刷済みの用紙に書き出すときは、一旦スキャナで取り込んだ後に記入して、用紙内容は印刷せずに、記入内容だけ印刷します。この方法が必要になることはあまりありません。たまにあります。複写式の用紙は、ドットインパクトプリンタを使ってください。

コメントする