Java를 사용하여 Excel 그래픽을 추가, 읽기, 삭제하는 방법

이 문서에서는 Excel에서 다음 Java 프로그램을 사용하여 그래픽을 조작하는 방법에 대해 설명합니다.
1. 도면 추가(도면 유형/위치/크기 설정, 도면 채우기(단색/그래디언트 색상/텍스쳐/이미지 채우기), 도면 표시 또는 숨기기, 도면 기울기 각도, 도면에 텍스트 추가, 도면 그림자 등)
2. 도면에서 텍스트 및 이미지 추출
3. 도면 삭제(지정된 도면 또는 모든 도면 삭제)
도구:Spire.XLS for Java
Jar 파일 가져오기 및 가져오기: 공식 사이트 또는 Maven에서 다운로드하여 가져옵니다.가져오기 효과는 다음과 같습니다.

Java 코드 일람표
[예1] 그래픽 추가
import com.spire.xls.*;
import com.spire.xls.core.IPrstGeomShape;

import java.awt.*;

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

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

        //楕円形を追加する
        IPrstGeomShape ellipse = sheet.getPrstGeomShapes().addPrstGeomShape(3,4,125,200,PrstGeomShapeType.Ellipse);
        ellipse.getFill().setFillType(ShapeFillType.SolidColor);//単色塗りつぶし
        ellipse.getFill().setForeColor(new Color(180,125,208));
        ellipse.setRotation(30);//図形の回転角度
        ellipse.setText("楕円形にテキストを追加する");//図形にテキストを追加する

        //星の図形を追加する
        IPrstGeomShape star = sheet.getPrstGeomShapes().addPrstGeomShape(3,8,180,200,PrstGeomShapeType.Star5);
        star.getFill().setFillType(ShapeFillType.Gradient);//グラデーション塗りつぶし
        star.getFill().setGradientColorType(GradientColorType.Preset);
        star.getFill().setForeColor(Color.orange);

        //雲の図形を追加する
        IPrstGeomShape cloud = sheet.getPrstGeomShapes().addPrstGeomShape(12,4,175,200,PrstGeomShapeType.Cloud);
        cloud.getFill().setFillType(ShapeFillType.Texture);//テクスチャ塗りつぶし
        cloud.getFill().setTexture(GradientTextureType.WhiteMarble);
        cloud.setVisible(true);//図形が表示されるかどうかを設定する
        //クラウドシャドウ効果を設定する
        cloud.getShadow().setAngle(90);
        cloud.getShadow().setDistance(10);
        cloud.getShadow().setSize(100);
        cloud.getShadow().setColor(Color.GRAY);
        cloud.getShadow().setBlur(30);
        cloud.getShadow().setTransparency(1);
        cloud.getShadow().hasCustomStyle();

        //長方形を追加する
        IPrstGeomShape rect = sheet.getPrstGeomShapes().addPrstGeomShape(15,8,125,200,PrstGeomShapeType.Rect);
        rect.getFill().customPicture("tp.png");//画像の塗りつぶしを読み込む
        rect.setName("Shape4");//図形を命名する

        //ドキュメントを保存する
        wb.saveToFile("AddShape.xlsx");
        wb.dispose();
    }
}
추가 효과:

【예2】 도형 속의 문자와 그림을 읽다
import com.spire.xls.*;

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

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

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

        //指定された図形のテキストを取得する
        String text = sheet.getPrstGeomShapes().get(0).getText();
        System.out.println(text);

        //指定された形で写真を取得する
        BufferedImage image = sheet.getPrstGeomShapes().get(3).getFill().getPicture();
        ImageIO.write(image,"png",new File("ExtractedImage.png"));
    }
}
텍스트 및 드로잉 읽기 결과:

【예3】도형 삭제
import com.spire.xls.*;

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

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

        //指定された図形を取得し、削除する
        //sheet.getPrstGeomShapes().get(1).remove();//インデックス値による取得と削除する
        // sheet.getPrstGeomShapes().get("Shape4").remove();//形状名で取得および削除する

        //すべてのグラフィックを削除する
        for (int i = sheet.getPrstGeomShapes().getCount()-1; i >= 0; i--)
        {
            sheet.getPrstGeomShapes().get(i).remove();
        }

        //ドキュメントを保存する
        wb.saveToFile("RemoveShape.xlsx");
        wb.dispose();
    }
}
프로그램이 실행되면 도면 삭제 효과를 확인할 수 있습니다.

이번에 도면을 추가, 읽기, 삭제하는 방법은 여기까지입니다. 끝까지 읽어주셔서 감사합니다.

좋은 웹페이지 즐겨찾기