gpt4 book ai didi

lua - 将样式 ID/名称从 HTML 携带到 .docx?

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

是否有可能以某种方式告诉 pandoc 将样式名称从原始 HTML 传输到 .docx?

我知道为了调整实际样式,我应该使用 pandoc 生成的 reference.docx 文件。但是,reference.docx 受限于它必须具有的样式:标题、正文、 block 文本等。

我愿意:

  1. 在输入 HTML 中指定“myStyle”样式(通过“class”属性,通过任何其他 HTML 属性,甚至通过用 Lua 编写的过滤器代码),

    <html>
    <body>
    <p>Hello</p>
    <p class="myStyle">World!</p>
    </body>
    </html>
  2. 使用 Word 将自定义“myStyle”添加到 reference.docx

  3. 运行一个 html->docx 转换一个预期的 pandoc 生成一个带有“myStyle”的段落元素(而不是 BodyText,我相信它由 default 设置),所以最终结果看起来像这样(生成的 output.docx 中的 word/document.xml 的内容为简洁起见被删减了):

    <w:p>
    <w:pPr>
    <w:pStyle w:val="BodyText" />
    </w:pPr>
    <w:r>
    <w:txml:space="preserve">Hello</w:t>
    </w:r>
    </w:p>
    <w:p>
    <w:pPr>
    <w:pStyle w:val="myStyle" />
    </w:pPr>
    <w:r>
    <w:txml:space="preserve">World!</w:t>
    </w:r>
    </w:p>

some evidence styleId 可以是 passed around ,但我并不真正理解它,也找不到任何关于它的文档。

关于 filtering in Lua 的文档声明你可以在操作 pandoc.div 时访问 attrs,但它没有说明任何 attrs 是否会被 pandoc 以任何有意义的方式解释。

最佳答案

终于找到了我需要的东西 – Custom styles .它是有限的,但比我之前到达的要好,当然也比什么都没有好得多:)

我会在此处留下分步指南,以防有人遇到类似问题。

首先,生成一个 reference.docx 文件,如下所示:

pandoc --print-default-data-file reference.docx > styles.docx

然后在 MS Word 中打开文件(我使用的是 macOS 版本)你会看到:

enter image description here

单击右侧的“新样式...”按钮,创建您喜欢的样式。在我的例子中,我将文本的样式更改为粗体,蓝色:

enter image description here

因为我正在从 HTML 转换为 DOCX,所以这是我的 input.html:

<html>
<body>
<div>Page 1</div>
<div custom-style="eugene-is-testing">Page 2</div>
<div>Page 3</div>
</body>
</html>

运行:

pandoc --standalone --reference-doc styles.docx --output output.docx input.html

最后,享受结果:

enter image description here

关于lua - 将样式 ID/名称从 HTML 携带到 .docx?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62699091/

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