itext生成PDF设置页眉页脚的实例详解

发布时间 - 2026-01-11 03:23:13    点击率:

itext生成PDF设置页眉页脚的实例详解

实例代码:

/** 
 * ITextTest 
 * iText生成PDF加入列表,注释等内容,同时设置页眉和页脚及页码等。 
 */ 
package com.labci.itext.test; 
import java.awt.Color; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import com.lowagie.text.Annotation; 
import com.lowagie.text.Document; 
import com.lowagie.text.DocumentException; 
import com.lowagie.text.Font; 
import com.lowagie.text.HeaderFooter; 
import com.lowagie.text.List; 
import com.lowagie.text.ListItem; 
import com.lowagie.text.Phrase; 
import com.lowagie.text.Rectangle; 
import com.lowagie.text.pdf.BaseFont; 
import com.lowagie.text.pdf.PdfWriter; 
/** 
 * @author Bill Tu(tujiyue/iwtxokhtd) 
 * Jun 6, 2011[4:10:35 PM] 
 * 
 */ 
public class ITextList { 
  private final static String RESULT_FILE="itext_list.pdf"; 
   
  public static void main(String []args){ 
    Document doc=new Document(); 
     
    try { 
       
       
       
      PdfWriter.getInstance(doc, new FileOutputStream(RESULT_FILE)); 
      BaseFont fontChinese=null; 
      try { 
        fontChinese = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);//设置中文字体 
      } catch (IOException e) { 
        e.printStackTrace(); 
      } 
     
      Font chinese = new Font(fontChinese, 10, Font.NORMAL);  
       
      /** 
       * HeaderFooter的第2个参数为非false时代表打印页码 
       * 页眉页脚中也可以加入图片,并非只能是文字 
       */ 
      HeaderFooter header=new HeaderFooter(new Phrase("这仅仅是个页眉,页码在页脚处",chinese),false); 
       
      //设置是否有边框等 
//     header.setBorder(Rectangle.NO_BORDER); 
      header.setBorder(Rectangle.BOTTOM); 
      header.setAlignment(1); 
      header.setBorderColor(Color.red); 
      doc.setHeader(header); 
       
      HeaderFooter footer=new HeaderFooter(new Phrase("-",chinese),new Phrase("-",chinese)); 
      /** 
       * 0是靠左 
       * 1是居中 
       * 2是居右 
       */ 
      footer.setAlignment(1); 
      footer.setBorderColor(Color.red); 
      footer.setBorder(Rectangle.BOX); 
      doc.setFooter(footer); 
     
      /** 
       * 页眉页脚的设置一定要在open前设置好 
       */ 
      doc.open(); 
      /** 
       * true:代表要排序,10代表序号与文字之间的间距 
       * false:代表不排序,则文字前的符号为"-" 
       */ 
      List itextList=new List(true,10); 
       
      /** 
       * 也可以改变列表的符号[可选] 
       * 
$$$ 
       * 要改变列表符号时,上面的List构造方法第一参数值必须为false 
       * 
$$$ 
       * 可以使用字符串,Chunk,Image等作列表符号,如下 
       */ 
      //itextList.setListSymbol("*"); 
       
      ListItem firstItem=new ListItem("first paragraph"); 
      ListItem secondItem=new ListItem("second paragraph"); 
      ListItem thirdItem=new ListItem("third paragraph"); 
      itextList.add(firstItem); 
      itextList.add(secondItem); 
      itextList.add(thirdItem); 
       
      doc.add(itextList); 
       
      //添加注释,注释有标题和内容,注释可以是文本,内部链接,外部链接,图片等 
      Annotation annotation=new Annotation("what's this?","it's a tree and it is not a big"); 
       
      doc.add(annotation); 
       
      doc.close(); 
    } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
    } catch (DocumentException e) { 
      e.printStackTrace(); 
    } 
  } 
} 
 

工程结构图:

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# itext生成PDF设置页眉页脚  # itext  # PDF的生成  # java使用itext导出PDF文本绝对定位(实现方法)  # 详解开源免费且稳定实用的.NET PDF打印组件itextSharp(.NET组件介绍之八)  # Java开源工具iText生成PDF简单实例  # 利用iText在JSP中生成PDF报表  # 是个  # 如有  # 结构图  # 希望能  # 可以使用  # 可选  # 中也  # 谢谢大家  # 等内容  # 疑问请  # 居右  # Bill  # author  # Rectangle  # Tu  # PdfWriter  # List  # ListItem  # pdf  # Phrase 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 高防服务器租用指南:配置选择与快速部署攻略  如何快速生成橙子建站落地页链接?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  在centOS 7安装mysql 5.7的详细教程  java ZXing生成二维码及条码实例分享  微信小程序 wx.uploadFile无法上传解决办法  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  原生JS获取元素集合的子元素宽度实例  公司门户网站制作流程,华为官网怎么做?  如何在香港免费服务器上快速搭建网站?  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  潮流网站制作头像软件下载,适合母子的网名有哪些?  独立制作一个网站多少钱,建立网站需要花多少钱?  深圳网站制作的公司有哪些,dido官方网站?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  如何快速搭建FTP站点实现文件共享?  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  在线教育网站制作平台,山西立德教育官网?  如何有效防御Web建站篡改攻击?  无锡营销型网站制作公司,无锡网选车牌流程?  PHP正则匹配日期和时间(时间戳转换)的实例代码  HTML 中如何正确使用模板变量为元素的 name 属性赋值  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  Laravel模型事件有哪些_Laravel Model Event生命周期详解  html如何与html链接_实现多个HTML页面互相链接【互相】  Thinkphp 中 distinct 的用法解析  如何构建满足综合性能需求的优质建站方案?  EditPlus中的正则表达式 实战(4)  如何快速生成凡客建站的专业级图册?  如何自定义建站之星网站的导航菜单样式?  C语言设计一个闪闪的圣诞树  5种Android数据存储方式汇总  怎么用AI帮你为初创公司进行市场定位分析?  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  如何在宝塔面板中创建新站点?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何在万网开始建站?分步指南解析  如何快速搭建高效香港服务器网站?  如何在云服务器上快速搭建个人网站?  Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】  Python制作简易注册登录系统  专业商城网站制作公司有哪些,pi商城官网是哪个?  利用vue写todolist单页应用  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  Laravel PHP版本要求一览_Laravel各版本环境要求对照  JavaScript实现Fly Bird小游戏