Ajouter une image à PowerPoint avec l'API REST Java

Suivez ce guide pour découvrir comment ajouter une image à PowerPoint avec l’API REST Java. Vous apprendrez comment ajouter une image à une présentation PowerPoint avec l’API Java Low Code à l’aide d’un SDK Cloud basé sur Java. Cet article décrit différentes propriétés permettant de personnaliser l’image avant de l’ajouter à la diapositive.

Condition préalable

Étapes pour ajouter une image dans PowerPoint avec une API basée sur Java

  1. Instanciez l’objet SlidesApi pour insérer une image dans une diapositive
  2. Téléchargez le fichier de présentation cible dans lequel l’image doit être ajoutée
  3. Préparez les données d’image au format requis
  4. Créer l’objet PictureFrame à placer dans une diapositive
  5. Appelez la méthode CreateShape pour insérer l’image dans une diapositive spécifique
  6. Téléchargez le fichier après y avoir ajouté une image

Ces étapes résument comment ajouter une image à PowerPoint avec l’interface REST Java. Téléchargez la présentation source sur le stockage Cloud, préparez l’image à l’aide de la méthode ToBase64String() dans l’espace de noms Convert et utilisez cette image pour créer un objet PictureFrame. Enfin, appelez la méthode CreateShape() pour ajouter l’image à la diapositive spécifiée et télécharger la présentation mise à jour.

Code pour ajouter des images aux diapositives PowerPoint avec l’API REST Java

import com.aspose.slides.ApiException;
import com.aspose.slides.api.SlidesApi;
import com.aspose.slides.model.*;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.StandardCopyOption;
import java.util.Base64;
public class Example_AddPictureInPresentation {
protected static SlidesApi presentationApi;
public Example_AddPictureInPresentation() {
if (presentationApi == null) {
presentationApi = new SlidesApi("appSid", "appKey");
}
}
public void addPictureInSlide() throws ApiException, IOException {
String localPath = "/home/downloads/";
String fileName = "Sample.pptx";
String imageFileName = "ShapeImage.png";
String storageFolderName = "TempTests";
presentationApi.uploadFile(storageFolderName+"/"+fileName, readFileToByteArray(localPath + fileName),null);
PictureFrame imageFrame = new PictureFrame();
imageFrame.setX(50.0);
imageFrame.setY(50.0);
imageFrame.setWidth(350.0);
imageFrame.setHeight(250.0);
PictureFill pictureFill1 = new PictureFill();
pictureFill1.setPictureFillMode(PictureFill.PictureFillModeEnum.STRETCH);
pictureFill1.setBase64Data(Base64.getEncoder().encodeToString(readFileToByteArray(localPath + imageFileName)));
imageFrame.setPictureFillFormat(pictureFill);
// Add the image to the third slide of the presentation.
ShapeBase shapeResponse = presentationApi.createShape(fileName, 3, imageFrame, null, null,
null,storageFolderName, null, null);
// Output the URI of the newly added image shape.
System.out.println("Image added at: "+ shapeResponse.getSelfUri().getHref());
File presentationFile = presentationApi.downloadFile(storageFolderName+"/"+fileName, null, null);
// Copy the downloaded presentation with new image shape to the local directory
copyFile(presentationFile, new File(localPath, fileName));
System.out.println("Presentation slide with image shape is copied to: " + localPath + fileName);
}
public static byte[] readFileToByteArray(String filePath) throws IOException {
Path path = new File(filePath).toPath();
return Files.readAllBytes(path);
}
private void copyFile(File sourceFile, File targetFile) throws IOException {
if (sourceFile == null || !sourceFile.exists()) {
throw new IOException("Source file does not exist: " + sourceFile);
}
// Ensure the target directory exists
Path targetPath = targetFile.toPath();
Files.createDirectories(targetPath.getParent());
// Copy the file
Files.copy(sourceFile.toPath(), targetPath, StandardCopyOption.REPLACE_EXISTING);
}
}

Cet exemple de code montre comment insérer une image dans PowerPoint avec le service Java RESTful. Vous pouvez définir la position de départ de l’image en définissant les propriétés X et Y dans l’objet PictureFrame et définir le mode de remplissage de l’image à l’aide de l’objet de classe PictureFill. La propriété PictureFrame définit la taille de l’image sur la diapositive, quelle que soit la taille d’origine.

Cet article nous a appris à ajouter des images. Pour ajouter des notes à une présentation, reportez-vous à l’article sur Ajoutez des notes à une diapositive PowerPoint avec l’API REST Java.

 Français