Java (481)
This article demonstrates how to replace text in an exising PowerPoint document with new text using Spire.Presentation for Java.
import com.spire.presentation.*;
import java.util.HashMap;
import java.util.Map;
public class ReplaceText {
public static void main(String[] args) throws Exception {
//create a Presentation object
Presentation presentation = new Presentation();
//load the template file
presentation.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.pptx");
//get the first slide
ISlide slide= presentation.getSlides().get(0);
//create a Map object
Map map = new HashMap();
//add several pairs of keys and values to the map
map.put("#name#","John Smith");
map.put("#age#","28");
map.put("#address#","Oklahoma City, United States");
map.put("#tel#","333 123456");
map.put("#email#","johnsmith@outlook.com");
//replace text in the slide
replaceText(slide,map);
//save to another file
presentation.saveToFile("output/ReplaceText.pptx", FileFormat.PPTX_2013);
}
/**
* Replace text within a slide
* @param slide Specifies the slide where the replacement happens
* @param map Where keys are existing strings in the document and values are the new strings to replace the old ones
*/
public static void replaceText(ISlide slide, Map<String,String> map) {
for (Object shape : slide.getShapes()
) {
if (shape instanceof IAutoShape) {
for (Object paragraph : ((IAutoShape) shape).getTextFrame().getParagraphs()
) {
ParagraphEx paragraphEx = (ParagraphEx)paragraph;
for (String key : map.keySet()
) {
if (paragraphEx.getText().contains(key)) {
paragraphEx.setText(paragraphEx.getText().replace(key, map.get(key)));
}
}
}
}
}
}
}

Published in
Paragraph and Text
Tagged under
Set and Get Alternative Text (Alt Text) of PowerPoint Shapes in Java
2019-09-03 08:58:44 Written by AdministratorAlternative text (Alt Text) can help people with vision or cognitive impairments understand shapes, pictures or other graphical content. This article demonstrates how to set and get the alternative text of a shape in a PowerPoint document using Spire.Presentation for Java.
Set alternative text
import com.spire.presentation.*;
import com.spire.presentation.drawing.FillFormatType;
import java.awt.*;
import java.awt.geom.Rectangle2D;
public class SetAltText {
public static void main(String[] args) throws Exception {
//instantiate a Presentation object
Presentation ppt = new Presentation();
//add a shape to the first slide
IAutoShape shape = ppt.getSlides().get(0).getShapes().appendShape(ShapeType.TRIANGLE, new Rectangle2D.Double(115, 130, 100, 100));
shape.getFill().setFillType(FillFormatType.SOLID);
shape.getFill().getSolidColor().setColor(Color.orange);
shape.getShapeStyle().getLineColor().setColor(Color.white);
//set alt text (title and description) for the shape
shape.setAlternativeTitle("Triangle");
shape.setAlternativeText("This is a triangle.");
//save the resultant document
ppt.saveToFile("Output.pptx", FileFormat.PPTX_2013);
}
}

Get alternative text
import com.spire.presentation.*;
public class GetAltText {
public static void main(String[] args) throws Exception {
//load PowerPoint document
Presentation ppt = new Presentation();
ppt.loadFromFile("Output.pptx");
//get the first shape in the first slide
IShape shape = ppt.getSlides().get(0).getShapes().get(0);
//get the alt text (title and description) of the shape
String altTitle = shape.getAlternativeTitle();
String altDescription = shape.getAlternativeText();
System.out.println("Title: " + altTitle);
System.out.println("Description: " + altDescription);
}
}

Published in
Image and Shapes
Tagged under
This article demonstrates how to replace an existing image in a PowerPoint document with a new image by using Spire.Presentation for Java.
import com.spire.presentation.*;
import com.spire.presentation.drawing.IImageData;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.FileInputStream;
public class ReplaceImage {
public static void main(String[] args) throws Exception {
//create a Presentation object
Presentation presentation= new Presentation();
//load the sample PowerPoint file
presentation.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.pptx");
//add an image to the image collection
String imagePath = "C:\\Users\\Administrator\\Desktop\\Microsoft-PowerPoint-logo.jpg";
BufferedImage bufferedImage = ImageIO.read(new FileInputStream(imagePath));
IImageData image = presentation.getImages().append(bufferedImage);
//get the shape collection from the first slide
ShapeCollection shapes = presentation.getSlides().get(0).getShapes();
//loop through the shape collection
for (int i = 0; i < shapes.getCount(); i++) {
//determine if a shape is a picture
if (shapes.get(i) instanceof SlidePicture) {
//fill the shape with a new image
((SlidePicture) shapes.get(i)).getPictureFill().getPicture().setEmbedImage(image);
}
}
//save to file
presentation.saveToFile("output/ReplaceImage.pptx", FileFormat.PPTX_2013);
}
}

Published in
Image and Shapes
Tagged under