0
0

More than 1 year has passed since last update.

Javaを使用してExcel画像を追加、読み取り、削除する方法

Last updated at Posted at 2021-12-22

##背景
この記事では、JavaプログラムでExcelテーブルに画像を追加する方法を紹介します。画像を追加するときは、画像のサイズ、位置、回転、ハイパーリンク、オプションのテキストなどを設定できます。また、エクセルテーブル。

ツール:無料のSpire.XLS for Java(無料版)
注:パッケージを公式Webサイトから**ダウンロード**して解凍し、libフォルダー内のjarファイルをjavaプログラムにインポートするか、Mavenウェアハウスからダウンロードしてインポートすることができます。

Jarのインポートした結果:
01.png

##Javaコード一覧
###画像を追加する

import com.spire.xls.*;

public class AddImage {
    public static void main(String[] args) {
        //ドキュメントをロードする
        Workbook wb = new Workbook();
        wb.loadFromFile("C:\\Users\\Administrator\\Desktop\\test.xlsx");

        //ワークシートを取得する
        Worksheet sheet = wb.getWorksheets().get(0);

        //画像を追加する
        ExcelPicture picture = sheet.getPictures().add(7,2,"C:\\Users\\Administrator\\Pictures\\tp.png");
        picture.setHeight(270);//画像の高さを設定する
        picture.setWidth(550);//画像幅を設定する
        picture.setRotation(20);//画像の回転角度を設定する
        picture.setAlternativeText("Picture1");//画像の選択可能テキストを設定する
        picture.setHyperLink("https://www.google.com/",true);//画像にハイパーリンクを追加する

        //ドキュメントを保存する
        wb.saveToFile("AddImage.xlsx", ExcelVersion.Version2010);
        wb.dispose();
    }
}

画像を追加した結果:
02.png
###画像を読み取る

import com.spire.xls.*;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class ExtractImage {
    public static void main(String[] args) throws IOException {
        //ドキュメントをロードする
        Workbook wb = new Workbook();
        wb.loadFromFile("AddImage.xlsx");

        //1番目のワークシートを取得する
        Worksheet sheet = wb.getWorksheets().get(0);

        //ワークシートの最初の画像を取得し、指定したパスに保存する
        ExcelPicture pic = sheet.getPictures().get(0);
        BufferedImage loImage = pic.getPicture();
        ImageIO.write(loImage,"jpg",new File("ExtractedImage.jpg"));
    }
}

画像を読み取った結果:
03.png
##画像を削除する

import com.spire.xls.*;

public class RemoveImage {
    public static void main(String[] args) {
        //ドキュメントをロードする
        Workbook wb = new Workbook();
        wb.loadFromFile("AddImage.xlsx");

        //指定したワークシートを取得する
        Worksheet sheet = wb.getWorksheets().get(0);

        //指定した画像を取得し削除する
        sheet.getPictures().get(0).remove();

        //ドキュメントを保存する
        wb.saveToFile("RemoveImage.xlsx",ExcelVersion.Version2010);
        wb.dispose();
    }
}

画像を削除した結果:
04.png

はい、おしまい、今回の記事の内容はここまでです、最後まで読んでいただき誠にありがとうございます。ではまた!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0