package com.geekbang.ppttools2;
import com.google.common.base.Splitter;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFShape;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFTextShape;
import java.io.File;
import java.io.FileInputStream;
public class PPTXUtils123 {
public static String getToc(File file) throws Exception {
XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(file));
StringBuilder ret = new StringBuilder();
XSLFSlide slide = ppt.getSlides().get(0);
int currCha = -1;
int count = 1;
String title = null;
boolean firstLine = true;
testExtract(ret, slide, count, title, firstLine);
return ret.toString();
}
private static void testExtract(StringBuilder ret, XSLFSlide slide, int count, String title, boolean firstLine) {
int currCha;
for (XSLFShape shape : slide.getShapes()) {
if (shape instanceof XSLFTextShape) {
XSLFTextShape textShape = (XSLFTextShape) shape;
String text = textShape.getText();
try {
currCha = Integer.parseInt(text);
if (currCha >= 0 && title != null) {
ret.append("# ").append(currCha).append('.').append(title).append('\n');
}
continue;
} catch (Exception ex) {
}
for (String line : Splitter.on("\n").omitEmptyStrings().trimResults().split(text)) {
if (firstLine) {
title = line;
firstLine = false;
} else {
ret.append(count).append(". ").append(line).append('\n');
count++;
}
}
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
java Intellij更多功能介绍
共4个文件
java:3个
xml:1个
需积分: 0 0 下载量 167 浏览量
2023-11-05
18:00:51
上传
评论
收藏 5KB ZIP 举报
温馨提示
java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java Intellij更多功能介绍java I
资源推荐
资源详情
资源评论
收起资源包目录
java Intellij更多功能介绍.zip (4个子文件)
08. Intellij 更多功能介绍
code
pom.xml 2KB
src
test
java
com
geekbang
ppttools
TOCGenTest.java 428B
main
java
com
geekbang
ppttools2
PPTXUtils123.java 2KB
ppttools
TOCGen.java 1KB
共 4 条
- 1
资源评论
zero2100
- 粉丝: 171
- 资源: 2462
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功