3

PDFを使用して、複数のフィールドを選択できる複数のフィールドを持つ単一のフォーム要素を作成することは可能ですか?たとえば、HTMLでは、同じフィールド名に関連付けられたチェックボックスのセットを作成できます。

<div>Select one for Member of the School Board</div>
<input type="checkbox" name="field(school)" value="vote1">
<span class="label">Libby T. Garvey</span><br/>
<input type="checkbox" name="field(school)" value="vote2">
<span class="label">Emma N. Violand-Sanchez</span><br/>

この場合、フィールド名は「field(school)」で、フォーム送信時に「field(school)」を0、1、2回入力できます。

1つのフィールドが複数の値を持つことができる同等の構造がPDFにありますか?私の調査では、これまでのところ、フィールドに同じ名前が割り当てられている場合、選択できるフィールドは1つだけであるように見えます。これをPDFで実装できる場合、この構成は何と呼ばれ、どのように実装できますか?

編集:明確にするために、PDFには異なるフィールド名を持つ複数のフォームフィールドが含まれ、それらは個別に選択できることを認識していますが、グループ化は暗黙的であり、HTMLフォームのように明示的ではありません。オプションのグループ化を明示的にし、できれば制限を許可する構成を使用したいと思います(たとえば、少なくとも1つが必要、2つ以下が許可など)。

編集:誰かがこれが不可能であるという権威ある意見を見つけることができれば、それも望ましい答えになるでしょう。

4

2 に答える 2

1

はい、可能です。Adobe PDFには、チェックボックスの概念とラジオボタンの概念があります。各チェックボックスとラジオボタンには独自の名前を付けることができますが、GroupName.subobjを介してサブティアを介してグループ化することもできます。

アドビはそれを次のように説明しています。

フィールド名。これには、論理的なグループ化を容易にするための階層構文が含まれる場合があります。たとえば、myGroup.firstFieldという名前は、フォームフィールドfirstFieldがmyGroupというフィールドのグループに属していることを意味します。論理階層を作成する利点は、グループのプロパティを設定することにより、関連するフォームフィールドのプロパティ間の一貫性を強制できることです。これは、グループ内のすべてのフォームフィールドに自動的に伝播されます。

フィールドが階層を介して設定されている場合、この場合はmyGroupの値を取得し、グループの選択された値を返すことができます。同様に、RadioButtonsの場合、グループ内のすべてのフィールドが同じ名前であることを確認します。

フォームフィールドを作成するこのアプローチはすべてのフィールドに適用できますが、ラジオボタンには特別な処理が必要であることに注意してください。ラジオボタンのセットは相互に排他的な選択肢のセットを表すため、それらは同じグループに属します。このため、同じグループ内のすべてのラジオボタンの名前は同じである必要があります。さらに、のエクスポート値

ラジオボタンのセットは、単一のステートメントで設定する必要があります。このステートメントでは、値の配列がFieldオブジェクトのexportValuesプロパティによって割り当てられます。たとえば、それぞれ幅12ポイント、高さ12ポイントの3つのラジオボタンのセットを作成するとします。これらはすべてmyRadioという名前です。それらをドキュメントの5ページに配置し、それらのエクスポート値は[はい]、[いいえ]、および[キャンセル]になります。これらは、以下のコードに示すように作成できます。

var name = "myRadio";
var type = "radiobutton";
var page = 5;
var rb = this.addField(name, type, page, [400, 442, 412, 430]);
this.addField(name, type, page, [400, 427, 412, 415]);
this.addField(name, type, page, [400, 412, 412, 400]);
rb.exportValues=["Yes", "No", "Cancel"];
于 2010-04-13T22:42:02.643 に答える
1

asnyderの応答により、単一のフィールド内で複数の値を自動的に処理する方法はないという結論に至りました(HTMLの場合のように)。asnyderの例は、Acrobat JavascriptDeveloperCenterから入手できるJavaScriptを使用したAcrobatアプリケーションの開発からのものです。このドキュメントでは、チェックボックス、コンボボックス、およびラジオボタンを操作する方法の例をいくつか示します。すべての例で問題が明らかになり、最終的に、PDFフォームを使用しているシステムには、複数選択可能なグループが暗黙的に定義されているという結論に達しました。

groupName.fieldNameの構成を使用すると、ウィジェットをグループとして操作するのに役立つように見えますが(Acrobat Javascriptで)、グループのフィールドを列挙することはできません(すべてのフィールドを列挙し、groupNameをフィルタリングする必要があります)。そのグループは、プログラムで値を検査せずに決定することはできません。

言い換えれば、複数選択可能な値は、プログラミングを通じてそのようなフォームを実装することは可能ですが、AcrobatやPDFの本質的な機能ではありません。

于 2010-04-18T14:16:07.317 に答える