Java (482)
This article demonstrates how to align text within a table cell in PowerPoint using Spire.Presenatation for Java.
Code Snippets
import com.spire.presentation.*;
public class AlignTextInTableCell {
public static void main(String[] args) throws Exception {
//create a PowerPoint file
Presentation presentation = new Presentation();
//add a table
Double[] widths = new Double[]{100d, 200d, 100d, 100d};
Double[] heights = new Double[]{30d, 70d, 70d};
ITable table = presentation.getSlides().get(0).getShapes().appendTable(30,80, widths, heights);
table.setStylePreset(TableStylePreset.NONE);
//set the horizontal alignment for the cells in the first row
table.get(0, 0).getTextFrame().setText("Left");
table.get(0, 0).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.LEFT);
table.get(1, 0).getTextFrame().setText("Horizontal Center");
table.get(1, 0).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.CENTER);
table.get(2, 0).getTextFrame().setText("Right");
table.get(2, 0).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.RIGHT);
table.get(3, 0).getTextFrame().setText("Justify");
table.get(3, 0).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.JUSTIFY);
//Set the vertical alignment for the cells in the second row
table.get(0, 1).getTextFrame().setText("Top");
table.get(0, 1).setTextAnchorType(TextAnchorType.TOP);
table.get(1, 1).getTextFrame().setText("Vertical Center");
table.get(1, 1).setTextAnchorType(TextAnchorType.CENTER);
table.get(2, 1).getTextFrame().setText("Bottom");
table.get(2, 1).setTextAnchorType(TextAnchorType.BOTTOM);
//set the both horizontal and vertical alignment for the cells in the third row
table.get(0, 2).getTextFrame().setText("Top Left");
table.get(0, 2).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.LEFT);
table.get(0, 2).setTextAnchorType(TextAnchorType.TOP);
table.get(1, 2).getTextFrame().setText("Center");
table.get(1, 2).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.CENTER);
table.get(1, 2).setTextAnchorType(TextAnchorType.CENTER);
table.get(2, 2).getTextFrame().setText("Bottom Right");
table.get(2, 2).getTextFrame().getParagraphs().get(0).setAlignment(TextAlignmentType.RIGHT);
table.get(2, 2).setTextAnchorType(TextAnchorType.BOTTOM);
//save to file
presentation.saveToFile("output/Alignment.pptx", FileFormat.PPTX_2013);
presentation.dispose();
}
}
Output

Published in
Table
Tagged under
The slide master in PowerPoint preserves some fixed styles, such as background image, title and theme color, which can be inherited by other slides. This article demonstrates how to customize the slide masters in a PowerPoint file and apply them to different slides using Spire.Presentation for Java.
Apply One Slide Master in PowerPoint
import com.spire.presentation.*;
import com.spire.presentation.drawing.BackgroundType;
import com.spire.presentation.drawing.FillFormatType;
import com.spire.presentation.drawing.IImageData;
import com.spire.presentation.drawing.PictureFillType;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.FileInputStream;
public class ModifyAndApplySlideMaster {
public static void main(String[] args) throws Exception {
//create a Presentation object and specify the slide size
Presentation presentation = new Presentation();
presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);
//get the first slide master
IMasterSlide masterSlide = presentation.getMasters().get(0);
//set the background image of the slide master
String backgroundPic = "C:/Users/Administrator/Desktop/bg.jpg";
BufferedImage image = ImageIO.read(new FileInputStream(backgroundPic));
IImageData imageData = presentation.getImages().append(image);
masterSlide.getSlideBackground().setType(BackgroundType.CUSTOM);
masterSlide.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
masterSlide.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
masterSlide.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);
//add an image (company logo) to slide master
String logo = "C:/Users/Administrator/Desktop/logo.png";
image = ImageIO.read(new FileInputStream(logo));
imageData = presentation.getImages().append(image);
IEmbedImage imageShape = masterSlide.getShapes().appendEmbedImage(ShapeType.RECTANGLE,imageData,new Rectangle2D.Float(40,40,200,60));
imageShape.getLine().setFillType(FillFormatType.NONE);
//add some text (company name) to slide master
IAutoShape textShape = masterSlide.getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle2D.Float((float) presentation.getSlideSize().getSize().getWidth()-200,(float) presentation.getSlideSize().getSize().getHeight()-60,200,30));//Shapes.AppendShape(ShapeType.Rectangle, new RectangleF(ppt.SlideSize.Size.Width-200, ppt.SlideSize.Size.Height-60, 200, 30));
textShape.getTextFrame().setText("Chengdu E-iceblue Co., Ltd.");
textShape.getTextFrame().getTextRange().setFontHeight(15f);
textShape.getTextFrame().getTextRange().getFill().setFillType(FillFormatType.SOLID);
textShape.getTextFrame().getTextRange().getFill().getSolidColor().setColor(Color.blue);
textShape.getTextFrame().getTextRange().getParagraph().setAlignment(TextAlignmentType.CENTER);
textShape.getFill().setFillType(FillFormatType.NONE);
textShape.getLine().setFillType(FillFormatType.NONE);
//append a new slide
presentation.getSlides().append();
//save to file
presentation.saveToFile("ModifySlideMaster.pptx", FileFormat.PPTX_2013);
presentation.dispose();
}
}

