java 生成pdf 压缩 文件大小
java使用itext生成pdf文件,文件大小压缩,比如大小34M变成1M或更小,大神
主要是生成pdf的时候不要嵌入字体,和先对嵌入的图片调整分辨率,达到缩小pdf的目的。
如果要用到域的话,还想显示中文,就必须得嵌入字体吧,不嵌入的话不支持中文显示
AcroFields form = stamper.getAcroFields();
/* 使用中文字体 */
BaseFont bf = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
Font fontChinese = new Font(bf, 12, Font.NORMAL);
/* 取出报表模板中的所有字段 */
form.addSubstitutionFont(bf);//这行必须添加否则中文不显示
可以显示中文 但是导出的文件是6M,使用Acrobat 另存为后是五百多K
但是itxt5 真的找不到还有其他地方可以压缩的。