在Google文档中将项目符号更改为短划线( - )

时间:2017-11-27 05:55:48

标签: google-apps-script google-docs

我们有一个函数将glyphType设置为DocumentApp.GlyphType.BULLET

listItem.setGlyphType(DocumentApp.GlyphType.BULLET)

但是,有没有办法将glyphType设置为破折号( - )?

例如,我们的列表如下。

- Item 1
- Item 2
- Item 3

参考:https://developers.google.com/apps-script/reference/document/list-item#setGlyphType(GlyphType)

2 个答案:

答案 0 :(得分:0)

短划线不是listed作为字形类型。但这是一个解决方案。您可以使用主文档中的占位符项创建预填充列表,复制列表并将项目替换为目标文档。也许这是为子弹造型的很多努力,但它可以工作。

答案 1 :(得分:0)

@Jason Allshorn是正确的。我能够使用应用程序脚本设置自定义项目符号。我有一个模板文档,我将其复制以制作新文档。在此模板中,我使用自定义项目符号字形创建了一个列表项,文本"列表项"。谷歌,那些巨大的点是什么?丑陋!我在文档中找到该列表项,将其复制并删除。代码如下:

function getListItem(ss, doc) {
var body = doc.getBody();
for (var i = 0; i < body.getNumChildren(); i++) {
    var child = body.getChild(i);
    var childType = child.getType();
    if (childType == DocumentApp.ElementType.LIST_ITEM && child.getText() == 'list item') {
        var customBulletListItem = child.copy();
        body.removeChild(child);
        break;
    }
}
return customBulletListItem;

}

...然后当我添加一个列表项(li)时,我会执行以下操作:

body.insertListItem(i, li.copy());
body.getChild(i).replaceText("list item", "My new list item text");
body.getChild(i).setIndentFirstLine(0).setIndentStart(15);
body.getChild(i).editAsText().setBold(true);

这让我得到了我的自定义项目符号字形。最后两行修复了列表项上的巨大缩进并粗线。谷歌,巨大的缩进是什么?难看!