<< | Index | >>
Added image support.
copied image file into _files directory from docx.
FileUtils.mkdir @files unless @files.exist?
@zip = Zip::ZipFile.open(@path.realpath)
@pictures.each do |pic|
pic_path = Pathname.new pic # id/filename.ext
pic_dir = @files.join pic_path.dirname
FileUtils.mkdir pic_dir unless pic_dir.exist?
binary = @zip.find_entry("word/media/#{pic_path.basename}").get_input_stream
@files.join(pic_path).open('w') do |f|
f.puts binary.read
end
end
@zip.close
If overwrite .docx file with liberoffice, then all images are gone.
(word/media directory and entries in document.xml.rels)
Magick::ImageList "WMF" #<Pathname:rid8/image1.png> /home/yasu/Documents/workspace/ywesee/ydocx/repo/lib/ydocx/document.rb:87:in `write': WriteBlob Failed `rid8/image1.png' @ error/png.c/MagickPNGErrorHandler/1728 (Magick::ImageMagickError)
create image from blob data with RMagick. (use to_blob)
image = Magick::Image.from_blob(File.read('/path/to/image.wmf')).first
image.format # => "WMF"
image.format = "PNG"
File.open('image.png','wb') do |f|
f << image.to_blob
end
ch.oddb> registration('47551').sequence('01').packages.values.last.add_mail_order_price('9.99', 'http://www.ywesee.com', 'Logo_R.jpg')
-> #<ODDB::Package:0xb6522cc>
ch.oddb> registration('47025').sequence('02').packages.values[1].add_mail_order_price('7.90', 'http://www.ywesee.com', 'zurRose.jpg')
-> #<ODDB::Package:0xc319974>
ch.oddb> registration('41810').sequence('01').packages.values.last.delete_all_mail_order_prices
