java 图片写入word_Java 实现word 中写入文字图片的解决方案
JAVA生成WORD文件的方法目前有以下两种方式:
一种是jacob 但是局限于windows平台 往往许多JAVA程序运行于其他操作系统 在此不讨论该方案;
一种是poi但是他的excel处理很程序 word模块还局限于读取word的文本内容,写word文件就更弱项了.
用到的jar包:iText-2.1.5.jariText-rtf-2.1.4.jariTextAsian.jar
/**
* 创建word文档 步骤:
* 1,建立文档
* 2,创建一个书写器
* 3,打开文档
* 4,向文档中写入数据
* 5,关闭文档
*/
/**
*
* @Description: 将网页内容导出为word
* @param @param file
* @param @throws DocumentException
* @param @throws IOException 设定文件
* @return void 返回类型
* @throws
*/
public String exportDoc() throws DocumentException, IOException {
// 设置纸张大小
Document document = new Document(PageSize.A4);
// 建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中
// ByteArrayOutputStream baos = new ByteArrayOutputStream();
File file = new File("D://report.doc");
RtfWriter2.getInstance(document, new FileOutputStream(file));
document.open();
// 设置中文字体
BaseFont bfChinese = BaseFont.createFont("STSongStd-Light",
"UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
// 标题字体风格
Font titleFont = new Font(bfChinese, 12, Font.BOLD);
// // 正文字体风格
//
Font contextFont = new Font(bfChinese, 10, Font.NORMAL);
Paragraph title = new Paragraph("统计报告");
//
// 设置标题格式对齐方式
title.setAlignment(Element.ALIGN_CENTER);
// title.setFont(titleFont);
document.add(title);
String contextString = "iText是一个能够快速产生PDF文件的java类库。"
+ " \n"// 换行 + "iText的java类对于那些要产生包含文本,"
+ "表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。"
+ "使用iText与PDF能够使你正确的控制Servlet的输出。";
Paragraph context = new Paragraph(contextString);
// 正文格式左对齐
context.setAlignment(Element.ALIGN_LEFT);
// context.setFont(contextFont);
// 离上一段落(标题)空的行数
context.setSpacingBefore(5);
// 设置第一行空的列数
context.setFirstLineIndent(20);
document.add(context);
//
// // 利用类FontFactory结合Font和Color可以设置各种各样字体样式
//
// Paragraph underline = new Paragraph("下划线的实现", FontFactory.getFont(
// FontFactory.HELVETICA_BOLDOBLIQUE, 18, Font.UNDERLINE,
// new Color(0, 0, 255)));
//
// document.add(underline);
//
// // 添加图片 Image.getInstance即可以放路径又可以放二进制字节流
//
String imageString[] = imageFileUrl.split(",");
Image img = Image.getInstance(Base64.decodeFast(imageString[1]));
img.setAbsolutePosition(0, 0);
img.setAlignment(Image.LEFT);// 设置图片显示位置
//
// img.scaleAbsolute(60, 60);// 直接设定显示尺寸
//
// // img.scalePercent(50);//表示显示的大小为原尺寸的50%
//
// // img.scalePercent(25, 12);//图像高宽的显示比例
//
// // img.setRotation(30);//图像旋转一定角度
//
document.add(img);
document.close();
// 得到输入流
// wordFile = new ByteArrayInputStream(baos.toByteArray());
// baos.close();
return "";
}
生成的文档可以直接在程序中指定文件保存的路径,也可以给浏览器一个输入流,从浏览器中导出,具体实现有如上述程序中注释掉的几句代码。
java 图片写入word_Java 实现word 中写入文字图片的解决方案相关推荐
- word文档html图片不能移动,win7系统Word中插入的图片不能移动的解决方法
很多小伙伴都遇到过win7系统Word中插入的图片不能移动的困惑吧,一些朋友看过网上零散的win7系统Word中插入的图片不能移动的处理方法,并没有完完全全明白win7系统Word中插入的图片不能移动 ...
- Java 实现word 中写入文字图片的解决方案
Java 实现word 中写入文字图片的解决方案 参考文章: (1)Java 实现word 中写入文字图片的解决方案 (2)https://www.cnblogs.com/jianguang/p/57 ...
- C#在Excel与Word中写入上角标与下角标
C#在Excel与Word中写入上角标与下角标 一.简介 二.实现过程 三.导出PDF字符错位 一.简介 使用C#语言操作Word与Excel文件一般分为两种方式,一种为在项目中引用Microsoft ...
- html怎么写入图片位置,如何在css中设置插入图片定位
在做网页开发时,客户给的素材图片通常都是连在一起的,这样做也是为了缩短响应时间.下面就给大家具体说一下 ,如何通过css属性来定位图片. 如何在css中设置插入图片定位 首先设置固定图片的css属性是 ...
- 在WORD中批量修改图片大小
今天在word中批量修改图片时发现了word一个强大的功能,不多说废话,直接附上步骤: 1.首先按一定的顺序将图片插入word当中: 2.点击"视图"----"宏&quo ...
- Word中并排放置图片的方法
Word中并排放置图片通常有两种方法: 1.设置图片为除嵌入式以外的格式,从而可以随意摆放,但这往往会导致"改一处而乱全文",显然不行. 2.插入表格,去除表格边框(可能仍有绿色网 ...
- 让word中插入的图片不失真,图像保持原清晰度
让word中插入的图片不失真,图像保持原清晰度 如图选择即可 可能的缺点就是word文件会变得更大,在保存和压缩会适当变慢. 但是我觉得有时候还是很有必要让图片变得清晰的.
- java提取word中的文字,java获取word里面的文本
需求场景 开发的web办公系统如果需要处理大量的Word文档(比如有成千上万个文档),用户一定提出查找包含某些关键字的文档的需求,这就要求能够读取 word 中的文字内容,而忽略其中的文字样式.表格. ...
- pdf格式的图片如何插入到word中
太长不看篇 1,在R中将图片保存为pdf格式 2,通过在线网站,将pdf转为png 3,将png粘贴到word中即可 背景0 今天做了一个相关性分析,以及可视化.可视化的图我在Rstudio中保存为p ...
最新文章
- This function or variable may be unsafe
- json - 如何在 flutter 中的List String中加入2 json值?
- 洛谷P3763 [Tjoi2017]DNA 【后缀数组】
- redis储存List类型数据
- SAP UI5 的本地 Fiori sandbox Launchpad
- failed to keep to the max pss of 66560
- Python常用小技巧(二)——打开图片
- MVC一个action对应多个视图的写法
- 斯坦福经典AI课程CS 221官方笔记来了!机器学习模型、贝叶斯网络等重点速查...
- nRF52840(一) 环境搭建
- 最全地理数据下载地址/全国地表径流量数据获取/土地利用数据/植被类型数据/NPP数据/土壤侵蚀数据/土壤质地分类/降雨量栅格数据/太阳辐射量数据
- C语言打印三角形,倒三角形,打印沙漏图形
- Redis分布式锁----悲观锁实现,以秒杀系统为例 - 林炳文Evankaka的专栏 - CSDN博客
- 对象存储 Object Storage
- csp怎么给线条描边,插画师要失业了?还在纠结阴影怎么画?CSP软件能直接自动生成...
- 计算机怎么格式化硬盘,电脑怎么格式化硬盘
- 对spring boot yml配置文件敏感信息加密处理的两种方式
- 基于BIM+GIS技术,如何构建智慧楼宇三维可视化管控平台?
- 如何快速学习 ANSYS?
- SolrJ更新索引数据