我目前正在构建一个使用PHP库DOMPDF从HTML生成PDF的应用程序。 PDF需要能够更新他们的内容或下载更新的版本,如果它可以从站点API获得并实现这一点我相信我将不得不使用Acrobat Javascript,但我不知道如何做到这一点。我已经写了下面的javascript,它嵌入在PDF中虽然它什么都不做(甚至没有显示警告框)。它是使用html头中的<script type="text/javascript">
标记嵌入的。
对此的任何帮助将不胜感激:)
// The JS that needs to be inserted in to a PDF file to self update
app.alert('checking for updates');
var version = "1";
var book_id = "1234";
var update_url = "http://localhost/koolbookz/"+book_id+"/"+version;
// Open the source documents:
var source1 = app.openDoc(update_url);
// Obtain the OCG order array for each source document:
var mergedOCGArray = new Array();
var source1OCGArray = source1.getOCGOrder();
// Merge the OCG order arrays into the target array:
for (var i=0; i<source1OCGArray.length; i++) mergedOCGArray[i] = source1OCGArray[i];
var offset = source1OCGArray.length;
// Create the target document:
var target = app.newDoc(book_id+".pdf");
// Insert source1.pdf:
target.insertPages({
nPage : -1,
cPath : update_url,
});
// Set the OCG order array in the target document
target.setOCGOrder(mergedOCGArray);
// Save the target document:
target.saveAs(book_id+".pdf");
// Close the target document without notifying the user:
//target.closeDoc(true);
答案 0 :(得分:0)
必须对网址进行转义,并且openDoc方法应如下所示:
var myURL = encodeURI(“http://www.example.com”);
app.openDoc({cPath:myURL,cFS:“CHTTP”});
CPATH:“要打开的文档的设备无关路径。如果指定了oDoc,则路径可以相对于它。目标文档必须可以在默认文件系统中访问。”
CHTTP:“指定源文件系统名称的字符串。支持两个值:(空字符串,默认值),表示默认文件系统,”CHTTP“。此参数仅在网络服务器支持 WebDAV 。“