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
Télécharger Aspose.Slides Cloud SDK for Java for inserting images into the slides
Configurer un projet Java avec le SDK ci-dessus pour insérer une image dans une diapositive
Étapes pour ajouter une image dans PowerPoint avec une API basée sur Java
- Instanciez l’objet SlidesApi pour insérer une image dans une diapositive
- Téléchargez le fichier de présentation cible dans lequel l’image doit être ajoutée
- Préparez les données d’image au format requis
- Créer l’objet PictureFrame à placer dans une diapositive
- Appelez la méthode CreateShape pour insérer l’image dans une diapositive spécifique
- 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.