how to create a self-destruct pdf

I will like to enquiry, how to create a self-destruct pdf after person A had received and opened. Can we setting in the pdf by using Arcobat manually for x amount of days (example 30 days or 60 days)?

Lian Keat Lee

5 Answers

Voted Best Answer

You will NOT need the LiveCycle DRM system (unless you insist on Adobe products), but you WILL need a DRM system of some sort which allows you to set expiration dates.

Now, as DRM systems or services do cost some money (you get what you pay), and if you think about it, it may not really be necessary to have a "hard" protection, you could do something very "weak" using JavaScript:

You place a field, for example a Button field, of the size of the page over all the pages. If you have a button field, make an icon stating that the document has expired. Let's name this field "cover". In the PageOpen script of the first page, add something like this code:

var now = new Date() ;
var expiration = new Date(<expiration date>) ;
if (now < expiration) {
this.getField("cover").display = display.hidden ;
this.dirty = false ;
} else {
this.getField("cover").display = display.visible ;
this.dirty = false ;

As I said, with digital right management, you get what you pay…

Hope this can help.

Max Wyss.

This solution does require JavaScript to open. However, there are viewers which may ignore fields, a

By Max Wyss   

You need LiveCycle Rights Management server for this where you can design custom policies and set the expiration date. Once this policy this applied to the PDF, end users won't be able to open PDF after expiry date


If you don't need a 100% secure solution (which would require DRM technology == a lot of money), then it is possible to use a script to enforce that. If you're interested in such a solution, feel free to contact me by email to discuss it.

Visit my custom-made PDF scripts website:
Contact me personally:

Gilad D (try67)   

You can use the below javascript in that case.function date() {var fld = this.getField("DateField");app.alert(util.printd("dd mmmm yyyy",new Date()));var currentdate = util.printd("dd",new Date());var currentmonth = util.printd("mm", new Date());app.alert(currentdate);app.alert(currentmonth);if (currentdate > 05 && currentmonth <11)app.alert("Document Expired but month is good");elseapp.alert("Valid");}date();


One thing you can do is to "cover" the PDF pages with an opaque watermark, then use a script to uncover the PDF for a period. This is not a perfect method, but it is fail safe. Meaning that if JavaScript is turned off or it is opened in a 3rd party viewer, the content will be hidden. I'll have a turorial/example on this topic at It'll be a free promotional item later at the end of this month.

But if you know scripting, you'll get what you need from this article.

Thom Parker
The source for PDF Scripting Info
All About PDF Stamps in Acrobat and Paperless Workflows - THE BOOK !!

The Acrobat JavaScript Reference, Use it Early and Often

The most important JavaScript Development tool in Acrobat
The Console Window (Video tutorial)
The Console Window(article)

Having trouble, Why Doesn't my Script Work

Thom Parker   

Please specify a reason: