将粗体文本转换为蓝色

时间:2012-11-26 21:54:56

标签: google-apps-script google-docs

我创建了很多Google文档文档,我必须以粗体和蓝色手动格式化文本。要以粗体格式化文本的某些部分很容易,因为有一个快捷方式(Ctrl + B),但很难着色(需要2次点击)。如果我点击菜单中的按钮(由Google Apps脚本创建)并将所有文本格式化为蓝色(保留粗体),该怎么办。


一个例子:如果我们有“ Hello wo rld”,我想将“ Hello wo ”部分涂成蓝色。

谢谢:D

2 个答案:

答案 0 :(得分:5)

虽然您无法使用自定义菜单执行此操作,但您可以通过创建独立的应用程序脚本并在将元素设置为粗体后按文档ID在文档上运行该脚本来执行此操作。以下代码打开一个doc,获取文本格式更改的标记,循环显示这些标记以查看它是否更改为粗体,然后将以下部分的颜色设置为蓝色。这段代码可以让你开始,但你需要玩它来消除边缘情况。

function boldToBlue() {
  // replace with your doc ID
  var doc = DocumentApp.openById('1vfxetEhzOTXm_r9f-GanM4mSTwSkWrRsrgVsCy5laKU');
  var docText = doc.editAsText();
  var idc = docText.getTextAttributeIndices(); // gets text indicies where formatting changes

  // loop through formatting changes. If changes -> bold, make next section also blue
  for (var i = 0; i < idc.length-1; i++) {
    if (docText.isBold(idc[i])) {
      docText.setForegroundColor(idc[i], idc[i+1]-1, '#00FFFF');
    }
  }
}

我通过问题文本将代码作为示例运行:

之前: before image

后: after image

答案 1 :(得分:0)

Google文档目前无法使用自定义菜单。您可以提交功能请求here