0
こんにちはをカスタマイズし、私はメッセージがItextsharp PdfEncryptorを使用してPDFファイルenryptedに「あなたの誕生日とカードの最後の6桁を入力してください」にカスタマイズすることができますか?
public byte[] GenerateSoaCrystalPdf(SoaCustomerViewModel customer, out int totalPages, bool encryptFile = false)
{
var rptDoc = GenerateSoaCrystal(customer);
// process PDF file
var stream = rptDoc.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
// dispose the report document
rptDoc.Close();
rptDoc.Dispose();
// create password-protected PDF
using (var ms = new MemoryStream())
{
if (encryptFile)
{
// count number of pages
using (var pdfReader = new PdfReader(stream))
{
totalPages = pdfReader.NumberOfPages;
var password = customer.DateOfBirth + customer.CardNumber.NumbersOnly().Right(6);
PdfEncryptor.Encrypt(pdfReader, ms, true, password, password, PdfWriter.AllowScreenReaders);
}
}
else
{
// TODO: fix error when calling PdfReader
totalPages = 0;
stream.CopyTo(ms);
}
return ms.ToArray();
}
}
真実ですが、要件をサポートするISO 32000(PDF仕様)には何もありません。答えは確かです:*いいえ、これはできません。 iTextではなく、他のツールではありません。* –
お返事ありがとうございます – jankenshin2004