Java设置PDF有序和无序列表的方法介绍 Java设置PDF有序和无序列表的知识点总结

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Java设置PDF有序和无序列表的方法介绍 Java设置PDF有序和无序列表的知识点总结

  2021-03-30 我要评论

文档中的设置有序或无序列表是一种反应内容上下级关系或者内容相同属性的方式,与单纯的文字叙述相比,它能有效增强文档内容的条理性,突出重点。因此,本文将分享通过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();

 }

}

列表设置效果:

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们