步驟摘要
若要將簽名欄位新增至PDF檔案,請執行下列工作:
- 包含專案檔案。
- 建立簽章使用者端。
- 取得新增簽名欄位的PDF檔案。
- 新增簽名欄位。
- 將PDF檔案儲存為PDF檔案。
包含專案檔
將必要的檔案納入您的開發專案中。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請確定您包含Proxy檔案。
必須將下列JAR檔案新增至專案的類別路徑:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-signatures-client.jar
- adobe-utilities.jar (如果AEM Forms部署在JBoss上,則為必要)
- jbossall-client.jar (如果AEM Forms部署在JBoss上,則為必要)
建立簽章使用者端
您必須先建立簽名服務使用者端,才能以程式設計方式執行簽名服務作業。
取得已新增簽名欄位的PDF檔案
取得新增簽名欄位的PDF檔案。
新增簽名欄位
若要成功將簽名欄位新增到PDF檔案中,請指定可識別簽名欄位位置的座標值。 (如果您新增隱藏的簽章欄位,這些值並非必要值。) 此外,您可以指定PDF檔案中的哪些欄位會在簽名套用至簽名欄位後鎖定。
將PDF檔案儲存為PDF檔案
簽名服務將簽名欄位新增到PDF檔案後,您可以將檔案儲存為PDF檔案,以便使用者可以在Acrobat或Adobe Reader中開啟它。
另請參閱
使用Java API新增簽名欄位
使用簽名API (Java)新增簽名欄位:
-
包含專案檔案
在您的Java專案的類別路徑中包含使用者端JAR檔案,例如adobe-signatures-client.jar。
-
建立簽章使用者端
- 建立包含連線屬性的
ServiceClientFactory
物件。 - 使用它的建構函式並傳遞
ServiceClientFactory
物件來建立SignatureServiceClient
物件。
- 建立包含連線屬性的
-
取得新增簽名欄位的PDF檔案
- 使用它的建構函式,並傳遞指定PDF檔案位置的字串值,來建立代表要新增簽名欄位的PDF檔案的
java.io.FileInputStream
物件。 - 使用它的建構函式並傳遞
java.io.FileInputStream
物件來建立com.adobe.idp.Document
物件。
- 使用它的建構函式,並傳遞指定PDF檔案位置的字串值,來建立代表要新增簽名欄位的PDF檔案的
-
新增簽名欄位
-
使用它的建構函式建立指定簽章欄位位置的
PositionRectangle
物件。 在建構函式中,指定座標值。 -
如果需要,請建立
FieldMDPOptions
物件,指定將數位簽章套用至簽章欄位時所鎖定的欄位。 -
透過叫用
SignatureServiceClient
物件的addSignatureField
方法並傳遞下列值,將簽章欄位新增至PDF檔案:com.adobe.idp
。Document
物件,代表加入簽名欄位的PDF檔案。- 字串值,指定簽名欄位的名稱。
- 代表新增簽名欄位之頁碼的
java.lang.Integer
值。 - 指定簽章欄位位置的
PositionRectangle
物件。 FieldMDPOptions
物件,指定PDF檔案中在數位簽章套用至簽章欄位後鎖定的欄位。 此引數值是選用的,您可以傳遞null
。
-
指定各種執行階段值的
PDFSeedValueOptions
物件。 此引數值是選用的,您可以傳遞null
。addSignatureField
方法傳回com.adobe.idp
。Document
物件代表包含簽名欄位的PDF檔案。
注意
您可以叫用SignatureServiceClient
物件的addInvisibleSignatureField
方法,以新增隱藏的簽章欄位。 -
-
將PDF檔案儲存為PDF檔案
- 建立
java.io.File
物件,並確定副檔名為.pdf。 - 叫用
com.adobe.idp
。Document
物件的copyToFile
方法,以將Document
物件的內容複製到檔案。 確定您使用com.adobe.idp
。addSignatureField
方法傳回的Document
物件。
- 建立
另請參閱
使用Web服務API新增簽名欄位
若要使用Signature API (Web服務)新增簽名欄位:
-
包含專案檔案
建立使用MTOM的Microsoft .NET專案。 確定您使用下列WSDL定義:
http://localhost:8080/soap/services/SignatureService?WSDL&lc_version=9.0.1
。注意
將localhost
取代為主控AEM Forms之伺服器的IP位址。 -
建立簽章使用者端
-
使用預設建構函式建立
SignatureServiceClient
物件。 -
使用
System.ServiceModel.EndpointAddress
建構函式建立SignatureServiceClient.Endpoint.Address
物件。 將指定WSDL的字串值傳遞至AEM Forms服務(例如,http://localhost:8080/soap/services/SignatureService?WSDL
)。 您不需要使用lc_version
屬性。 當您建立服務參考時,會使用此屬性。) -
取得
SignatureServiceClient.Endpoint.Binding
欄位的值,以建立System.ServiceModel.BasicHttpBinding
物件。 將傳回值轉換為BasicHttpBinding
。 -
將
System.ServiceModel.BasicHttpBinding
物件的MessageEncoding
欄位設為WSMessageEncoding.Mtom
。 此值可確保使用MTOM。 -
執行下列工作來啟用基本的HTTP驗證:
- 將AEM表單使用者名稱指派給欄位
SignatureServiceClient.ClientCredentials.UserName.UserName
。 - 將對應的密碼值指派給欄位
SignatureServiceClient.ClientCredentials.UserName.Password
。 - 將常數值
HttpClientCredentialType.Basic
指派給欄位BasicHttpBindingSecurity.Transport.ClientCredentialType
。 - 將常數值
BasicHttpSecurityMode.TransportCredentialOnly
指派給欄位BasicHttpBindingSecurity.Security.Mode
。
- 將AEM表單使用者名稱指派給欄位
-
-
取得新增簽名欄位的PDF檔案
- 使用物件的建構函式建立
BLOB
物件。BLOB
物件是用來儲存將包含簽章欄位的PDF檔案。 - 建立
System.IO.FileStream
物件,方法為叫用其建構函式,並傳遞代表PDF檔案檔案位置和開啟檔案的模式的字串值。 - 建立位元組陣列以儲存
System.IO.FileStream
物件的內容。 您可以取得System.IO.FileStream
物件的Length
屬性來決定位元組陣列的大小。 - 呼叫
System.IO.FileStream
物件的Read
方法,並傳遞要讀取的位元組陣列、起始位置和資料流長度,以資料流資料填入位元組陣列。 - 以位元組陣列的內容指派物件的
MTOM
屬性,填入BLOB
物件。
- 使用物件的建構函式建立
-
新增簽名欄位
呼叫
SignatureServiceClient
物件的addSignatureField
方法並傳遞下列值,以將簽章欄位新增至PDF檔案:BLOB
物件,代表加入簽名欄位的PDF檔案。- 字串值,指定簽名欄位名稱。
- 整數值,代表新增簽名欄位的頁碼。
- 指定簽章欄位位置的
PositionRect
物件。 FieldMDPOptions
物件,指定PDF檔案中在數位簽章套用至簽章欄位後鎖定的欄位。 此引數值是選用的,您可以傳遞null
。- 指定各種執行階段值的
PDFSeedValueOptions
物件。 此引數值是選用的,您可以傳遞null
。
addSignatureField
方法傳回BLOB
物件,該物件代表包含簽名欄位的PDF檔案。 -
將PDF檔案儲存為PDF檔案
- 建立
System.IO.FileStream
物件,方法為叫用其建構函式,並傳遞代表將包含簽章欄位的PDF檔案的檔案位置以及開啟檔案的模式的字串值。 - 建立位元組陣列,儲存
addSignatureField
方法傳回的BLOB
物件的內容。 取得BLOB
物件的binaryData
資料成員的值,以填入位元組陣列。 - 透過叫用它的建構函式並傳遞
System.IO.FileStream
物件來建立System.IO.BinaryWriter
物件。 - 呼叫
System.IO.BinaryWriter
物件的Write
方法並傳遞位元組陣列,將位元組陣列的內容寫入PDF檔案。
- 建立
正在擷取簽章欄位名稱
您可以擷取所有簽名欄位的名稱,這些欄位位於您要簽署或認證的PDF檔案中。 如果您不確定PDF檔案中的簽名欄位名稱,或者您想要驗證這些名稱,則可以使用程式擷取它們。 簽章服務傳回簽章欄位的完整名稱,例如form1[0].grantApplication[0].page1[0].SignatureField1[0]
。
步驟摘要
若要擷取簽名欄位名稱,請執行下列工作:
- 包含專案檔案。
- 建立簽章使用者端。
- 取得包含簽名欄位的PDF檔案。
- 擷取簽章欄位名稱。
包含專案檔
將必要的檔案納入您的開發專案中。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請確定您包含Proxy檔案。
必須將下列JAR檔案新增至專案的類別路徑:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-signatures-client.jar
- adobe-utilities.jar (如果AEM Forms部署在JBoss上,則為必要)
- jbossall-client.jar (如果AEM Forms部署在JBoss上,則為必要)
如需關於這些JAR檔案位置的資訊,請參閱包含AEM Forms Java程式庫檔案。
建立簽章使用者端
您必須先建立簽名服務使用者端,才能以程式設計方式執行簽名服務作業。
取得包含簽章欄位的PDF檔案
擷取包含簽名欄位的PDF檔案。
擷取簽章欄位名稱
擷取包含一或多個簽名欄位的PDF檔案後,即可擷取簽名欄位名稱。
另請參閱
使用Java API擷取簽名欄位名稱
使用簽名API (Java)擷取簽名欄位名稱:
-
包含專案檔案
在您的Java專案的類別路徑中包含使用者端JAR檔案,例如adobe-signatures-client.jar。
-
建立簽章使用者端
- 建立包含連線屬性的
ServiceClientFactory
物件。 - 使用它的建構函式並傳遞
ServiceClientFactory
物件來建立SignatureServiceClient
物件。
- 建立包含連線屬性的
-
取得包含簽名欄位的PDF檔案
- 使用它的建構函式並傳遞指定PDF檔案位置的字串值,建立代表包含簽名欄位的PDF檔案的
java.io.FileInputStream
物件。 - 使用它的建構函式並傳遞
java.io.FileInputStream
物件來建立com.adobe.idp.Document
物件。
- 使用它的建構函式並傳遞指定PDF檔案位置的字串值,建立代表包含簽名欄位的PDF檔案的
-
擷取簽章欄位名稱
- 叫用
SignatureServiceClient
物件的getSignatureFieldList
方法,並傳遞包含簽章欄位之PDF檔案的com.adobe.idp.Document
物件,以擷取簽章欄位名稱。 此方法會傳回java.util.List
物件,其中每個元素都包含PDFSignatureField
物件。 使用此物件,您可以取得有關簽名欄位的其他資訊,例如它是否可見。 - 逐一檢視
java.util.List
物件,以判斷是否有簽章欄位名稱。 對於PDF檔案中的每一個簽章欄位,您可以取得個別的PDFSignatureField
物件。 若要取得簽章欄位的名稱,請叫用PDFSignatureField
物件的getName
方法。 此方法會傳回指定簽名欄位名稱的字串值。
- 叫用
使用Web服務API擷取簽名欄位
使用簽名API (Web服務)擷取簽名欄位名稱:
-
包含專案檔案
建立使用MTOM的Microsoft .NET專案。 確定您使用下列WSDL定義:
http://localhost:8080/soap/services/SignatureService?WSDL&lc_version=9.0.1
。注意
將localhost
取代為主控AEM Forms之伺服器的IP位址。 -
建立簽章使用者端
-
使用預設建構函式建立
SignatureServiceClient
物件。 -
使用
System.ServiceModel.EndpointAddress
建構函式建立SignatureServiceClient.Endpoint.Address
物件。 將指定WSDL的字串值傳遞至AEM Forms服務(例如,http://localhost:8080/soap/services/SignatureService?WSDL
)。 您不需要使用lc_version
屬性。 當您建立服務參考時,會使用此屬性。) -
取得
SignatureServiceClient.Endpoint.Binding
欄位的值,以建立System.ServiceModel.BasicHttpBinding
物件。 將傳回值轉換為BasicHttpBinding
。 -
將
System.ServiceModel.BasicHttpBinding
物件的MessageEncoding
欄位設為WSMessageEncoding.Mtom
。 此值可確保使用MTOM。 -
執行下列工作來啟用基本的HTTP驗證:
- 將AEM表單使用者名稱指派給欄位
SignatureServiceClient.ClientCredentials.UserName.UserName
。 - 將對應的密碼值指派給欄位
SignatureServiceClient.ClientCredentials.UserName.Password
。 - 將常數值
HttpClientCredentialType.Basic
指派給欄位BasicHttpBindingSecurity.Transport.ClientCredentialType
。 - 將常數值
BasicHttpSecurityMode.TransportCredentialOnly
指派給欄位BasicHttpBindingSecurity.Security.Mode
。
- 將AEM表單使用者名稱指派給欄位
-
-
取得包含簽名欄位的PDF檔案
- 使用物件的建構函式建立
BLOB
物件。BLOB
物件是用來儲存包含簽章欄位的PDF檔案。 - 建立
System.IO.FileStream
物件,方法為叫用其建構函式,並傳遞代表PDF檔案檔案位置和開啟檔案的模式的字串值。 - 建立位元組陣列以儲存
System.IO.FileStream
物件的內容。 您可以取得System.IO.FileStream
物件的Length
屬性來決定位元組陣列的大小。 - 呼叫
System.IO.FileStream
物件的Read
方法,並傳遞要讀取的位元組陣列、起始位置和資料流長度,以資料流資料填入位元組陣列。 - 將位元組陣列內容指派給物件的
MTOM
欄位,以填入BLOB
物件。
- 使用物件的建構函式建立
-
擷取簽章欄位名稱
- 叫用
SignatureServiceClient
物件的getSignatureFieldList
方法,並傳遞包含簽章欄位之PDF檔案的BLOB
物件,以擷取簽章欄位名稱。 此方法會傳回MyArrayOfPDFSignatureField
集合物件,其中每個元素都包含PDFSignatureField
物件。 - 逐一檢視
MyArrayOfPDFSignatureField
物件,以判斷是否有簽章欄位名稱。 對於PDF檔案中的每個簽章欄位,您可以取得PDFSignatureField
物件。 若要取得簽章欄位的名稱,請叫用PDFSignatureField
物件的getName
方法。 此方法會傳回指定簽名欄位名稱的字串值。
- 叫用
修改簽章欄位
您可以使用Java API和Web服務API來修改PDF檔案中的簽名欄位。 修改簽章欄位涉及處理其簽章欄位鎖定字典值或種子值字典值。
欄位鎖定字典 指定簽署簽章欄位時鎖定的欄位清單。 鎖定的欄位可防止使用者變更欄位。 種子值字典 包含套用簽章時使用的限制資訊。 例如,您可以變更在不使簽名失效的情況下控制可能發生的動作的許可權。
透過修改現有簽名欄位,您可以變更PDF檔案以反映不斷變化的業務需求。 例如,新業務需求可能需要在簽署檔案後鎖定所有檔案欄位。
本節說明如何透過修改欄位鎖定字典和種子值字典值來修改簽名欄位。 簽名欄位簽署時,對簽名欄位鎖定字典所做的變更會導致PDF檔案中的所有欄位被鎖定。 對種子值字典所做的變更會禁止對檔案進行特定型別的變更。
步驟摘要
若要修改PDF檔案中的簽名欄位,請執行下列工作:
- 包含專案檔案。
- 建立簽章使用者端。
- 取得包含要修改之簽名欄位的PDF檔案。
- 設定字典值。
- 修改簽章欄位。
- 將PDF檔案儲存為PDF檔案。
包含專案檔
在您的開發專案中包含必要的檔案。 如果您使用Java建立使用者端應用程式,請包含必要的JAR檔案。 如果您使用Web服務,請確定您包含Proxy檔案。
必須將下列JAR檔案新增至專案的類別路徑:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-signatures-client.jar
- adobe-utilities.jar (如果AEM Forms部署在JBoss上,則為必要)
- jbossall-client.jar (如果AEM Forms部署在JBoss上,則為必要)
如需關於這些JAR檔案位置的資訊,請參閱包含LiveCycleJava程式庫檔案。
建立簽章使用者端
您必須先建立簽名服務使用者端,才能以程式設計方式執行簽名服務作業。
取得包含要修改之簽章欄位的PDF檔案
擷取包含要修改之簽名欄位的PDF檔案。
設定字典值
若要修改簽章欄位,請將值指派給其欄位鎖定字典或種子值字典。 指定簽章欄位鎖定字典值涉及指定簽章欄位簽署時鎖定的PDF檔案欄位。 (本節將討論如何鎖定所有欄位。)
可以設定以下種子值字典值:
-
修訂檢查:指定簽章套用至簽章欄位時,是否執行撤銷檢查。
-
憑證選項:指派值給憑證種子值字典。 在指定憑證選項之前,建議您先熟悉憑證種子值字典。 (請參閱PDF參考。)
-
摘要選項:指派用於簽署的摘要演演算法。 有效值為SHA1、SHA256、SHA384、SHA512和RIPEMD160。
-
篩選器:指定用於簽章欄位的篩選器。 例如,您可以使用Adobe.PPKLite篩選器。 (請參閱PDF參考。)
-
標幟選項:指定與此簽章欄位關聯的標幟值。 值1表示簽署者必須僅使用專案的指定值。 值為0表示允許使用其他值。 以下是Bit位置:
- 1(篩選器): 用來簽署簽章欄位的簽章處理常式
- 2 (SubFilter): 表示簽署時可使用的編碼之名稱陣列
- 3 (V):簽章處理常式簽署簽章欄位所需的最低版本號碼
- 4 (原因): 指定簽署檔案可能原因的字串陣列
- 5 (PDFLegalWarnings): 指定可能合法證明的字串陣列
-
法律證明:當檔案通過認證時,會自動掃描特定型別的內容,使檔案的可見內容模糊或誤導。 例如,註解可能會模糊文字,而這些文字對於瞭解認證內容非常重要。 掃描程式會產生警告,指出此型別的內容是否存在。 此外,也為可能產生警告的內容提供額外說明。
-
許可權:指定可在PDF檔案上使用而不使簽章失效的許可權。
-
原因:指定必須簽署此檔案的原因。
-
時間戳記:指定時間戳記選項。 例如,您可以設定所使用之時間戳記伺服器的URL。
-
版本:指定要用來簽署簽章欄位的簽章處理常式的最小版本號碼。
修改簽章欄位
建立「簽名」服務使用者端、擷取包含要修改之簽名欄位的PDF檔案,以及設定說明值之後,您可以指示「簽名」服務修改簽名欄位。 接著,Signature服務會傳回包含修改過之簽名欄位的PDF檔案。 原始PDF檔案不受影響。
將PDF檔案儲存為PDF檔案
將包含已修改簽名欄位的PDF檔案儲存為PDF檔案,以便使用者可以在Acrobat或Adobe Reader中開啟它。
另請參閱
使用Java API修改簽名欄位
使用簽名API (Java)修改簽名欄位:
-
包含專案檔案
在您的Java專案的類別路徑中包含使用者端JAR檔案,例如adobe-signatures-client.jar。
-
建立簽章使用者端
- 建立包含連線屬性的
ServiceClientFactory
物件。 - 使用它的建構函式並傳遞
ServiceClientFactory
物件來建立SignatureServiceClient
物件。
- 建立包含連線屬性的
-
取得包含要修改之簽名欄位的PDF檔案
- 建立
java.io.FileInputStream
物件,代表包含要修改之簽章欄位的PDF檔案,方法是使用其建構函式,並傳遞指定PDF檔案位置的字串值。 - 使用它的建構函式並傳遞
java.io.FileInputStream
物件來建立com.adobe.idp.Document
物件。
- 建立
-
設定字典值
- 使用物件的建構函式建立
PDFSignatureFieldProperties
物件。PDFSignatureFieldProperties
物件儲存簽章欄位鎖定字典和種子值字典資訊。 - 使用物件的建構函式建立
PDFSeedValueOptionSpec
物件。 此物件可讓您設定種子值字典值。 - 叫用
PDFSeedValueOptionSpec
物件的setMdpValue
方法並傳遞MDPPermissions.NoChanges
列舉值,不允許變更PDF檔案。 - 使用物件的建構函式建立
FieldMDPOptionSpec
物件。 此物件可讓您設定簽章欄位鎖定字典值。 - 呼叫
FieldMDPOptionSpec
物件的setMdpValue
方法並傳遞FieldMDPAction.ALL
列舉值,以鎖定PDF檔案中的所有欄位。 - 透過叫用
PDFSignatureFieldProperties
物件的setSeedValue
方法並傳遞PDFSeedValueOptionSpec
物件來設定種子值字典資訊。 - 透過叫用
PDFSignatureFieldProperties
物件的setFieldMDP
方法並傳遞FieldMDPOptionSpec
物件來設定簽章欄位鎖定字典資訊。
注意
若要檢視所有可設定的種子值字典值,請參閱PDFSeedValueOptionSpec
類別參考。 (請參閱AEM Forms API參考。) - 使用物件的建構函式建立
-
修改簽章欄位
呼叫
SignatureServiceClient
物件的modifySignatureField
方法並傳遞下列值,以修改簽章欄位:- 儲存包含要修改之簽章欄位的PDF檔案的
com.adobe.idp.Document
物件 - 字串值,指定簽名欄位的名稱
- 儲存簽章欄位鎖定字典和種子值字典資訊的
PDFSignatureFieldProperties
物件
modifySignatureField
方法傳回com.adobe.idp.Document
物件,該物件儲存包含修改簽名欄位的PDF檔案。 - 儲存包含要修改之簽章欄位的PDF檔案的
-
將PDF檔案儲存為PDF檔案
- 建立
java.io.File
物件,並確定副檔名為.pdf。 - 叫用
com.adobe.idp.Document
物件的copyToFile
方法,將com.adobe.idp.Document
物件的內容複製到檔案。 請確定您使用的是modifySignatureField
方法傳回的com.adobe.idp.Document
物件。
- 建立
使用Web服務API修改簽名欄位
使用簽名API (Web服務)修改簽名欄位:
-
包含專案檔案
建立使用MTOM的Microsoft .NET專案。 確定您使用下列WSDL定義:
http://localhost:8080/soap/services/SignatureService?WSDL&lc_version=9.0.1
。注意
將localhost
取代為主控AEM Forms之伺服器的IP位址。 -
建立簽章使用者端
-
使用預設建構函式建立
SignatureServiceClient
物件。 -
使用
System.ServiceModel.EndpointAddress
建構函式建立SignatureServiceClient.Endpoint.Address
物件。 將指定WSDL的字串值傳遞至AEM Forms服務(例如,http://localhost:8080/soap/services/SignatureService?WSDL
)。 您不需要使用lc_version
屬性。 當您建立服務參考時,會使用此屬性。) -
取得
SignatureServiceClient.Endpoint.Binding
欄位的值,以建立System.ServiceModel.BasicHttpBinding
物件。 將傳回值轉換為BasicHttpBinding
。 -
將
System.ServiceModel.BasicHttpBinding
物件的MessageEncoding
欄位設為WSMessageEncoding.Mtom
。 此值可確保使用MTOM。 -
執行下列工作來啟用基本的HTTP驗證:
- 將AEM表單使用者名稱指派給欄位
SignatureServiceClient.ClientCredentials.UserName.UserName
。 - 將對應的密碼值指派給欄位
SignatureServiceClient.ClientCredentials.UserName.Password
。 - 將常數值
HttpClientCredentialType.Basic
指派給欄位BasicHttpBindingSecurity.Transport.ClientCredentialType
。 - 將常數值
BasicHttpSecurityMode.TransportCredentialOnly
指派給欄位BasicHttpBindingSecurity.Security.Mode
。
- 將AEM表單使用者名稱指派給欄位
-
-
取得包含要修改之簽名欄位的PDF檔案
- 使用物件的建構函式建立
BLOB
物件。BLOB
物件是用來儲存包含要修改之簽章欄位的PDF檔案。 - 建立
System.IO.FileStream
物件,方法為叫用其建構函式,並傳遞代表PDF檔案檔案位置和開啟檔案的模式的字串值。 - 建立位元組陣列以儲存
System.IO.FileStream
物件的內容。 您可以取得System.IO.FileStream
物件的Length
屬性來決定位元組陣列的大小。 - 呼叫
System.IO.FileStream
物件的Read
方法,並傳遞要讀取的位元組陣列、起始位置和資料流長度,以資料流資料填入位元組陣列。 - 將物件的
MTOM
屬性指派給位元組陣列的內容,以填入BLOB
物件。
- 使用物件的建構函式建立
-
設定字典值
- 使用物件的建構函式建立
PDFSignatureFieldProperties
物件。 此物件儲存簽章欄位鎖定字典和種子值字典資訊。 - 使用物件的建構函式建立
PDFSeedValueOptionSpec
物件。 此物件可讓您設定種子值字典值。 - 將
MDPPermissions.NoChanges
列舉值指派給PDFSeedValueOptionSpec
物件的mdpValue
資料成員,不允許變更PDF檔案。 - 使用物件的建構函式建立
FieldMDPOptionSpec
物件。 此物件可讓您設定簽章欄位鎖定字典值。 - 將
FieldMDPAction.ALL
列舉值指派給FieldMDPOptionSpec
物件的mdpValue
資料成員,以鎖定PDF檔案中的所有欄位。 - 將
PDFSeedValueOptionSpec
物件指派給PDFSignatureFieldProperties
物件的seedValue
資料成員,以設定種子值字典資訊。 - 將
FieldMDPOptionSpec
物件指派給PDFSignatureFieldProperties
物件的fieldMDP
資料成員,以設定簽章欄位鎖定字典資訊。
注意
若要檢視所有可設定的種子值字典值,請參閱PDFSeedValueOptionSpec
類別參考。 (請參閱AEM Forms API參考)。 - 使用物件的建構函式建立
-
修改簽章欄位
呼叫
SignatureServiceClient
物件的modifySignatureField
方法並傳遞下列值,以修改簽章欄位:- 儲存包含要修改之簽章欄位的PDF檔案的
BLOB
物件 - 字串值,指定簽名欄位的名稱
- 儲存簽章欄位鎖定字典和種子值字典資訊的
PDFSignatureFieldProperties
物件
modifySignatureField
方法傳回BLOB
物件,該物件儲存包含修改簽名欄位的PDF檔案。 - 儲存包含要修改之簽章欄位的PDF檔案的
-
將PDF檔案儲存為PDF檔案
- 建立
System.IO.FileStream
物件,方法是叫用其建構函式,並傳遞代表將包含簽章欄位之PDF檔案的檔案位置的字串值,以及開啟檔案的模式。 - 建立位元組陣列,儲存
addSignatureField
方法傳回的BLOB
物件內容。 取得BLOB
物件的MTOM
資料成員的值,以填入位元組陣列。 - 透過叫用它的建構函式並傳遞
System.IO.FileStream
物件來建立System.IO.BinaryWriter
物件。 - 呼叫
System.IO.BinaryWriter
物件的Write
方法並傳遞位元組陣列,將位元組陣列的內容寫入PDF檔案。
- 建立