-
Java 设置PDF项目符号、编号列表
文档中的设置有序或无序列表是一种反应内容上下级关系或者内容相同属性的方式,与单纯的文字叙述相比,它能有效增强文档内容的条理性,突出重点。因此,本文将分享通过Java编程在PDF文档中设置有序或无序列表的方法。
使用工具:Free Spire.PDF for Java V2.2.2(免费版)
Jar文件导入:
Step1:在Java程序中新建一个文件夹可命名为Lib。并将下载包中的jar文件(如下图)复制到新建的文件夹下。
Step2:复制文件后,添加到引用类库:选中这个jar文件,点击鼠标右键,选择“Build Path” – “Add to Build Path”。完成引用。
Java代码示例(供参考)
import com.spire.pdf.*; import com.spire.pdf.graphics.*; import com.spire.pdf.lists.*; import java.awt.*; import java.awt.geom.*; public class list { public static void main(String[] args) { //创建PDFDocument对象 PdfDocument doc = new PdfDocument(); //设置边距 PdfUnitConvertor unitCvtr = new PdfUnitConvertor(); PdfMargins margin = new PdfMargins(); margin.setTop(unitCvtr.convertUnits(2.54f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point)); margin.setBottom(margin.getTop()); margin.setLeft(unitCvtr.convertUnits(3.17f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point)); margin.setRight(margin.getLeft()); //添加新的一页 PdfPageBase page = doc.getPages().add(PdfPageSize.A4, margin); //绘制标题 float y = 10; PdfBrush brush1 = PdfBrushes.getBlack(); PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("Arial Unicode MS", Font.BOLD, 16), true); PdfStringFormat format1 = new PdfStringFormat(PdfTextAlignment.Center); page.getCanvas().drawString("部门活动采购清单", font1, brush1, page.getCanvas().getClientSize().getWidth() / 2, y, format1); y = y + (float) font1.measureString("活动采购清单", format1).getHeight(); y = y + 5; //设置列表格式和列表文字 Rectangle2D rctg = new Rectangle2D.Float(); rctg.setFrame(new Point(0, 0), page.getCanvas().getClientSize()); PdfLinearGradientBrush brush = new PdfLinearGradientBrush(rctg, new PdfRGBColor(new PdfRGBColor(new Color(0,0,128))), new PdfRGBColor(new Color(255,69,0)), PdfLinearGradientMode.Vertical); PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Arial Unicode MS", Font.BOLD, 12), true); String formatted1 = "行政部\n开发部\n销售部\n后勤处\n保卫处"; String formatted2 = "饮料\n调味品\n糖果\n奶制品\n肉类\n蔬菜\n海鲜"; //画无序列表 PdfListBase list = new PdfUnorderedList(formatted2); list.setFont(font); list.setIndent(8); list.setTextIndent(5); list.setBrush(brush); PdfLayoutResult result = list.draw(page, 0, y); y = (float) (result.getBounds().getHeight()+result.getBounds().getY()); //画有序列表 PdfSortedList sortedList = new PdfSortedList(formatted1); sortedList.setFont(font); sortedList.setIndent(8); sortedList.setTextIndent(5); sortedList.setBrush(brush); sortedList.draw(page, 0, y); //保存文档 doc.saveToFile("list.pdf"); doc.close(); } }
列表设置效果:
出 处:https://www.cnblogs.com/Yesi/p/10509033.html
最新更新
带有参数的装饰器
类装饰器
django中的auth模块与admin后台管理
python的日期处理
字符串常用方法
基本数据类型概述
python-map()函数基本用法
python带你实现任意下载AcFun视频数据~
bbs项目之注册功能
变量的定义和使用
三大常用数据库事务详解之三:事务运行
三大常用关系型数据库事务详解之二:基
三大关系型数据库事务详解之一:基本概
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
VB.NET中如何快速访问注册表
ASP.NET中图象处理过程详解
Vue(1)Vue安装与使用
JavaScript 语言入门
js将一段字符串的首字母转成大写
纯原生html编写的h5视频播放器
H5仿原生app短信验证码vue2.0组件附源码地
TypeScript(4)接口
TypeScript(3)基础类型
TypeScript(2)WebStorm自动编译TypeScript配置