Google Apps脚本;文档;将选定元素转换为HTML [英] Google Apps Script; Docs; convert selected element to HTML

查看:132
本文介绍了Google Apps脚本;文档;将选定元素转换为HTML的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚从Google Apps Script开始,然后按照附加组件快速入门

https://developers.google.com/apps-script/quickstart/docs



在快速启动您可以创建一个简单的附加组件,以从文档中获取选择内容并使用LanguageApp服务进行翻译。该示例使用以下方法获取底层文本:

  function getSelectedText(){
var selection = DocumentApp.getActiveDocument() .getSelection();
if(selection){
var text = [];
var elements = selection.getSelectedElements();
for(var i = 0; i< elements.length; i ++){
if(elements [i] .isPartial()){
var element = elements [i] .getElement ().asText();
var startIndex = elements [i] .getStartOffset();
var endIndex = elements [i] .getEndOffsetInclusive();

text.push(element.getText()。substring(startIndex,endIndex + 1));
} else {
var element = elements [i] .getElement();
//只翻译可以编辑为文本的元素;跳过图像和
//其他非文本元素。
if(element.editAsText){
var elementText = element.asText()。getText();
//这个检查对排除图像是必要的,它会返回一个空白的
//文本元素。
if(elementText!=''){
text.push(elementText);
}
}
}
}
if(text.length == 0){
throw'请选择一些文本。
}
返回文本;
} else {
throw'请选择一些文字。';




$ b $ p $它只获取文本: element.getText(),没有任何格式。



我知道底层对象不是HTML,但有没有办法获得选择转换成HTML字符串?例如,如果所选内容包含格式的混合,如粗体:


这是一个带粗体的示例。文本

然后是否有任何方法,扩展,库等 - 像 element.getHTML()


这是一个带有< b>粗体的样本< / b>文本


而不是这个?


这是一个带有粗体文本的样本



解决方案

有一个脚本 GoogleDoc2HTML 作者:Omar AL Zabir。其目的是将整个文档转换为HTML。由于您只想在选定元素内转换富文本,因此与您的任务相关的函数是

登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