Apply Multiple Slide Maters in PowerPoint
import com.spire.presentation.*;
import com.spire.presentation.drawing.BackgroundType;
import com.spire.presentation.drawing.FillFormatType;
import com.spire.presentation.drawing.IImageData;
import com.spire.presentation.drawing.PictureFillType;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.FileInputStream;
public class CreateAndApplyMultiSlideMasters {
public static void main(String[] args) throws Exception {
//create a Presentation object and specify the slide size
Presentation presentation = new Presentation();
presentation.getSlideSize().setType(SlideSizeType.SCREEN_16_X_9);
//add four new slides to the presentation
for (int i = 0; i < 4; i++)
{
presentation.getSlides().append();
}
//get the first slide master
IMasterSlide first_master = presentation.getMasters().get(0);
//create another slide master based on the first one
presentation.getMasters().appendSlide(first_master);
IMasterSlide second_master = presentation.getMasters().get(1);
//set different background images for the two masters
String pic1 = "C:/Users/Administrator/Desktop/image1.png";
String pic2 = "C:/Users/Administrator/Desktop/image2.png";
BufferedImage image = ImageIO.read(new FileInputStream(pic1));
IImageData imageData = presentation.getImages().append(image);
first_master.getSlideBackground().setType(BackgroundType.CUSTOM);
first_master.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
first_master.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
first_master.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);
image = ImageIO.read(new FileInputStream(pic2));
imageData = presentation.getImages().append(image);
second_master.getSlideBackground().setType(BackgroundType.CUSTOM);
second_master.getSlideBackground().getFill().setFillType(FillFormatType.PICTURE);
second_master.getSlideBackground().getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
second_master.getSlideBackground().getFill().getPictureFill().getPicture().setEmbedImage(imageData);
//apply the first master along with the layout to the first slide
presentation.getSlides().get(0).setLayout(first_master.getLayouts().get(6));
//apply the second master along with the layout to the rest slides
for (int i = 1; i < presentation.getSlides().getCount(); i++)
{
presentation.getSlides().get(i).setLayout(second_master.getLayouts().get(6));
}
//save to file
presentation.saveToFile("ApplyMultiMasters.pptx", FileFormat.PPTX_2013);
presentation.dispose();
}
}

Published in
Document Operation
Tagged under
This article will demonstrate how to create spot color to PDF file using Spire.PDF in Java.
import com.spire.pdf.*;
import com.spire.pdf.colorspace.*;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.awt.geom.Point2D;
public class SpotColor {
public static void main(String[] args) {
//Create a PdfDocument instance
PdfDocument pdf = new PdfDocument();
//Add a page
PdfPageBase page = pdf.getPages().add();
//Define the spot color "MySpotColor" from the built-in color.
PdfRGBColor pdfRGBColor = new PdfRGBColor(new Color(148,0,211));
PdfSeparationColorSpace cs = new PdfSeparationColorSpace("MySpotColor",pdfRGBColor);
//Apply the spot color while drawing content on the page.
PdfSeparationColor color = new PdfSeparationColor(cs, 1f);
PdfSolidBrush brush = new PdfSolidBrush(color);
page.getCanvas().drawString("Tint=1.0", new PdfFont(PdfFontFamily.Helvetica, 10f), brush, new Point2D.Float(160, 160));
//Draw pie with spot color(DarkViolet)
page.getCanvas().drawPie(brush, 148, 200, 60, 60, 360, 360);
page.getCanvas().drawString("Tint=0.7", new PdfFont(PdfFontFamily.Helvetica, 10f), brush, new Point2D.Float(230, 160));
color = new PdfSeparationColor(cs, 0.7f);
brush = new PdfSolidBrush(color);
page.getCanvas().drawPie(brush, 218, 200, 60, 60, 360, 360);
page.getCanvas().drawString("Tint=0.4", new PdfFont(PdfFontFamily.Helvetica, 10f), brush, new Point2D.Float(300, 160));
color = new PdfSeparationColor(cs, 0.4f);
brush = new PdfSolidBrush(color);
page.getCanvas().drawPie(brush, 288, 200, 60, 60, 360, 360);
page.getCanvas().drawString("Tint=0.1", new PdfFont(PdfFontFamily.Helvetica, 10f), brush, new Point2D.Float(370, 160));
color = new PdfSeparationColor(cs, 0.1f);
brush = new PdfSolidBrush(color);
page.getCanvas().drawPie(brush, 358, 200, 60, 60, 360, 360);
//Save the document
pdf.saveToFile("output/drawContentWithSpotColor.pdf");
}
}
Effective screenshot after adding spot color in PDF in Java application:

Published in
Shape
Tagged under