Paper Forms Barcode の使用

Paper Forms Barcode に一意のキャプションを指定するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットの「フィールド」タブをクリックし、「ラベルを自動生成」の選択を解除して、「ラベル」ボックスにキャプションを入力します。

Paper Forms Barcode のキャプションを生成するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットの「フィールド」タブをクリックし、「ラベルを自動生成」を選択します。

Paper Forms Barcode のコードを指定するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットの「フィールド」タブをクリックし、コードリストから次のいずれかのオプションを選択します。

    • PDF417

    • QR コード

    • データマトリクス

    注意: QR コード、DataMatrix または GS1 DataMatrix バーコードが含まれたフォームへの記入には、Acrobat 7.0.5 以降または Adobe Reader 7.0.5 以降が必要です。QR コードおよび DataMatrix のバーコードのデコードは、Barcoded Forms 7.0 ではサポートされていますが、Barcoded Forms 7.0 Standalone(ST)ではサポートされていません。

Paper Forms Barcode のスキャン方法を指定するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットの「フィールド」タブをクリックし、スキャン方法リストから次のいずれかのオプションを選択します。

    • ハンドヘルドスキャナー

    • ファックスサーバー

    • ドキュメントスキャナー

    • カスタム

  3. 「カスタム」を選択した場合は、独自のデコード設定を指定することができます。

Paper Forms Barcode のカスタムデコード設定を指定するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットの「フィールド」タブをクリックし、スキャン方法リストで「カスタム」を選択します。

  3. デコードプロパティを変更するには、プロパティ名の隣にある値リストで値を選択します。

    注意: ハンドヘルドバーコードスキャナーを使用してバーコードをデコードする場合は、10.16 センチよりも幅が広いバーコードを作成しないでください。一般に、ハンドヘルドスキャナーでは、高さが高くて幅が狭いバーコードの方が適しています。

Paper Forms Barcode のデータエンコード方法を管理するには

フォームデザインで Paper Forms Barcode オブジェクトを使用するときは、バーコードがデータのエンコード時に使用する形式とエンコード対象のデータを指定しなければなりません。次のデータ形式を指定することができます。

  • XML

  • 「区切り」

どちらのオプションも、Paper Forms Barcode オブジェクト対応のスクリプトを提供します。このスクリプトが、データのエンコード時に、特定のデータ型を使用するよう Paper Forms Barcode オブジェクトに指示を与えます。

また、独自のスクリプトを使用してデータをエンコードすることもできます。詳しくは、 Paper Forms Barcode でのデータエンコード用のカスタムスクリプトを作成するには を参照してください。

Paper Forms Barcode オブジェクトのデータ取得方法を定義するには、オブジェクトパレットの「値」タブのオプションを使用します。また、エンコード前にデータを圧縮するかどうかを指定することもできます。

バーコードデータをエンコードするスクリプトを自動生成するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットの「値」タブをクリックし、「自動スクリプティング」を選択します。

  3. フォーマットリストから次のオプションの 1 つを選択します。

    • XML

    • 「区切り」

  4. (オプション)「フィールド名を含む」および「ラベルを含む」を選択します。

  5. 適用先リストから次のオプションの 1 つを選択します。

    • フォーム全体のデータ

    • コレクションデータ:コレクションメニューからコレクションを選択します。

エンコーディング前にデータを圧縮するには

  1. フォームデザイン上で、Paper Forms Barcode を選択します。

  2. オブジェクトパレットで「値」タブをクリックし、「エンコーディング前にデータを圧縮」を選択します。

Paper Forms Barcode でのデータエンコード用のカスタムスクリプトを作成するには

データのエンコード時に政府仕様やその他の仕様に従わなければならない場合には、事前定義されているデータエンコードオプションでは要件を満たせないことがあります。「カスタム」オプションを選択すると、データのエンコード時に独自のスクリプトを使用することができます。このスクリプトは次の例のように非常に単純なものでもかまいません。

this.rawValue=NumericField1.rawValue

逆に、どのフィールドをエンコードするかを特定の条件に基づいて決定するような複雑なスクリプトを作成することもできます。

  1. フォームデザイン上で、Paper Forms Barcode オブジェクトを選択します。

  2. オブジェクトパレットで「値」タブをクリックし、「自動スクリプティング」を選択解除します。

  3. スクリプトエディターで、サンプルカスタムスクリプトを修正することも、独自のスクリプトを作成することもできます。

例えば、次のサンプルコードは、フォームのフィールド値を取得した上で、フォームのフィールド値を含むカンマ区切り値(CSV)インスタンスを表す文字列を形式設定し、インタラクティブ PDF フォーム用に Paper Forms Barcode を更新する、JavaScript スクリプトを示しています。このフォームには、 accountNum formerFirstName formerMiddleInitial formerLastName newFirstName newMiddleInitial および newLastName という名前のフィールドが含まれています。

