[英]how to convert pdf file into xlsx file in ruby on rails
我已上传1个PDF,然后将其转换为xlsx文件。 我尝试了不同的方法,但未获得实际输出。pdf2xls仅显示单行格式,而不显示整个文件数据。 我希望整个PDF文件数据显示在xlsx文件上。
我有一种方法将PDF转换为xlsx,但无法显示正确的格式。
def do_excel_to_pdf
@user=User.create!(pdf: params[:pdf])
@path_in = @user.pdf.path
temp1 = @user.pdf.path
@path_out = @user.pdf.path.slice(0..@user.pdf.path.rindex(/\//))
query = "libreoffice --headless --invisible --convert-to pdf " + @path_in + " --outdir " + @path_out
system(query)
file = @path_out+@user.pdf.original_filename.slice(0..@user.pdf.original_filename.rindex('.')-1)+".pdf"
send_file file, :type=>"application/msexcel", :x_sendfile=>true
end
如果有任何用途,请帮助我,任何宝石或任何脚本。
无法找到将PDF转换为xsls的选项,但是API选项可用于将PDF转换为图像并将PDF转换为powerpoint(下面给出的链接)不确定您是否可以更改要求以其他格式显示结果!
我将从读取PDF开始,将数据插入XLSX很容易,如果您对此有疑问,请问另一个问题,并指定要使用哪个gem,以及对该部分尝试了什么。
您使用libreoffice来阅读PDF,但是根据常见问题解答,您的PDF需要混合使用,也许就是问题所在。
作为替代方案,您可以尝试对电子书使用某些转换工具,例如Calibre中的电子书,但恐怕您会丢失太多格式来恢复所需的数据。
一切都取决于PDF中数据的结构,如果常规文本没有太多格式和位置,就可以像使用gem pdf阅读器一样容易
我过去使用过它,并且我的数据有很多格式-您会惊讶地知道PDF结构多么复杂-因此我必须为每个字段指定必须在哪个位置准确读取哪些数据,而不是为心虚。
这里有个简单的例子。
require 'pdf/reader' # gem install pdf-reader
reader = PDF::Reader.new("my.pdf")
reader.pages.each do |page|
# puts page.text
page.page_object.each do |e|
p e.first.contents
end
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.