今回はシートの倍率をセットする (Set the zoom magnification for a sheet) です(一覧)。
Java コード
シートの表示倍率を設定するコード。 表示倍率は Sheet オブジェクトの setZoom() メソッドで行います。
Workbook wb = new HSSFWorkbook(); Sheet sheet1 = wb.createSheet("new sheet"); sheet1.setZoom(3,4); // 75 percent magnification
倍率は分数で表したときの分子と分母で指定します。
PoiBuilder による構築
PoiBuilder による構築方法。
@GrabResolver('http://www5.ocn.ne.jp/~coast/repo/') @Grab('org.waman.tools:poi-builder:0.0.5') import org.waman.tools.poi.PoiBuilder def workbook = new PoiBuilder().workbook{ sheet('new sheet', zoom:[3, 4]) // 75 percent magnification }
zoom は JavaBean としてのプロパティではありませんが、setZoom() メソッドで指定したい値を List として渡せばセットできるようにしてあります*1。 ちなみに、setZoom() 以外にも JavaBean としてのプロパティとしては認識されない設定メソッドがいくつかありますが、それらを設定したい場合は current プロパティによって構築中のオブジェクト取得して、任意のメソッドによって設定を行うことができます:
@GrabResolver('http://www5.ocn.ne.jp/~coast/repo/') @Grab('org.waman.tools:poi-builder:0.0.5') import org.waman.tools.poi.PoiBuilder def workbook = new PoiBuilder().workbook{ sheet('new sheet'){ current.setZoom(3, 4) // 75 percent magnification } }
属性中で current プロパティにアクセスすると、その親ノードが構築しているオブジェクトが返されるので注意。
作成されるスプレッドシート
追記
poi-builder 0.0.6 からは sheet プロパティによって Sheet オブジェクトを取得できるので、それに対して setZoom() メソッドを呼び出しても同じことができます:
@GrabResolver('http://www5.ocn.ne.jp/~coast/repo/') @Grab('org.waman.tools:poi-builder:0.0.6') import org.waman.tools.poi.SpreadsheetBuilder def workbook = new SpreadsheetBuilder().workbook{ sheet('new sheet'){ sheet.setZoom(3, 4) // 75 percent magnification } }
- 作者: 竹添直樹,島本多可子,小津美夕紀,亀井隆司
- 出版社/メーカー: 翔泳社
- 発売日: 2011/07/16
- メディア: 大型本
- 購入: 6人 クリック: 217回
- この商品を含むブログ (20件) を見る
- 作者: 関谷和愛,上原潤二,須江信洋,中野靖治
- 出版社/メーカー: 技術評論社
- 発売日: 2011/07/06
- メディア: 単行本(ソフトカバー)
- 購入: 6人 クリック: 392回
- この商品を含むブログ (152件) を見る
*1:FactoryBuilderSupport の機能ではありません。