
PDF 格式的一大優點是「所見即所得」(WYSIWYG) 方法。因此,PDF 格式的渲染和檢視標準很高。您的螢幕上顯示的內容也會以相同的方式顯示在其他使用者的裝置上。無論人們使用哪種作業系統、螢幕解析度或軟體。因此,無論您在什麼裝置上查看文檔,PDF 在所有平台上都是一致的。
除了查看之外,列印 PDF 文件時也能確保內容的保真度。一旦資料被填入文件中,資料的安全性就變得更加重要。因此,為了確保資料的完整性,正確的人員應有權存取資料。當考慮使用電子文件作為證據時,其必須是未經修改的原始版本。然後,此類電子文件或資料資訊才會在法庭上被採納。此外,您還可以獲得大量的 PDF 表單解析器應用程式以進行進一步處理。
現在考慮一種HTML格式,它在跨平台功能方面與PDF類似。但他們再次需要在各種平台和瀏覽器上進行測試,以確保它們能夠正常運作。除了查看之外,我們還需要測試列印功能。為了針對每個瀏覽器驗證該聲明,需要進行大量的測試。當查看 HTML 表單的資料安全性方面時,安全性始終是一個問題。
PDF 表格
該技術涉及將表單欄位作為覆蓋層添加到表單影像的頂部。 Adobe 後來在 2003 年在 PDF 1.5 和 Acrobat 6 中引入了 XFA 表單(有時稱為設計表單)。而目前,AcroForms 得到了許多第三方 PDF 檢視器應用程式的廣泛支援。 AcroForms 是包含表單欄位的 PDF 檔案。最終使用者或表單作者可以將資料輸入到這些欄位中。內部 AcroForms 是套用於 PDF 文件的註解或欄位。可以使用表單資料格式 (FDF) 檔案(包含鍵:值對的格式化 ASCII 檔案)輕鬆填入它們。
Adobe XFA 表單
XFA 表單(XML 表單架構)代表了 Adobe 與流行的 FDF 和 XFDF 方法論之間的重大方向轉變。 XFA 表單一律使用 XML。由於 XML 是所有結構化文件的支柱,因此選擇 XFA 表單有明顯的缺點。 XFA 表單不應與 XForms(基於 XML 的表單的 W3C 標準)混淆。 Adobe 的 XFA Forms 是一個封閉標準,與完全開放的 W3C XForms 標準競爭。雖然兩者都基於 XML,但 XForms 標準僅指定數據,而不指定表單的外觀。而 XFA 表單既指定了表單的外觀,也指定了資料。
Aspose.PDF Cloud 作為 PDF 表單解析器
表格是從最終用戶獲取輸入的直覺方法之一。但是,在處理大量 PDF 文件時,手動填寫和操作資料會很麻煩。因此,為了方便我們的使用者以程式設計方式處理 PDF 表單,我們開發了一個名為 Aspose.PDF Cloud API 的 API。它使用戶能夠使用 cURL 命令建立、更新和操作 PDF 表單。您也可以使用針對您選擇的程式語言單獨開發的 SDK。
除了用作 PDF 表單解析器之外,它還提供以下功能:
EPUB、HTML、LaTeX、MHT、PCL、DOC、DOCX、MOBIXML、PDFA、PPTX21]22320]、PPTX21、XML、XPS、PS、XSLFO、PCL、BMP、EMF、GIF、JPEG、PNG35。
以上所有操作無需安裝任何特定軟體即可完成。
讀取表單字段
只需更少的程式碼行,您就可以閱讀有關 PDF 表單欄位(PDF 表單解析器)的詳細資訊。因此,在讀取字段時,我們可以讀取文件內的所有字段,或者獲得一個選項來指定帶有字段的特定頁碼,甚至透過提供其名稱來存取特定字段。此外,如果您不想使用任何特定的程式語言,則可以透過命令提示字元使用 cURL 命令執行欄位操作。下面給出了可以使用 PDF REST API 處理的表單欄位的詳細資訊:
- 列錶框
- 組合框
- 複選框
- 單選按鈕
- 文字方塊
- 簽名
GetDocumentTextBoxFields 方法提供了從 PDF 文件讀取文字欄位的功能。它接受一個輸入檔案名稱參數並傳回欄位及其屬性的清單。
為了讀取表單欄位詳細信息,請嘗試使用以下 cURL 命令。
cURL 指令
// First get the Access Token
// Get Client Id and Client Secret from https://dashboard.aspose.cloud/
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d 'grant_type=client_credentials&client_id=CLIENT_ID&client_secret=CLIENT_SECRET' \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
curl -X GET "https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/textbox" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
請求 URL
https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/textbox
[C#.NET]
// 完整範例和資料檔請前往https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-dotnet
const string clientID = "xxxxxx-1c8e-4ea4-a948-3857547232fa";
const string clientSecret = "xxxxxx613237f013e329cdf5694cc96a";
Aspose.Pdf.Cloud.Sdk.Api.PdfApi pdfApi = new Aspose.Pdf.Cloud.Sdk.Api.PdfApi(clientSecret, clientID);
String fileName = "FormDataTextBox.pdf";
try
{
// 呼叫 Aspose.PDF Cloud SDK API 從 pdf 文件中取得所有字段
Aspose.Pdf.Cloud.Sdk.Model.FieldsResponse apiResponse = pdfApi.GetFields(fileName, null, null);
if (apiResponse != null && apiResponse.Status.Equals("OK"))
{
foreach (Aspose.Pdf.Cloud.Sdk.Model.Field field in apiResponse.Fields.List)
{
Console.WriteLine("Name: " + field.Name + "Type: " + field.Type);
}
Console.WriteLine("Get all Form Fields from the PDF Document, Done!");
Console.ReadKey();
}
}
catch (Exception e)
{
Console.WriteLine("Exception while calling Api: " + e.ToString());
}
上述範例中使用的範例檔案可以透過 FormDataTextBox.pdf 下載。
為了從文件的某些頁面讀取文字字段,請嘗試使用 GetPageTextBoxFields 方法,該方法需要輸入檔案名稱和 pageNumber 作為參數。
如果要求獲取與特定文字欄位相關的詳細信息,請嘗試使用 GetTextBoxField 方法,該方法接受輸入檔案名稱和 fieldName 作為參數。
建立或替換 PDF 表單字段
API 提供了強大的功能來新增或取代文件中的現有欄位。方法 PostTextBoxFields 提供了在 PDF 文件中新增文字方塊欄位的功能。為了實現這項要求,我們需要提供輸入檔案名稱和要新增的欄位的欄位陣列定義屬性。
為了取代現有的文字方塊字段,請嘗試使用 PutTextBoxField 方法,該方法接受輸入文件名稱、要替換的字段名稱以及定義要新增的新字段的屬性的字段屬性。
請嘗試使用我們的 API,如果您遇到任何問題,請隨時在 Aspose.PDF Cloud 產品支援論壇 中發布您的問題。