我正在使用回形针将pdf文件转换为图像。
我的代码如下所示
def convert_keynote_to_slides
system('convert -size 640x300 ' + keynote.queued_for_write[:original].path + ' ' + KEYNOTE_PATH + '/' + File.basename( self.keynote_file_name )+"%02d.png")
slide_basename = File.basename( self.keynote_file_name )
files = Dir.entries(KEYNOTE_PATH).sort
for file in files
#puts file if file.include?(slide_basename +'-')
self.slides.build("slide" => "#{file}") if file.include?(slide_basename)
end
end我相信这可以被重构以更好地工作。
我的问题是:
有没有办法弄清楚ImageMagick的进度,如果没有,我该如何把它放到一个延迟的工作中,因为我担心这不会很好地扩展。
有没有人能告诉我如何让这段代码变得更好/更高效?KEYNOTE_PATH指向一个公开的目录,其中所有的图像都保存在一个文件夹中,我不确定我是否喜欢这样。可能更好的做法是为每个文件指定一个随机名称。
发布于 2011-06-09 09:04:37
我希望您正在对keynote.queued_for_write[:original].path和File.basename( self.keynote_file_name )输入变量进行广泛的过滤,这样您就不会受到shell meta-character injection attacks的影响。
https://stackoverflow.com/questions/6286994
复制相似问题