我有一个带有页眉和页脚的docx模板以及一些文本。现在我想在文档中添加一些具有指定最大大小的图像。
如果我尝试使用pandoc-ruby gem并生成一个html字符串并将其转换为word文档,那么我没有选择使用pandoc向生成的doc添加页眉和页脚。
在尝试了多种方法之后,我最终编写了一个gem Omnidocx来完成这项工作。
你可以找到gem here的源代码。
请查看使用此行下方的gem Omnidocx将图像添加到doc的示例。
images_to_write = [ {
:path => "tmp/image1.jpg", #URL || local path
:height => 500,
:width => 500,
:hdpi => 115, #optional
:vdpi => 115 #optional
},
:path => "www.xyz.com/abc.jpeg", #URL || local path
:height => 800,
:width => 500,
:hdpi => 115, #optional
:vdpi => 115 #optional
}
]
Omnidocx::Docx.write_images_to_doc(images_to_write=[], input_document_path, output_document_path)
可以使用gem htmltoword'https://github.com/karnov/htmltoword我做了这些动作。在Mime_types我设置
Mime::Type.register "application/vnd.openxmlformats-officedocument.wordprocessingml.document", :docx
在路线中我设置
get "create_docx" => "Some_controllers#create_docx", format: 'docx'
我在'Some_controller'中创建了动作'create_docx',然后我传递了HTML-object
@thumb = Nokogiri::HTML::Document.parse(@fips_tz.doc).css('img')[1]
我从URL'/ Some_controller / create_docx获得了带有img的docx'不设置格式的操作,我们得到错误'无法识别的度量单位:'否则。 qazxsw poi