从pdf中提取多个单独的页面

时间:2017-11-21 19:01:51

标签: javascript pdf batch-processing acrobat

我有一个1590页的pdf,我希望从第8页开始提取每第15页。

我在javascript非常缺乏经验,我该怎样做这样的事情?

到目前为止,这是我的代码,但是我收到了错误。

this.extractPages(5, 8, 23, 38, 53, 68, 83 ,98, 113, 128, 143, 158, 173, 188, 203, 218, 233, 248, 263, 278, 293, 308, 323, 338, 353, 368, 383, 398, 413, 428, 443, 458, 473, 488, 503, 518, 533, 548, 563, 578, 593, 608, 623, 638, 653, 668, 683, 698, 713, 728, 743, 758, 773, 788, 803, 818, 833, 848, 863, 878, 893, 908, 923, 938, 953, 968, 983, 998, 1013, 1028, 1043, 1058, 1073, 1088, 1103, 1118, 1133, 1148, 1163, 1178, 1193, 1208, 1223, 1238, 1253, 1268, 1283, 1298, 1313, 1328, 1343, 1358, 1373, 1388, 1403, 1418, 1433, 1448, 1463, 1478, 1493, 1508, 1523, 1538, 1553, 1568, 1583, "TestExtract1.pdf")

1 个答案:

答案 0 :(得分:2)

您可以在打开PDF的Acrobat JS控制台中使用以下内容。 由于它会计算从0开始的网页,因此您需要从7开始,而不是8

如果您设置了首页& interval作为变量,您可以更轻松地编辑和重用脚本。

var start=7;
var interval=15;

for (var i=start; i<this.numPages; i+=interval) {     
      if(i<=this.numPages){
       console.println(i)
       this.extractPages(i); 
      }
      else {
        console.println("pg does not exist at " + i);
      }      
 }

这会将每个提取的页面作为单独的文件打开,然后您必须重命名并保存到所需的位置。与那个重命名的教程相关。保存文件,但它不再像解释的那样工作。也不确定if/else检查是否有必要,但不确定如果添加15pgs超过长度&amp;它试图提取一个不存在的页面。

这足以让您获得所需的页面。如果我得到命名和编辑,将编辑节省部分工作。 Adobe JS文档有点混乱,这个控制台很糟糕......