博客
关于我
Java 在PPT中绘制图形
阅读量:413 次
发布时间:2019-03-06

本文共 3909 字,大约阅读时间需要 13 分钟。

使用Spire.Presentation库在Java中绘制PPT图形的详细方法

工具使用说明

本文将使用Spire.Presentation for Java库来展示如何在PPT中绘制各种图形的方法。该库支持多种图形类型,且无需安装Microsoft PowerPoint即可运行。


JAR文件引入方法

方法一:手动引入JAR文件

  • 创建lib目录:在项目根目录下创建lib文件夹。
  • 复制JAR文件:将Spire.Presentation.jar文件复制到lib目录。
  • 添加引用:在IDE中右键项目,选择“Properties”,在“Libraries”选项卡中点击“Add”,选择lib目录下的Spire.Presentation.jar文件。
  • 方法二:通过Maven仓库安装

    如果项目使用Maven,可以通过添加仓库地址来安装依赖:

    com.spire
    spire-presentation
    2.2.3

    Java代码示例

    以下是使用Spire.Presentation库绘制PPT图形的示例代码:

    import com.spire.presentation.*;
    import com.spire.presentation.drawing.*;
    import javax.imageio.ImageIO;
    import java.awt.*;
    import java.awt.geom.Rectangle2D;
    import java.awt.image.BufferedImage;
    import java.io.File;
    public class CreateShapes_PPT {
    public static void main(String[] args) throws Exception {
    // 创建新的PowerPoint文档
    Presentation presentation = new Presentation();
    // 添加三角形并设置填充
    IAutoShape triangle = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.TRIANGLE,
    new Rectangle2D.Double(115, 130, 100, 100));
    triangle.getFill().setFillType(FillFormatType.SOLID);
    triangle.getFill().getSolidColor().setColor(Color.ORANGE);
    triangle.getShapeStyle().getLineColor().setColor(Color.WHITE);
    // 添加椭圆并设置图片填充
    IAutoShape ellipse = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.ELLIPSE,
    new Rectangle2D.Double(290, 130, 150, 100));
    ellipse.getFill().setFillType(FillFormatType.PICTURE);
    ellipse.getFill().getPictureFill().setFillType(PictureFillType.STRETCH);
    BufferedImage logoImage = ImageIO.read(new File("logo.png"));
    ellipse.getFill().getPictureFill().getPicture().setEmbedImage(
    presentation.getImages().append(logoImage));
    // 添加心形并设置图案填充
    IAutoShape heart = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.HEART,
    new Rectangle2D.Double(515, 130, 130, 100));
    heart.getFill().setFillType(FillFormatType.PATTERN);
    heart.getFill().getPattern().setPatternType(PatternFillType.LARGE_GRID);
    // 添加五角星并设置渐变填充
    IAutoShape fiveStar = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.FIVE_POINTED_STAR,
    new Rectangle2D.Double(115, 300, 115, 115));
    fiveStar.getFill().setFillType(FillFormatType.GRADIENT);
    fiveStar.getFill().getGradient().getGradientStops().append(0, KnownColors.RED);
    fiveStar.getFill().getGradient().getGradientStops().append(1, KnownColors.LIGHT_SALMON);
    // 添加矩形并设置渐变填充
    IAutoShape hexagon = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.HEXAGON,
    new Rectangle2D.Double(290, 300, 140, 125));
    hexagon.getFill().setFillType(FillFormatType.GRADIENT);
    hexagon.getFill().getGradient().getGradientStops().append(0, KnownColors.LIGHT_PINK);
    hexagon.getFill().getGradient().getGradientStops().append(1, KnownColors.LIGHT_SKY_BLUE);
    // 添加箭头并设置渐变填充
    IAutoShape arrow = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.DOUBLE_WAVE,
    new Rectangle2D.Double(515, 300, 130, 100));
    arrow.getFill().setFillType(FillFormatType.GRADIENT);
    arrow.getFill().getGradient().getGradientStops().append(1f, KnownColors.OLIVE);
    arrow.getFill().getGradient().getGradientStops().append(0, KnownColors.POWDER_BLUE);
    }
    // 保存文档
    presentation.saveToFile("AddShapes.pptx", FileFormat.PPTX_2010);
    }

    绘制效果说明

    通过上述代码,可以看到以下图形类型及其填充方式:

  • 三角形:设置为橙色填充和白色线条。
  • 椭圆:嵌入图片填充,支持拉伸。
  • 心形:设置为图案填充(大网格模式)。
  • 五角星:设置为渐变填充(红色到米色)。
  • 矩形:设置为渐变填充(浅粉色到天蓝色)。
  • 箭头:设置为渐变填充(橄榄绿到蓝色灰)。

  • 注意事项

  • 该库支持多种图形类型,具体可通过ShapeType枚举类查看所有图形类型。
  • 无需安装Microsoft PowerPoint即可运行,适合纯Java环境下开发。

  • 这篇文章通过简洁的代码和详细的说明,帮助开发者快速掌握使用Spire.Presentation库绘制PPT图形的方法。

    转载地址:http://rknkz.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现rsa 密钥生成器算法(附完整源码)
    查看>>
    Objective-C实现RSA密码算法(附完整源码)
    查看>>
    Objective-C实现RSA素因子算法(附完整源码)
    查看>>
    Objective-C实现runge kutta龙格-库塔法算法(附完整源码)
    查看>>
    Objective-C实现Sarsa算法(附完整源码)
    查看>>
    Objective-C实现SCC的Kosaraju算法(附完整源码)
    查看>>
    Objective-C实现scoring functions评分函数算法(附完整源码)
    查看>>
    Objective-C实现scoring评分算法(附完整源码)
    查看>>
    Objective-C实现Secant method割线法算法(附完整源码)
    查看>>
    Objective-C实现segment tree段树算法(附完整源码)
    查看>>
    Objective-C实现segmented sieve分段筛算法(附完整源码)
    查看>>
    Objective-C实现selection sort选择排序算法(附完整源码)
    查看>>
    Objective-C实现sha1算法(附完整源码)
    查看>>
    Objective-C实现sha256算法(附完整源码)
    查看>>
    Objective-C实现shell sort希尔排序算法(附完整源码)
    查看>>
    Objective-C实现sherman morrison公式算法(附完整源码)
    查看>>
    Objective-C实现ShorAlgorithm肖尔算法 (附完整源码)
    查看>>
    Objective-C实现shortest job first短作业优先算法(附完整源码)
    查看>>
    Objective-C实现shortestCommonSupersequence最短公共超序列算法(附完整源码)
    查看>>
    Objective-C实现sierpinski triangle谢尔宾斯基三角形算法(附完整源码)
    查看>>