// This function ensures that the barcode will update 
// when a change is made to any field on the form. 
function depends(node) 
{ 
for (var i = 0; i < node.nodes.length; ++i) 
{ 
var child = node.nodes.item(i); 
if (child.isContainer) 
depends(child); 
} 
} 
// Return a field surrounded by quotes and followed with a separator 
function fmtField(fieldName, separator) 
{ 
      var str = "\"" + fieldName.rawValue + "\"" + separator; 
      return str; 
} 
// Force all fields in the form to be updated in the dataset 
depends(xfa.form);  
// Generate the CSV string that will be encoded in the barcode 
var comma = ","; 
var newLine = "\n"; 
var s = fmtField(accountNum, comma); 
s += fmtField(formerFirstName, comma) 
s += fmtField(formerMiddleInitial, comma); 
s += fmtField(formerLastName, comma); 
s += fmtField(newFirstName, comma) 
s += fmtField(newMiddleInitial, comma); 
s += fmtField(newLastName, newLine); 
// Assign the string to the barcode for encoding 
this.rawValue = s;

レガシーエンコーディング形式を使用するには

デフォルトでは、Designer は XFA JavaScript 関数 xfa.record.saveXML() を使用する新しいエンコーディング形式を使用して XML エンコードデータを作成します。ただし、古い関数 xfa.datasets.saveXML() を使用するレガシーエンコーディング形式を使用することもできます。例えば、古い XML 形式のみを解析できるアプリケーションを使用してバーコードデータを含むフォームを処理する場合に、この方法を使用できます。

レガシーエンコーディング形式は、Designer 7.0 ~ 8.0 の Paper Forms Barcorde XML スクリプトで使用されます。レガシーエンコーディング形式を含むフォームを開くと、「レガシーフォーマットを使用」オプションが自動的に選択されます。

  1. フォームデザイン上で、Paper Forms Barcode オブジェクトを選択します。

  2. オブジェクトパレットで、「値」タブをクリックします。

  3. フォーマットリストから「XML」を選択し、「レガシーフォーマットを使用」を選択します。

区切り文字を指定するには

フィールド名、フィールド値、バーコードラベルなどのフィールドデータを区切るために使用される区切り文字を選択できます。

復帰以外のすべての区切り文字では、最初の行がオプションのバーコードラベル見出しで始まり、それにフォームオブジェクト名が続き、区切りと改行文字で終わります。2 番目の行はバーコードラベルで始まり、それにフォームオブジェクトデータが続き、区切り文字と改行文字で終わります。デフォルトでは、バーコードラベルはグローバル一意識別子(GUID)です。

復帰の区切り文字では、フィールド名、バーコードラベルおよびフィールド値が複数の行にわたって表示されます。最初にフィールド名とバーコードラベルが別個の行に表示され、それに続いて復帰、改行文字、フィールド値がそれぞれ別の行に表示されます。

フォーム内のフィールド名またはフィールド値が空の場合、バーコードエンコードスクリプトは区切り文字を挿入し、次のフィールド名またはフィールド値をエンコードします。バーコードデータには、空のテキストのプレースホルダーとしての空白や特定のマークは含まれません。

注意: すべての種類の区切り文字で、フィールド名とバーコードラベルをバーコードコンテンツに含めるかどうかを制御できます。これを行うには、オブジェクトパレットの「値」タブで「フィールド名を含む」オプションと「ラベルを含む」オプションを選択します。

Paper Forms Barcode の区切り形式を選択する場合、デコードを正しく行うために、フォーム内のテキストコンテキストの一部と重複する区切り記号は使用しないでください。つまり、区切り記号として、Paper Forms Barcode のフィールド値に含まれていない文字を使用します。例えば、タブ、コンマまたはスペースを区切り記号にする場合は、デコーダが混乱することを防ぐため、エンコーディングするフォームフィールドのコンテンツにタブ、コンマまたはスペース文字が含まれていないことを確認します。

フォームのコンテンツが変更されたために、最初に区切り記号として選択した文字がコンテンツの一部と重複する場合は、別の文字を区切り文字として選択できます。

注意: 「復帰」オプションを区切り文字として選択しないでください。復帰文字は、ヘッダー行と値行の区切り文字として Paper Forms Barcode の値で既に使用されています。
  1. フォームデザイン上で、Paper Forms Barcode オブジェクトを選択します。

  2. オブジェクトパレットで、「値」タブをクリックします。

  3. フォーマットリストから「区切り」を選択し、区切り記号リストから目的の区切り記号の種類を選択します。

文字エンコーディングを指定するには

バーコードにエンコードされた値の文字エンコーディングは指定できます。

  1. フォームデザイン上で、Paper Forms Barcode オブジェクトを選択します。

  2. オブジェクトパレットで、「値」タブをクリックします。

  3. 文字エンコーディングリストから、必要条件に応じてオプションを選択します。