AcroFormsとXFAフォーム
AcroFormsは、フォームフィールドをPDFドキュメントに統合するために使用される入力可能なフォームです。これは、PDF1.2仕様から始まるPDFドキュメントにアドビが採用した初期フォームテクノロジーでした。 AcroFormsを使用すると、フォームフィールドをオーバーレイとして追加して、エンドユーザーまたはドキュメントを使用するすべてのユーザーからデータを収集できます。
その後、アドビは、Accelio(サービスプロバイダー)を買収した後、PDF1.5仕様の一部としてXMLベースのXFAフォーム(XMLフォームアーキテクチャ)を採用しました。 XFAは、PDFドキュメントで電子フォームを開発するためにXMLの機能を使用しました。ただし、AcroFormsと比較して新しいe-formテクノロジーであるにもかかわらず、XFAには次のようないくつかの制限があります。
- さまざまなPDFオブジェクトでのJavaScriptサポートの欠如、
- XFAフォームは、Adobe LiveCycleFormsDesignerでのみ作成できます。
- AcroFormsとの互換性の問題、
- AcroFormsからXFAへの自動変換の欠如、
- AcroFormsと比較してアクセシビリティが制限されています。
- フォームを作成するには開発者のスキルが必要です。
- や。。など。
AcroFormsテクノロジは、よりアクセスしやすく使いやすいと考えられているため、次のセクションでは、C#とJavaを使用してプログラムでPDFでXFAからAcroFormsへの変換を実行する方法を示します。
XFAをAcroFormsに変換する
さまざまなXFAからAcroFormsへの変換ツールを使用して、変換を実行できます。ただし、この機能を.NETまたはJavaアプリケーションに統合して自動変換するには、Aspose.PDFを使用できます。
XFAをC#でAcroFormsに変換する
以下は、Aspose.PDF for .NETを使用してXFAフォームをAcroFormに変換する手順です。
- Documentクラスを使用して、XFAフォームを含むPDFドキュメントをロードします。
- Document.Form.TypeプロパティをFormType.Standardに設定します。
- Document.Save(string)メソッドを使用して新しいドキュメントを保存します。
次のコードサンプルは、C#を使用してPDFのXFAフォームをAcroFormsに変換します。
// XFAフォームでPDFをロード
Document document = new Document("XFAFormPDF.pdf");
// フォームフィールドタイプを標準のAcroFormsとして設定します
document.Form.Type = FormType.Standard;
// 結果のPDFをAcroFormsで保存します
document.Save("XFA-to-AcroForms.pdf");
XFAをJavaでAcroFormsに変換する
以下は、Aspose.PDF for Javaを使用したXFAからAcroFormsへの変換の手順です。
- Documentクラスを使用してXFAフォームでPDFをロードします。
- フォームタイプをFormType.Standardに設定します。
- Document.save(string)メソッドを使用して更新されたドキュメントを保存します。
次のコードサンプルは、Javaを使用してXFAをAcroFormsに変換する方法を示しています。
// XFAフォームでPDFをロード
Document doc = new Document("XFAFormsPDF.pdf");
// フォームフィールドタイプを標準のAcroFormsとして設定します
doc.getForm().setType(FormType.Standard);
// 結果のPDFをAcroFormsで保存します
doc.save("XFA-to-AcroForms.PDF");
Aspose.PDFの詳細
Aspose.PDF APIの詳細については、ドキュメントを使用してください。ご不明な点やご質問がございましたら、フォーラムからお問い合わせください。