如何检查注解/注释多个PDF文件?

问题描述 投票:0回答:2

问题:我经常收到PDF报告和注释(高亮显示等),其中的一些。我曾与未标注的PDF文件一起保存批注的PDF文件的坏习惯。我现在有几百个在同一文件夹中的PDF文件中,一些注释,有些不是。有没有一种方法来检查注释和副本只有那些注释每个PDF文件到一个新的文件夹?

非常感谢!

我在Win 7 64位,我有安装Adobe Acrobat XI和我能够做一些初级的编码在Python和JavaScript


请忽略以下建议,因为答案已经解决了这个问题。

编辑:继韦斯先生的建议下,我创建为Acrobat的JavaScript控制台下面的代码将在开始时只运行一次:

counter = 1;

// Open a new report
var rep = new Report();
rep.size = 1.2;
rep.color = color.blue;
rep.writeText("Files WITH Annotations");

那么这段代码也应适用于所有的PDF文件:

this.syncAnnotScan();
annots = this.getAnnots();
path = this.path;
if (annots) {
    rep.color = color.black;
    rep.writeText(" ");
    rep.writeText(counter.toString()+"- "+path);
    rep.writeText(" ");
    if (counter% 20 == 0) {
        rep.breakPage();
    }
    counter++;
}

而且,最后,一个代码只进行一次,在结束时运行:

//Now open the report
var docRep = rep.open("files_with_annots.pdf");

有两个问题的解决方案:

1.“操作向导”似乎总是重新应用相同的代码添加到每个PDF(这意味着,“反”变量,例如,是毫无意义的,它永远是= 1。但更重要的是,变种“代表”将当中间代码是在不同的PDF运行是未赋值)。 2.我怎样才能让应只运行一次的代码只在开始或结束时运行,而不是为每一个PDF运行每次(像它在默认情况下),?

再次感谢您的帮助!

pdf annotations
2个回答
0
投票

这将使用Action向导放在一起的行动是可能的。

该函数来确定是否有在文档中的注释将在Acrobat的JavaScript来实现。粗略地说,核心功能是这样的:

this.syncAnnotScan() ; // updates all annots
var myAnnots = this.getAnnots() ;
if (myAnnots != null) {
// do something if there are annots
} else {
// do something if there are no annots
}

这应该让你那里。

我不能完全肯定的,但我认为还有一个预检检查,告诉你是否有文件中注释。如果是这样,你可以创建一个预检液滴,这将挑选出的注解,而不是注释的文档。


0
投票

怀斯先生是正确的,这里有一个一步一步的指导:

  1. 在Acrobat XI Pro中,进入“工具”面板的右侧
  2. 点击“操作向导”选项卡(你必须先使它可见,虽然)
  3. 点击“创建新动作...”,选择“更多工具”>“执行JavaScript”并将其添加到右侧窗格中>点击“执行JavaScript”>“指定设置”(取消“提示用户”,如果你想)>粘贴此代码:

.

this.syncAnnotScan();
var annots = this.getAnnots();
var fname = this.documentFileName;
fname = fname.replace(",", ";");
var errormsg = "";
if (annots) {
    try {
        this.saveAs({
            cPath: "/c/folder/"+fname,
            bPromptToOverwrite: false //make this 'true' if you want to be prompted on overwrites
        });
    } catch(e) {
        for (var i in e)
        {errormsg+= (i + ": " + e[i]+ " / ");}
        app.alert({
            cMsg: "Error! Unable to save the file under this name ('"+fname+"'- possibly an unicode string?) See this: "+errormsg,
            cTitle: "Damn you Acrobat"
        });
    }
;}
annots = 0;

保存并运行它!您的所有注释PDF文件将被保存到“C:\文件夹”(!但前提是这个文件夹已经存在)

一定要启用“编辑”第一个JavaScript>“首选项...”>“的JavaScript”>“启用Acrobat中的Javascript”。

非常重要:Acrobat的JS有不允许文档与逗号得救(“”)在其名称中的错误(例如,‘与供应商,五月11th.pdf会议’ - 这会得到一个错误)。因此,我代替上面所有的代码“”为‘;’。

© www.soinside.com 2019 - 2024. All rights reserved.