- Home ›
- Apache POIでExcelを操作 ›
- シート ›
- HERE
シートの拡大率を設定
広告
表示されるシートの拡大率を設定する方法を確認します。拡大率を設定するにはSheetインターフェースで用意されているsetZoomメソッドを使います。
setZoom void setZoom(int numerator, int denominator)
Sets the zoom magnication for the sheet. The zoom is expressed as a fraction. For example to express a zoom of 75% use 3 for the numerator and 4 for the denominator. Parameters: numerator - The numerator for the zoom magnification. denominator - The denominator for the zoom magnification.
拡大率の設定は二つの引数に指定した値を使って"numerator"÷"denominator"に設定されます。例えば1番目の引数に3、2番目の引数に1を設定すれば 3÷1=3 となり拡大率は300%です。また1番目の引数に3、2番目の引数に4を指定すれば 3÷4=0.75 となり拡大率は75%となります。
実際の使い方は次のようになります。
InputStream in = new FileInputStream("filename.xls");
Workbook wb = WorkbookFactory.create(in);
Sheet sheet = wb.getSheetAt(0);
sheet.setZoom(1, 2);
この場合、シートの拡大率が50%となります。
サンプルプログラム
実際に試してみましょう。
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Row;
import java.io.*;
public class Sample5_1{
public static void main(String[] args){
Workbook wb = new HSSFWorkbook();
Sheet sheet1 = wb.createSheet();
Sheet sheet2 = wb.createSheet();
Sheet sheet3 = wb.createSheet();
sheet2.setZoom(2, 1);
sheet3.setZoom(3, 4);
FileOutputStream out = null;
try{
out = new FileOutputStream("sample5_1.xls");
wb.write(out);
}catch(IOException e){
System.out.println(e.toString());
}finally{
try {
out.close();
}catch(IOException e){
System.out.println(e.toString());
}
}
}
}
コンパイル後に実行すると3つのシートが含まれるワークブックが作成されます。1つ目のシートはデフォルトのままですが、2つ目のシートは拡大率を200%、3つ目のシートは拡大率を75%にそれぞれ設定しています。それでは作成されたファイルをExcelで開いてみます。
2つ目と3つ目のシートの拡大率が変更されていることが確認できます。
( Written by Tatsuo Ikura )
JavaDrive