Apache POI PPT - 建立超链接

  • 简述

    在本章中,您将学习如何在演示文稿中创建超链接。
  • 创建超链接

    您可以使用 XSLFTextRun 类的 createHyperlink() 方法读取演示文稿中的超链接。 按照下面给出的过程在演示文稿中创建超链接。
    使用 XMLSlideShow 类创建一个空的演示文稿,如下所示 -
    
    
    XMLSlideShow ppt = new XMLSlideShow();
    
    
    创建一张空幻灯片并使用正文和内容布局创建幻灯片的文本框和正文。
    
    
    //create an empty presentation
    
    XSLFSlideMaster slideMaster = ppt.getSlideMasters()[0];
    
    
    
    //creating a slide with title and content layout
    
    XSLFSlideLayout slidelayout = slideMaster.getLayout(SlideLayout.TITLE_AND_CONTENT);
    
    XSLFSlide slide = ppt.createSlide(slidelayout);
    
    
    
    //selection of body place holder
    
    XSLFTextShape body = slide.getPlaceholder(1);
    
    
    
    //clear the existing text in the slide
    
    body.clearText();
    
    
    创建一个文本运行对象并为其设置文本,如下所示 −
    
    
    XSLFTextRun textRun = body.addNewTextParagraph().addNewTextRun();
    
    textRun.setText("Tutorials point");
    
    
    使用 XSLFTextRun 类的 createHyperlink() 方法创建超链接,如下所示 −
    
    
    XSLFHyperlink link = textRun.createHyperlink();
    
    
    使用 XSLFHyperlink 类的 setAddress() 方法将链接地址设置为超链接,如下所示 −
    
    
    link.setAddress("http://www.jc2182.com/");
    
    
    下面给出的是在演示文稿中创建超链接的完整程序 −
    
    
    import java.io.File;
    
    import java.io.FileOutputStream;
    
    import java.io.IOException;
    
    
    
    import org.apache.poi.xslf.usermodel.SlideLayout;
    
    import org.apache.poi.xslf.usermodel.XMLSlideShow;
    
    import org.apache.poi.xslf.usermodel.XSLFHyperlink;
    
    import org.apache.poi.xslf.usermodel.XSLFSlide;
    
    import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
    
    import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
    
    import org.apache.poi.xslf.usermodel.XSLFTextRun;
    
    import org.apache.poi.xslf.usermodel.XSLFTextShape;
    
    
    
    public class CreatingHyperlinks {
    
       public static void main(String args[]) throws IOException {
    
          //create an empty presentation
    
          XMLSlideShow ppt = new XMLSlideShow();
    
          
    
          //getting the slide master object
    
          XSLFSlideMaster slideMaster = ppt.getSlideMasters().get(0);
    
          
    
          //select a layout from specified list
    
          XSLFSlideLayout slidelayout = slideMaster.getLayout(SlideLayout.TITLE_AND_CONTENT);
    
         
    
          //creating a slide with title and content layout
    
          XSLFSlide slide = ppt.createSlide(slidelayout);
    
          
    
          //selection of title place holder
    
          XSLFTextShape body = slide.getPlaceholder(1);
    
          
    
          //clear the existing text in the slid
    
          body.clearText();
    
          
    
          //adding new paragraph
    
          XSLFTextRun textRun = body.addNewTextParagraph().addNewTextRun();
    
          
    
          //setting the text
    
          textRun.setText("Tutorials point"); 
    
          
    
          //creating the hyperlink
    
          XSLFHyperlink link = textRun.createHyperlink();
    
          
    
          //setting the link address
    
          link.setAddress("http://www.jc2182.com/");
    
          
    
          //create the file object            
    
          File file = new File("hyperlink.pptx");
    
          FileOutputStream out = new FileOutputStream(file);
    
          
    
          //save the changes in a file
    
          ppt.write(out);
    
          System.out.println("slide created successfully");
    
          out.close();              
    
       }
    
    }
    
    
    将上面的Java代码保存为CreatingHyperlinks.java,然后在命令提示符下编译执行如下 −
    
    
    $javac CreatingHyperlinks.java
    
    $java CreatingHyperlinks
    
    
    它将编译并执行以生成以下输出 −
    
    
    slide created successfully 
    
    
    新添加的带有超链接的幻灯片如下所示 −
    Create Hyperlink