Highlighted

Removing Reader Extensions in Reader

Avatar

03-12-2008

I have a number of Reader Extended forms that are used by clients. In some cases, it would be useful to send a form to a third party without them being able to further edit the contents of the form. This is why I am wondering whether it is possible to save a non-Reader Extended copy of a form directly from Adobe Reader.



I have the possibility to use both an Adobe Reader Plug-in and javascript on the form, but I cant seem to find a solutions in any of the API descriptions. From javascript, I can use the doc.saveAs(...) method to save a copy of the form, but the result is another editable file. Is the any way to achieve my desired result?

Replies

Highlighted

Avatar

Avatar

pguerett

Total Posts

7.7K

Likes

611

Correct Answer

692

Avatar

pguerett

Total Posts

7.7K

Likes

611

Correct Answer

692
pguerett

03-12-2008

You cannot effect the rights that were placed on the form from Reader. You can use the Reader Extensions Server to remove or change rights on a PDF. Even if you remove the Reader Extensions rights then the form is still editable, they simply will not be able to save it locally. Can you explain what you mean by editable file ...maybe there is another way?
Highlighted

Avatar

03-12-2008

Hi Paul and thank you for your answer.



My aim is simply to create a version of the PDF form in which the content of fields cannot be changed (i.e. a static/flat version). Unfortunately I have no access to server products with the particular product I am developing.



Yesterday I experimented with setting the read only property of all fields on the form and saving it. For som reason, however, when I save the form open it again, the fields are no longer read only.



Here is my code (placed in a trusted function):



>for (var nPageCount = 0; nPageCount < doc.xfa.host.numPages; nPageCount++) {

>

> var oFields = doc.xfa.layout.pageContent(nPageCount, "field");

>

> var nNodesLength = oFields.length;

>

> for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {

>

> oFields.item(nNodeCount).access = "readOnly";

>

>}

>

>}

>

>doc.saveAs(doc.path);
Highlighted

Avatar

Avatar

pguerett

Total Posts

7.7K

Likes

611

Correct Answer

692

Avatar

pguerett

Total Posts

7.7K

Likes

611

Correct Answer

692
pguerett

04-12-2008

That code will work but you will have to set a flag or a way of telling the form when it loads that you want to lock the fields down. Then run that code if this is a second opening of the form.
Highlighted

Avatar

04-12-2008

OK. I will try setting a value in a hidden field and check it on startup.



Right now, my trusted function is placed in an external .js-file, so I'll have to make some changed there too.



Thank you for you help!