編集可能なレイアウトを含むフォームのデザイン上のヒント

フォームの複雑さは、Adobe Reader による文書のレンダリングまたは再レンダリングの時間に大きく影響します。フォームの複雑さを判定する方法はいくつかありますが、主にフォームに表示されるオブジェクト数が目安になります。多数のオブジェクト、サブフォーム、ページを含む複雑なフォームデザインでも、一度に表示される数が限られる場合は、特に問題はありません。「配置」が「非表示」に設定されたオブジェクトは無視され、配置やレンダリングに時間がかからないので、問題なく実行できます。

編集可能なレイアウトを含むフォームを作成する場合は、次の事項に注意してください。

一般

  • フォームデザイン全体の複雑さを軽減します。

    • スタティックテキストオブジェクトの代わりにフィールドキャプションを使用します。

    • 不要な場合はキャプションをフィールドから削除します。

    • 線を描画せずに境界線を指定します。

    • オブジェクトの代わりにサブフォームの余白を指定してサブフォーム間に間隔を追加します。

    • 重複するオブジェクト、スクリプト、構成要素の中で、フラグメント、スクリプトオブジェクト、グローバルフィールドに置き換えられるものは削除します。

  • 明示的な改ページか、暗黙的な改ページのどちらか一方を使用します。

    • 暗黙的なページ番号を使用すると、マスターページは、オカレンスの最大値と最小値に基づいて、階層に表示されている順番でインスタンス化されます。

    • 複雑なフォームで明示的な改ページは使用でき、必要な場合も多いですが、複雑なフォームの作成に必ずしも必要ではありません。

  • レイアウトの作業から開始し、次にダイナミックな動作およびスクリプティングを追加します。

  • 固定レイアウトをできるだけ使用します(サブフォームなどのコンテナの子が 1 つの場合など)。

  • 固定サイズのオブジェクトをできるだけ使用します。

  • コンテンツ領域のサイズを変更し、重ねて表示しない他のオブジェクト(ページ番号、タイトル、ロゴなど)のスペースをページ上に十分に確保します。透かしは本来重なり合うコンテンツです。

  • 列のレイアウトでは、複数のコンテンツ領域またはテーブルを使用するようにします。コンテンツを 1 つの列から他の列にフローするには、コンテンツ領域を使用します。各列のコンテンツを横に整列するには、テーブルを使用します。ヘッダー行とフッター行がないテーブルを作成します。

サブフォーム

  • フローサブフォームを位置固定サブフォーム内に配置しないようにします。固定サブフォーム内に配置すると、改ページ、重なり合うオブジェクトおよび繰り返しサブフォームに問題が生じます。

  • サブフォーム内のオブジェクトが可変サイズのデータとマージされる場合は、これらのオブジェクトが別のオブジェクトの領域に重なるまで拡大されないよう確認します。拡大可能なオブジェクト(テキストフィールドなど)は、別のオブジェクトの上に重なってレンダリングされる場合があります。サブフォームがコンテンツをフローし、コンテンツに合わせて拡大するよう設定します。

  • サブフォームを作成したら、その幅がコンテンツ領域の幅と同じになるようにサイズを変更します。サブフォームのサイズ変更は、サブフォームにオブジェクトを配置する前に行います。サブフォームのサイズ変更をオブジェクトの配置前に行うと、サイズ変更後にサブフォームの子を再配置する必要がありません。

  • オーバーフローリーダーサブフォームおよびオーバーフロートレーラーサブフォームは常に位置固定コンテンツに設定し、「改ページを許可する」オプションを選択解除します。このように設定しないと、レンダリングされたフォームでヘッダーが重複したりフィールドが重なり合ったりするなどのエラーが発生する場合があります。

  • 改ページするサブフォームには、オーバーフローリーダーサブフォームおよびオーバーフロートレーラーサブフォームを指定します。

  • サブフォームの子に合わせてサブフォームのサイズをすばやく変更するには、レイアウトパレットの「自動調整」オプションを選択し、次にそれを無効にします。

  • 名前がないサブフォームには一意の名前を付けることをお勧めします。サブフォームに名前を付けると、スクリプティングが容易になり、階層ビューでオブジェクトを指定しやすくなります。名前がないサブフォームは、データのマージに関与しません。名前が付いたサブフォームも関与しないようにするには、そのサブフォームの連結タイプを「なし」に設定します。

    注意: 構造がなくサイズの大きいインタラクティブ PDF フォームを作成すると、エンドユーザー側でフィールド間のタブ移動の動作が遅くなることがあります。この問題は、タグ付けしないでフォームを保存すれば避けられます。ただし、フォームにアクセシビリティ機能が必要な場合は、タグ付き PDF としてフォームを保存する必要があります。この状況に対処するには、フォームのセクションを名称未設定のサブフォームに含めます。これにより、必要な構造がフォームに追加されます。
  • マスターページには複数のコンテンツ領域を追加できます。コンテンツ領域には、ページ上のコンテンツの位置に関係なく、階層ビューに表示されている順序でコンテンツが入力されます。

  • 準拠フォームを作成する場合は、Acrobat を使用して文書を比較します。Acrobat のアドバンストメニューで「文書を比較」を選択します。

  • サブフォームの余白を設定すると、予期しない結果が生じる場合があります。大半のサブフォームのコンテンツは位置固定であり、高さが固定されています。余白を追加すると、サブフォームのコンテンツがオフセットされ、その下のオブジェクトが重なり合います。

  • サブフォームのコンテンツを正確に含めるには、「拡大して合わせる」オプションを使用する方法以外に、レイアウトパレットにあるプロパティを使用してサブフォームのサイズを変更する方法があります。Designer に付属しているサンプルフォームは、両方の方法を使用しています。

Accessibility

  • アクセシビリティタグは、左から右へ、上から下へと生成されます。アクセシビリティの問題は、コンテンツの位置が固定されたサブフォームで、オブジェクトが正確に配置されていない場合に発生することがあります。

スクリプティング

  • スクリプティング時は、マスターページのオブジェクトの initialize イベントにコードを入力しないようにします。以前のバージョンの Adobe Reader では、マスターページのオブジェクトに initialize イベントを使用すると、必要以上に実行されます。この余分なスクリプトの実行により、フォームのパフォーマンスが低下します。別のイベント(calculate イベントなど)をできるだけ使用してください。

データバインディング

  • データ接続がある場合は、オブジェクトをデータ接続に連結するか、連結の種類を「なし」に設定します。また、相対連結参照を使用します。繰り返しサブフォームに連結されていない繰り返しデータは使用しないでください。フィールドをデータ要素に連結し、サブフォームをデータグループに連結するのが最適です。データグループとサブフォームは繰り返し可能です。

  • デフォルトでは、サブフォームの連結タイプは「名前による」に設定されています。スキーマを使用する場合は、デフォルトの連結の種類を「データ連結なし」に設定することをお勧めします。デフォルトのデータ連結は、ツール/オプション/データ連結で設定できます。

  • データに書き出さないオブジェクトのデータ連結の種類を「データ連結なし」に設定します。フィールドを含まないサブフォームのデータ連結の種類を「データ連結なし」に設定します。例えば、通常、オーバーフローリーダーサブフォームまたはオーバーフロートレーラーサブフォームにはフィールドがありません。データ連結の種類を「データ連結なし」に設定すると、マージには関与しなくなります。オーバーフローリーダーまたはオーバーフロートレーラーをマージから除外すると、パフォーマンスが向上する場合があります。