期限の日がくると読めなくなるPDFを作ろうという試み。
iTextSharpを使用する。
方法が2種類くらいあるらしいけど、これはJavaScriptを使う方式。
private void button1_Click(object sender, EventArgs e)
{
string filename = @"C:\temp\00000.pdf";
Document doc = new Document();
PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(filename, FileMode.OpenOrCreate));
doc.Open();
doc.Add(new Paragraph("Hello iTextSharp"));
string javaScript = @"
var limitDate = '2012/06/14'; //有効期限
var d = new Date(); // 今日の日付
var s = 'yyyy/mm/dd'; // 書式
if (limitDate < util.printd(s, d)) {
app.alert('Limit date is ' + limitDate + '.');
this.closeDoc(true);
} else {
app.alert('OK');
}
";
PdfAction action = PdfAction.JavaScript(javaScript, writer);
writer.SetOpenAction(action);
doc.Close();
writer.Close();
}