How to convert ruby file in word file i.e (docx file). For pdf, we prawn gem. But is there any gem for word file. I am trying to convert my html file in word file so that it can be editable for user too. What should do in that case ? I was planning to convert that file in word file. Will it be possible or not.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
If you are using Rails:
in initializers/mime_types.rb:
Mime::Type.register 'application/vnd.ms-word', :msword in your controller:
say you want to export show action:
def show @item = Item.find params[:id] respond_to do |format| format.html # show.html.erb format.xml { render :xml => @item } format.msword { set_header('msword', "#{@item.title}.doc") } format.pdf do render :pdf => 'Coming soon...', :layout => false end end end define set_header in application_controller.rb:
def set_header(p_type, filename) case p_type when 'xls' headers['Content-Type'] = "application/vnd.ms-excel; charset=UTF-8'" headers['Content-Disposition'] = "attachment; filename=\"#{filename}\"" headers['Cache-Control'] = '' when 'msword' headers['Content-Type'] = "application/vnd.ms-word; charset=UTF-8" headers['Content-Disposition'] = "attachment; filename=\"#{filename}\"" headers['Cache-Control'] = '' end end now define a show.msword.erb #you can use any template handler like haml etc.
YOUR HTML HERE TO EXPORT TO DOC AS LIKE NORMAL ERB TEMPLATE 回答2:
Use htmltoword gem. https://github.com/nickfrandsen/htmltoword
it hasn't been updated since November 2015, but works well.