How to Add a Printable Expiration Date 7 Days After Printing a PDF
Question details
The user needs to add a dynamically generated expiration date to a PDF form that is hidden on the screen but prints exactly seven days after the document is printed.

- Product
- PDF Editor / Adobe Acrobat
- Device & OS
- not provided
- Scenario
- Preparing a PDF form that requires a printed expiration date automatically calculated 7 days from the moment the user executes the print command.
- Observed behavior
- A date field needs to be configured to remain hidden on the digital display but becomes visible upon printing, calculating and showing a date 7 days in the future.
Ensure your PDF viewer or editor supports JavaScript and Document Actions. The script relies on the 'Will Print' event, so viewers without JavaScript capabilities will not calculate or print the date correctly.
Use Document JavaScript to Set a Hidden Printable Field
Configure a text field to be hidden on-screen but printable, and use a 'Will Print' JavaScript action to calculate the 7-day expiration date automatically.
This method involves creating a specific text field in your PDF form and embedding a short JavaScript code that triggers automatically whenever a user selects the print command. The script dynamically calculates the date 7 days in the future and populates the hidden field right before printing.
Open your PDF form editor, insert a new text field into your document where you want the date to appear on the printed page, and name the field exactly 'ExpireDate'.
Right-click the 'ExpireDate' field, select Properties, and under the General tab, locate the Form Field Visibility dropdown. Set this option to 'Hidden but printable'.
Navigate to the JavaScript toolbar or Advanced menu and open the 'Document Actions' or 'Document JavaScripts' dialog.
Select the 'Document Will Print' event, click Edit or Add, and paste the following script: var dtExpire = new Date(); dtExpire.setDate(dtExpire.getDate() + 7); this.getField('ExpireDate').value = util.printd('Form expiration date: mm/dd/yy', dtExpire);
Save the PDF document. Print a test page using a JavaScript-supported PDF viewer to verify that the expiration date appears correctly on the hard copy.
Create and Edit Advanced PDF Forms with WPS Office
WPS Office provides a comprehensive PDF editor capable of handling form creation, text fields, and advanced interactive document properties smoothly.
- 1. Download and Install: Download and install WPS Office on your computer or mobile device.
- 2. Open your PDF Document: Launch WPS Office and open your PDF document using the built-in WPS PDF tool.
- 3. Insert Form Fields: Navigate to the 'Form' tab on the top ribbon to insert and customize interactive text fields.
- 4. Adjust Properties: Right-click the fields to adjust visibility properties and prepare your document for professional distribution.

Frequently Asked Questions
Why isn't the expiration date printing on my document?
This usually happens if the PDF viewer being used to print the document does not support JavaScript or has JavaScript disabled for security reasons. Ensure you are using a capable viewer like Adobe Acrobat or Reader and that JavaScript is enabled.
Can I change the date format of the printed expiration date?
Yes, you can modify the date format string in the `util.printd` function of the script. For example, changing `'mm/dd/yy'` to `'dd/mm/yyyy'` will output the date in a Day/Month/Year format.
Can I calculate a different expiration period, like 30 days instead of 7?
Yes, simply change the number in the JavaScript code where it says `getDate() + 7`. Replace the `7` with `30` or any other number of days you require for the expiration period.
How do I make the field completely invisible both on-screen and in print?
If you want to hide the field entirely under certain conditions, open the text field properties and change the visibility setting from 'Hidden but printable' to simply 'Hidden'. However, doing this will prevent the expiration date from appearing on the printed page.




