我正在使用此文档,但不确定是否可行。我想使用 JavaScript 识别文档中 28 个字符的每个实例。我想有两种方法可以解决它,但不确定如何进行。
有没有办法只查看文档中每个表格中的某个单元格
有没有办法在没有空格的情况下为每个 28 个字符的字符串搜索整个文档?
我的最终目标是将其附加到 url,然后从创建 URL 导入图像。目前我拥有的脚本可以完成所有这些,但我必须选择密钥而不是让它检测这里的密钥是链接
function getmyImage() {
var doc= DocumentApp.getActiveDocument()
var selection = doc.getSelection()
var tables1 = doc.getBody().getTables()
var table1 = tables1[0].getChild(0).asTableRow().getCell(1).getText()
var elements = selection.getRangeElements()
// Report # elements. For simplicity, assume elements are paragraphs
if (elements.length > 1) {
}
else {
var element = elements[0].getElement();
var startOffset = elements[0].getStartOffset(); // -1 if whole element
var endOffset = elements[0].getEndOffsetInclusive(); // -1 if whole element
var id = element.asText().getText(); // All text from element
// Is only part of the element selected?}
var image = DriveApp.getFileById(id).getBlob()
var totaltables = doc.getBody().getTables().length
var tables = doc.getBody().getTables()
for( var j = 0; j < totaltables; ++j ) {
var rows = tables[j].getNumChildren();
for( var i = 0; i < rows; ++i ) {
var krow = tables[j].getChild(i).asTableRow()
var kcell = krow.getCell(1)
var ksearch = kcell.getText()
if (ksearch == id){
var pimg = kcell.appendParagraph("").appendInlineImage(image).setHeight(400).setWidth(500)
}
}
}
}}
只是更新。如果表格只有一个元素,我已经找到了一种搜索表格的方法,但不确定如何遍历所有单元格和所有表格。这是新代码
function onOpen() {
DocumentApp.getUi()
.createMenu("Menu ")
.addItem("Insert Image","getMyImage")
.addToUi()
}
function getMyImage() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var table = body.getTables();
for (var i = 0; i < table.length; i++){
var imageId = table[i].getChild(0).asText().getText();
if (imageId.length == 28) {
var file = DriveApp.getFileById(imageId);
var image = file.getBlob();
var link = file.getUrl();
var appendImage = table[i].getChild(0).asTableRow().clear().appendTableCell().appendImage(image)
.setHeight(400).setWidth(500).setLinkUrl(link);
}}}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句