期限の日がくると読めなくなる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(); }