0

私はエクセル文書を持っています。グラフィカル オブジェクト (チャート、ダイアグラム、画像など) にアクセスし、それを ruby​​ 変数に格納します。Spreadsheet と roo gem で同じことを試しましたが、この gem はグラフィカル オブジェクトへのアクセスをサポートしていません。

助けてください。

4

2 に答える 2

0

gem rjbでApache POIを使用できます。

インストール:

$ sudo apt-get install openjdk-6-jre-headless openjdk-6-jdk
$ export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
$ sudo apt-get install ant
$ gem install "rjb"

使用する:

require 'rjb'

#RJM Loading
JARS = Dir.glob('./jar/*.jar').join(':')
Rjb::load(JARS, ['-Xmx512M'])

# Classes:
# Java
file_input_class = Rjb::import('java.io.FileInputStream')
file_output_class = Rjb::import('java.io.FileOutputStream')
byte_array_output_class = Rjb::import('java.io.ByteArrayOutputStream')

# POI
workbook_factory_class = Rjb::import('org.apache.poi.ss.usermodel.WorkbookFactory')

file_in_path = "./chart1.xlsx"
file_in = file_input_class.new(file_in_path)
wb = workbook_factory_class.create(file_in)
sheet = wb.getSheetAt(0)
charts = sheet.createDrawingPatriarch().getCharts()
p chart1.getClass().getName() # First chart's name
于 2013-05-17T13:18:32.730 に答える