RUBY 具有特定格式的纯文本到 Docx
RUBY plain text to Docx with specific formatting
我经常需要制作非常标准的 word 文档。某些参数的内容会发生变化,但它始终是预先编写的内容的混合体。所以我决定编写一些 ruby 代码来更轻松地完成这项工作,并且它在创建包含我需要的最终文本的 txt 文件方面效果很好。
问题是我需要将此文本转换为 .docx
并具有特定格式。所以,我试图找到一种方法来在文本文件中指示哪些文本应该是粗体、斜体、具有不同的缩进或作为脚注,以便于解释(就像 html 那样)。例如:
<b>
这段文字应该加粗</b>
\t
缩进适用于制表符
<i>
希望这可以是斜体</i>
<f>
我希望这可以作为前一个短语的脚注</f>
但是,我无法做到这一点。
有人知道如何实现吗?我读过有关宏和 pandoc 的信息,但没有任何运气实现这一目标。对于宏来说似乎太复杂了。也许我正在尝试的不是最好的方法。也许使用 LaTeX 或创建 html 然后转换为 word? html 可以创建脚注吗? (那个好像是最复杂的)
我不知道,我只是通过视频教程Ruby学习的,所以我的知识很有限。
谢谢大家!
编辑:Arjun 的回答几乎解决了整个问题,但他指出的 gem 不包括脚注功能,不幸的是,脚注构成了我文档的很大一部分。因此,如果有人知道 gem 可以,将不胜感激。谢谢!
啊 Ruby 得到了 gems ;)
https://github.com/trade-informatics/caracal
这将帮助您从 Ruby 代码本身编写文档。
来自自述文件
docx.p 'this text should be bold' do
style 'custom_style' # sets the paragraph style. generally used at the exclusion of other attributes.
align :left # sets the alignment. accepts :left, :center, :right, and :both.
color '333333' # sets the font color.
size 32 # sets the font size. units in 1/2 points.
bold true # sets whether or not to render the text with a bold weight.
italic false # sets whether or not render the text in italic style.
underline false # sets whether or not to underline the text.
bgcolor 'cccccc' # sets the background color.
vertical_align 'superscript' # sets the vertical alignment.
end
还有这个 gem、https://github.com/nickfrandsen/htmltoword,它将普通 html 转换为 doc 文件。不过我还没试过。
我经常需要制作非常标准的 word 文档。某些参数的内容会发生变化,但它始终是预先编写的内容的混合体。所以我决定编写一些 ruby 代码来更轻松地完成这项工作,并且它在创建包含我需要的最终文本的 txt 文件方面效果很好。
问题是我需要将此文本转换为 .docx
并具有特定格式。所以,我试图找到一种方法来在文本文件中指示哪些文本应该是粗体、斜体、具有不同的缩进或作为脚注,以便于解释(就像 html 那样)。例如:
<b>
这段文字应该加粗</b>
\t
缩进适用于制表符
<i>
希望这可以是斜体</i>
<f>
我希望这可以作为前一个短语的脚注</f>
但是,我无法做到这一点。
有人知道如何实现吗?我读过有关宏和 pandoc 的信息,但没有任何运气实现这一目标。对于宏来说似乎太复杂了。也许我正在尝试的不是最好的方法。也许使用 LaTeX 或创建 html 然后转换为 word? html 可以创建脚注吗? (那个好像是最复杂的)
我不知道,我只是通过视频教程Ruby学习的,所以我的知识很有限。
谢谢大家!
编辑:Arjun 的回答几乎解决了整个问题,但他指出的 gem 不包括脚注功能,不幸的是,脚注构成了我文档的很大一部分。因此,如果有人知道 gem 可以,将不胜感激。谢谢!
啊 Ruby 得到了 gems ;)
https://github.com/trade-informatics/caracal
这将帮助您从 Ruby 代码本身编写文档。
来自自述文件
docx.p 'this text should be bold' do
style 'custom_style' # sets the paragraph style. generally used at the exclusion of other attributes.
align :left # sets the alignment. accepts :left, :center, :right, and :both.
color '333333' # sets the font color.
size 32 # sets the font size. units in 1/2 points.
bold true # sets whether or not to render the text with a bold weight.
italic false # sets whether or not render the text in italic style.
underline false # sets whether or not to underline the text.
bgcolor 'cccccc' # sets the background color.
vertical_align 'superscript' # sets the vertical alignment.
end
还有这个 gem、https://github.com/nickfrandsen/htmltoword,它将普通 html 转换为 doc 文件。不过我还没试过。