poi 生成 PPT 创建表格 如何设置表格的 宽度 高度
代码如下:
File f = new File("D://demo.pptx");
InputStream in = new FileInputStream(f);
XMLSlideShow slideShow = new XMLSlideShow(in);
XSLFSlideLayout layOut = slideShow.getSlideMasters()[0].getLayout(SlideLayout.CUST);
XSLFSlide slide = slideShow.createSlide(layOut);
XSLFTable table = slide.createTable();
//标题行
XSLFTableRow titleRow = table.addRow();
titleRow.setHeight(44.15);
//内容行
XSLFTableRow contentRow = table.addRow();
contentRow.setHeight(94.4);
String tableTitles[] = new String[]
{"AAA","BBB","CCC","DDD","EEE","FFF","GGG"};
String content[] = new String[]
{"1","2","3","4","5","6","11"};
for(int x = 0 ; x < tableTitles.length ; x++){
XSLFTableCell titleCell = titleRow.addCell();
titleCell.setBorderBottomColor(new Color(149,179,215));
XSLFTextRun textRun = titleCell.addNewTextParagraph().addNewTextRun();
textRun.setFontSize(14);
textRun.setFontColor(Color.BLACK);
textRun.setFontFamily("微软雅黑");
textRun.setText(tableTitles[x]);
titleCell.addNewTextParagraph().setTextAlign(TextAlign.CENTER);//设置文字居中
titleCell.setFillColor(new Color(219,229,241));
titleCell.setBorderLeft(1);
titleCell.setBorderRight(0.5);
titleCell.setBorderTop(1);
titleCell.setBorderBottom(1);
XSLFTableCell contentCell = contentRow.addCell();
contentCell.setText(content[x]);
}
table.setAnchor(new Rectangle2D.Double(18.8,200,60,9000));
System.out.println(table.getAnchor().getWidth());
slideShow.write(new FileOutputStream("D:/xxx.pptx"));
table.setAnchor(new Rectangle2D.Double(18.8,200,60,9000)); 这一句设置了表格的 X Y 位置 以及宽度和高度。
但是输出的文件。发现设置的宽高并没有效果。求大神解答。。
poi版本是3.9
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试设定单元格宽度