PNG
JPG
BMP
TIFF
PDF
如何通过云端PHP SDK向PDF添加签名
为了向PDF添加签名,我们将使用 Aspose.PDF Cloud PHP SDK 这个云端SDK帮助PHP程序员使用Aspose.PDF REST API开发基于云的PDF创建、注释、编辑和转换应用程序。只需在Aspose for Cloud创建一个账户并获取您的应用信息。一旦您有了App SID和密钥,您即可使用Aspose.PDF Cloud PHP SDK。
包管理器控制台命令
composer install
通过云端PHP添加签名到PDF的步骤
Aspose.PDF Cloud开发人员可以轻松地在几行代码中加载并添加签名到PDF。
- 上传PDF文档
- 上传配置中指定的PDF文档
- 下载PDF文档处理的结果并保存到指定位置
- 将数字签名附加到PDF文档
使用PHP向PDF添加签名
require __DIR__.'\..\..\vendor\autoload.php';
use Aspose\PDF\Configuration;
use Aspose\PDF\Api\PdfApi;
$config = [
'LOCAL_FOLDER' => "C:\\Samples\\",
'PDF_DOCUMENT_NAME' => "sample.pdf",
'LOCAL_RESULT_DOCUMENT_NAME' => "output_sample.pdf",
'LOCAL_SIGNATURE_PATH' => "C:\\Samples\\Signatures\\3",
'SIGNATURE_PFX' => "signature.pfx",
'SIGNATURE_FORM_FIELD' => 'Signature_1',
'SIGNATURE_PASSWORD' => 'Password',
'SIGNATURE_CONTACT' => 'Contact',
'SIGNATURE_LOCATION' => 'Location',
'SIGNATURE_AUTHORITY' => 'Issuer',
'SIGNATURE_DATE' => '04/19/2025 12:15:00.000 PM',
'SIGNATURE_RECT' => new Aspose\PDF\Model\Rectangle(array('llx' => 100, 'lly' => 100, 'urx' => 0, 'ury' => 0))
];
class PdfSignatures {
private $pdfApi;
private $config;
private function _create_rest_api() {
$credentials = json_decode(file_get_contents("./Credentials/credentials.json"), true);
$configAuth = new Configuration();
$configAuth->setAppKey($credentials['key']);
$configAuth->setAppSid($credentials['id']);
$this->pdfApi = new PdfApi(null, $configAuth);
}
public function __construct($config) {
$this->config = $config;
$this->_create_rest_api();
}
public function uploadFile($folder, $fileName) {
$filePath = $folder . DIRECTORY_SEPARATOR . $fileName;
$data = file_get_contents($filePath);
$this->pdfApi->uploadFile($fileName, $data);
echo "File '$fileName' successfully uploaded!\n";
}
public function uploadDocument() {
$this->uploadFile($this->config['LOCAL_FOLDER'], $this->config['PDF_DOCUMENT_NAME']);
}
public function downloadResult() {
$response = $this->pdfApi->downloadFile($this->config['PDF_DOCUMENT_NAME']);
$filePath = $this->config['LOCAL_FOLDER'] . DIRECTORY_SEPARATOR . $this->config['LOCAL_RESULT_DOCUMENT_NAME'];
file_put_contents($filePath, $response->body);
echo "Downloaded: $filePath\n";
}
public function appenSignature() {
$signature = new \Aspose\PDF\Model\Signature( array(
'authority'=> $this->config['SIGNATURE_AUTHORITY'],
'contact' => $this->config['SIGNATURE_CONTACT'],
'date' => $this->config['SIGNATURE_DATE'],
'form_field_name' => $this->config['SIGNATURE_FORM_FIELD'],
'location' => $this->config['SIGNATURE_LOCATION'],
'password' => $this->config['SIGNATURE_PASSWORD'],
'rectangle' => $this->config['SIGNATURE_RECT'],
'signature_path' => $this->config['SIGNATURE_PFX'],
'signature_type' => \Aspose\PDF\Model\SignatureType::PKCS7,
'visible' => TRUE )
);
$field = new \Aspose\PDF\Model\SignatureField( array(
'page_index' => 1,
'signature' => $signature,
'partial_name' => 'sign1',
'rect' => $this->config['SIGNATURE_RECT'])
);
$response = $this->pdfApi->postSignatureField(
$this->config['PDF_DOCUMENT_NAME'],
$field
);
if ($response->code === 200) {
echo "appenSignature(): Signature '" . $this->config['SIGNATURE_CONTACT'] . "' successfully replaced.\n";
} else {
echo "appenSignature(): Failed to replace signature. Code: " . $response->code . "\n";
}
}
}
try {
$signatures = new PdfSignatures($pdfApi, $configParams);
$signatures->uploadFile($configParams['LOCAL_SIGNATURE_PATH'], $configParams['SIGNATURE_PFX']);
$signatures->uploadDocument();
$signatures->appenSignature();
$signatures->downloadResult();
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}
在PDF中使用签名
对PDF进行数字签名可以确保文档的真实性、完整性和合法性。它验证了自签名应用以来内容未被更改,并确认签名者的身份。这在法律、金融和专业环境中尤为重要,因为文档的信任和安全性至关重要。数字签名还可以帮助满足合规标准,并以安全、可验证的方式简化审批工作流程。 使用Aspose.PDF Cloud PHP SDK将签名添加到PDF文档中。
通过我们的PHP库,您可以:
- 以文本或图像格式添加PDF文档的页眉和页脚。
- 向PDF文档添加表格和邮票(文本或图像)。
- 将多个PDF文档附加到现有文件。
- 处理PDF附件、注释和表单字段。
- 对PDF文档应用加密或解密并设置密码。
- 从页面或整个PDF文档中删除所有邮票和表格。
- 按ID从PDF文档中删除特定的邮票或表格。
- 替换PDF页面或整个文档上的单个或多个文本实例。
- 为PDF文档转换为各种其他文件格式提供广泛支持。
- 提取PDF文件的各种元素并优化PDF文档。
- 您可以尝试我们的免费应用在线测试功能。