JavaでPowerPointドキュメントの背景色と背景画像を設定する方法

PowerPointドキュメントを作成する場合、ドキュメントをより美しく見せるために、通常、人々はドキュメントの背景色また背景画像を設定します。この記事では、無料のJava PowerPointコンポーネントである[Free Spire.Presentation for Java](https://www.e-iceblue.com/Download/presentation-for-java-free.html)を使用して、JavaアプリケーションでPowerPointの単色の背景色、グラデーションの背景色、背景画像を設定する方法を紹介します。

## 単色またはグラデーションの背景色を設定する

```
import com.spire.presentation.*;
import com.spire.presentation.drawing.BackgroundType;
import com.spire.presentation.drawing.FillFormatType;

import java.awt.*;

public class Background {
    public static void main(String[] args) throws Exception {

        //PowerPointドキュメントをロードする
        Presentation ppt = new Presentation();
        ppt.loadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.pptx");

        //スライドの数を取得する
        int slideCount = ppt.getSlides().getCount();

        ISlide slide = null;

        //スライドを繰り返し、各スライドに単色の背景色またはグラデーションの背景色を設定する
        for(int i = 0; i < slideCount;i++) {
            slide = ppt.getSlides().get(i);
            slide.getSlideBackground().setType(BackgroundType.CUSTOM);

            //単色の背景色を設定する
            /*slide.getSlideBackground().getFill().setFillType(FillFormatType.SOLID);
            slide.getSlideBackground().getFill().getSolidColor().setColor(Color.PINK);*/

            //グラデーションの背景色を設定する
        slide.getSlideBackground().getFill().setFillType(FillFormatType.GRADIENT);
        slide.getSlideBackground().getFill().getGradient().getGradientStops().append(0, Color.WHITE);
        slide.getSlideBackground().getFill().getGradient().getGradientStops().append(1, Color.PINK);
        }

        //ドキュメントを保存する
        ppt.saveToFile("BackgroundColor.pptx", FileFormat.PPTX_2013);
    }
}
```

単色の背景色にした結果：
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278784/1d05fcbc-0e57-36dc-2b2b-718f6552b307.png)

グラデーションの背景色にした結果：
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278784/ca6d32f8-cbbe-9374-ca00-68b60c730fd9.png)

## 背景画像を設定する

```
import com.spire.presentation.FileFormat;
import com.spire.presentation.ISlide;
import com.spire.presentation.Presentation;
import com.spire.presentation.drawing.BackgroundType;
import com.spire.presentation.drawing.FillFormatType;

public class Backgroundimage {
    public static void main(String[] args) throws Exception {

        Presentation ppt = new Presentation();
        ppt.loadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.pptx");

        int slideCount = ppt.getSlides().getCount();
        ISlide slide = null;

        for(int i = 0; i < slideCount;i++) {
            slide = ppt.getSlides().get(i);
            slide.getSlideBackground().setType(BackgroundType.CUSTOM);
            slide.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
            slide.getSlideBackground().getFill().getPictureFill().getPicture().setUrl((new java.io.File("C:\\Users\\Administrator\\Desktop\\bkg.jpg")).getAbsolutePath());
        }

        ppt.saveToFile("BackgroundImage.pptx", FileFormat.PPTX_2013);
    }
}
```
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278784/f08fd8a9-3745-a3b7-03c9-cb063bddede7.png)

今回のPowerPointドキュメントの背景色と背景画像を設定する方法はこれで終わります、最後まで読んでいただきありがとうございます。