set_option($optlist);
/* @電子署名を作成する */
if ($plop->prepare_signature($sign_opts) == 0) {
die("Error: " . $plop->get_apiname() . ": " . $plop->get_errmsg() . "\n");
}
/* 取込みたい PDF 文書の数分、処理を繰り返す */
for ($i = 0; $i < count($infile); $i++){
printf ("Signing '%s' ", $infile[$i]);
/* A既存の PDF 文書を開く */
if (($doc = $plop->open_document($infile[$i], "")) == 0) {
print("Error: " . $plop->get_apiname() . ": " . $plop->get_errmsg() . "
\n");
continue;
}
/* 電子署名付与後のファイル名を指定する */
$signed_name = sprintf("%s-signed.pdf", $infile[$i]);
/* B電子署名を PDF に付与して出力する */
if ($plop->create_document($signed_name, "input=". $doc) == 0) {
printf("Error: " . $plop->get_apiname() . ": " . $plop->get_errmsg() . "
\n");
if ($PKCS11){
/* PKCS#11 が期限切れになっている場合 */
if ($plop->prepare_signature($sign_opts) == 0) {
die("Error: " . $plop->get_apiname() . ": " . $plop->get_errmsg() . "
\n");
}
if ($plop->create_document($signed_name, "input=". $doc) == 0) {
die("Error: " . $plop->get_apiname() . ": " . $plop->get_errmsg() . "
\n");
}
}
}
printf ('Link
', $signed_name);
/* CPDF文書を閉じる */
$plop->close_document($doc, "");
}
}
catch (PLOPException $e) {
die("PLOP exception occurred in multisign sample:\n" . "[" . $e->get_errnum() . "] " . $e->get_apiname() . ": " . $e->get_errmsg() . "\n");
}
catch (Exception $e) {
die($e);
}
$plop = 0;