Set PDF page layout to “TwoPageLeft” using JavaScript (Acrobat Pro)

心已入冬 提交于 2021-01-29 05:32:19

问题


I would like to change (or add if it doesn't exist) to a PDF file with multiple pages the setting that will force the PDF to be opened in two page mode (PageLayout : TwoPageLeft for example). I tried with that kind of JavaScript (given with Enfocus FullSwitch as example) :

if(($error == null) && ($doc != null))
{
try
{
    $outfile = $outfolder + '/' + $filename + ".pdf";
    $doc.layout = "TwoPageLeft";
    $doc.saveAs( {cPath : $outfile, bCopy : true});
    $outfiles.push($outfile);
}
catch(theError)
{
    $error = theError;
    $doc.closeDoc( {bNoSave : true} );
}
}

But it doesn't work as I would like (it will be opened with Acrobat Pro and saved as a new file without including the setting about the layout).

Does anyone can help me to correct that code to let JS open the PDF file, set the layout inside the PDF datas and save it out?

The readable information inside the PDF file should looks like this:

PageLayout/TwoPageLeft/Type/Catalog/ViewerPreferences

For information, I'm using FullSwitch (Enfocus) to handle files in a workflow, with Acrobat Pro, and at this time, it's only saving the file without adding the setting.

I can't find myself the answer over all the Web I searched recently, so I ask…

Thanks in advance!


回答1:


I think you copied the "this.layout = ..." line out of the Acrobat JavaScript reference documentation, correct?

When you write a JavaScript for Switch to execute (or rather for Switch to instruct Acrobat to execute for you), you should use the "$doc" variable to refer to the document Switch is processing.

So try changing the line:

$this.layout = "TwoColumnLeft";

to

$doc.layout = "TwoColumnLeft";

As you say the rest of the code works and the document is saved without errors I assume the rest of your code is correct. The change proposed here will make the adjustment in the document you're looking for.



来源:https://stackoverflow.com/questions/14222048/set-pdf-page-layout-to-twopageleft-using-javascript-acrobat-pro

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!