gpt4 book ai didi

google-apps-script - 我可以自动将标题文本添加到 Google 文档文件的页脚吗?

转载 作者:行者123 更新时间:2023-12-05 06:52:04 24 4
gpt4 key购买 nike

我有一份文件,大约包含 20 章,共 60 页。每个新章节都从新页面的顶部开始。我想做的是自动将事件章节标题添加到该页面的页脚。我知道这种行为在 Microsoft Word 中是可能的,但我无法在 Google 文档中找到它。

可以通过插入分节符手动完成,但这对我来说很不方便,因为我想在超过 1.000 个不同的文档中使用这个过程。

例子:

第 1 章称为“测试章”,从第 1 页开始第 2 章称为“另一章”,从第 4 页开始

然后在第 1、2 和 3 页的页脚应包含文本“测试章节”。在第 4 页,页脚应包含文本“另一章”。

提前致谢!

最佳答案

不幸的是,自 bug 发布以来,这仍然不可用,并且没有更新。 .

我一直在尝试通过 Apps 脚本规避此问题,但从未找到合适的解决方案,因为页脚和页眉被视为一个整体。

默认情况下,更改页 footer 分将应用于所有页 footer 分,如果它们由分节符分隔,则它们不是按页面排序,而是按它们在文档中添加的顺序排列,因此这会很棘手并且会要求您按此顺序添加它们才能使我的代码正常工作。

对象顺序:

order

BODY_SECTION 之后,文档的下一个子项应该是 HEADER_SECTION 然后是 FOOTER_SECTION

注意:

  • Logger.log 部分代码显示了您的文件的对象顺序。如果它看起来像上面的顺序,那么下面的代码将起作用。

代码:

function setHeaderAsFooter() {
var d = DocumentApp.getActiveDocument();
var p = d.getBody().getParent();

for ( var i = 0; i < p.getNumChildren(); i += 1 ) {
var c = p.getChild(i);
var t = c.getType();
// Check what type is the object
// Comment out if-block below to see if what is the object order in your document
Logger.log(t);
// Every header you encounter, set it as footer value of the next object
if ( t === DocumentApp.ElementType.HEADER_SECTION) {
var f = c.getNextSibling();
f.asFooterSection().setText(c.asHeaderSection().getText());
}
}
}

如果它们不是在 HEADER -> FOOTERBODY 之后的交替顺序,那么上面的代码将不起作用。

这很可能不是您所希望的答案,因此我深表歉意。我希望这个答案至少能以任何方式帮助您。

关于google-apps-script - 我可以自动将标题文本添加到 Google 文档文件的页脚吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66029226/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com