如何替换pdf文件中的文本?

时间:2012-11-11 15:58:33

标签: google-apps-script

是否可以使用Google Apps脚本替换pdf文件中的文字?

我正在尝试以下代码而没有成功替换,似乎字符串以我无法理解的方式编码。

  var pdfFile = DocsList.getFileById("pdf-doc-id");
  var asBlob = pdfFile.getBlob();
  var asString = asBlob.getDataAsString();
  var s2s = "old string";
  var s2r = "new string";
  var repString = asString.replace(s2s, s2r);
  var repBlob = Utilities.newBlob(repString).setContentType("application/pdf").setName("Testing");
  DocsList.createFile(repBlob);

EDIT1:我得到了一个空的pdf回复

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:1)

函数getDataAsString()不返回PDF文件的文本内容,而是返回文件二进制内容的文本表示。该函数适用于任何文件,即使是那些没有文本的文件(如图像)。

不幸的是,我不认为您可以使用Apps脚本完全实现目标。如果您能够使用Drive UI将PDF导入为Google文档,则可以使用Apps Script的DocumentApp修改文档并将其导出为PDF格式。