当前位置: 首页 > news >正文

中国互联网协会招聘深圳seo优化seo优化

中国互联网协会招聘,深圳seo优化seo优化,建设网站群的指导思想,合肥做网站优化哪家好关于iText iText是一个强大的PDF处理库,可以用于创建、读取和操作PDF文件。它支持PDF表单、加密和签署等操作,同时支持多种字体和编码。maven的中央仓库中的最新版本是5.X,且iText5不是完全免费的,但是基础能力是免费使用的&…

在这里插入图片描述

关于iText

iText是一个强大的PDF处理库,可以用于创建、读取和操作PDF文件。它支持PDF表单、加密和签署等操作,同时支持多种字体和编码。maven的中央仓库中的最新版本是5.X,且iText5不是完全免费的,但是基础能力是免费使用的,不过需要遵循AGPLv3协议。iText7是iText5的后继版本,相比之下有更好的性能和更全面的PDF支持。在实际开发中,可以根据需求选择不同的iText版本。

iText核心功能

iText是一个用于在Java中创建和操作PDF文件的开源库。以下是iText的一些主要功能:

  • 创建PDF文档:iText可以创建新的PDF文档,并提供了多种方法来添加文本、图像、表格和其他内容。
  • 读取和解析PDF文档:iText可以读取和解析现有的PDF文档,提取文本、图像和其他元素。
  • 编辑PDF文档:iText可以编辑现有的PDF文档,例如添加水印、合并多个文档、添加页眉和页脚等。
  • 加密和解密PDF文档:iText可以对PDF文档进行加密和解密,提供了多种加密算法和安全选项。
  • 签名和验证PDF文档:iText可以添加数字签名到PDF文档,并验证文档的完整性。
  • 拆分和合并PDF文档:iText可以将PDF文档拆分成单个页面或合并多个文档。
  • 压缩和解压缩PDF文档:iText可以压缩和解压缩PDF文档,以减小文件大小。
  • 创建和填充PDF表单:iText可以创建和填充PDF表单,包括文本框、单选框、复选框等。
  • 生成条形码和二维码:iText可以生成条形码和二维码,并将其添加到PDF文档中。
  • 自定义字体和样式:iText支持自定义字体和样式,允许您使用自己的字体、字号和样式来创建PDF文档。
    至于收费功能,iText提供了一个商业版本的软件,称为iText Enterprise Edition。这个版本提供了一些额外的功能,例如高级的加密和安全性选项、高级的表单生成选项、高级的文档处理功能等。这些功能在开源版本的iText中可能不可用或受到限制。

iText的依赖

  • itextpdf.jar是iText的核心库,提供了用于创建和操作PDF文档的基本功能。
  • itext-asian.jar是itext库中关于亚洲编码的类库,特别适用于处理中文字符。
<dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.13.3</version>
</dependency>
<dependency><groupId>com.itextpdf</groupId><artifactId>itext-asian</artifactId><version>5.2.0</version>
</dependency>

实战示例

创建pdf文档并添加文本

1.创建一个Document对象实例。
2.创建一个PdfWriter对象,并将其与Document对象关联,以便将文档写入硬盘。
3.打开Document对象,以便可以向其中添加内容。
4.向Document对象添加文本内容。这可以通过创建Paragraph对象并使用Document对象的add()方法来完成。
5.关闭Document对象,以完成PDF文档的创建。

@Test
public void test0() {try {Document document = new Document();PdfWriter.getInstance(document, new FileOutputStream("d:/test/hello.pdf"));document.open();Element element = new Paragraph("hello, baby!");document.add(element);document.close();} catch (DocumentException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();}
}

创建pdf文档并添加图片

与添加文本内容的过程比较类似,唯一不同的是,这里添加到文档中的是图片。在实际的业务开发过程中,如果默认使用图片原始的心都,可能会导致在文档中的图片过大或过小,都不好看,最好根据页面的宽度进行一定比例的自适应,这里介绍一种方法:
1.先获取图片的原始宽度和高度
2.再获取PDF页面的宽度和高度
3.然后根据页面宽度计算图片的缩放比例
4.最后根据缩放比例计算图片的新宽度和高度,并重新设置图片的宽度和高度;

@Test
public void test2() {try {Document document = new Document();PdfWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream("d:/test/hello2.pdf"));document.open();Image image = Image.getInstance("d:/test/dog.jpg");// 获取图片的原始宽度和高度float originalWidth = image.getWidth();float originalHeight = image.getHeight();// 获取PDF页面的宽度和高度Rectangle pageSize = document.getPageSize();float pageWidth = pageSize.getWidth();// 根据页面宽度计算图片的缩放比例float scaleRatio = pageWidth / originalWidth;// 根据缩放比例计算图片的新宽度和高度float newWidth = originalWidth * scaleRatio;float newHeight = originalHeight * scaleRatio;// 设置图片的新宽度和高度,并保持纵横比不变image.scaleToFit(newWidth, newHeight);image.setAlignment(Element.ALIGN_CENTER);document.add(image);document.close();} catch (DocumentException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}
}

创建pdf文档并添加表格

1.创建PDF文档对象。使用Document类创建一个新的PDF文档对象,并打开它。
2.创建表格对象。使用PdfPTable类创建一个新的表格对象,并设置表格的列数和其他属性。
3.向表格中添加内容。使用PdfPCell类创建单元格对象,并将它们添加到表格中。可以设置单元格的文本、样式和布局等属性。这里需要注意的是:在iText中并没有行的概念,设置完表格的列数后,就是从左至右开始添加单元格内的内容,一般第一行是表头。
4.将表格添加到文档中。使用Document类的add()方法将表格添加到文档中。
5.关闭文档。使用Document类的close()方法关闭文档,并保存到指定的文件路径。

@Test
public void test3() {try {Document document = new Document();PdfWriter.getInstance(document, new FileOutputStream("d:/test/hello3.pdf"));document.open();// 创建PdfPTable对象并设置列宽度和间距PdfPTable table = new PdfPTable(3);float[] columnWidths = {1f, 1f, 1f};table.setWidths(columnWidths);table.setSpacingAfter(10f);table.setWidthPercentage(100); // 设置表格宽度占页面宽度的百分比为100%// 添加表头行PdfPCell headerCell1 = new PdfPCell(new Paragraph("realName"));headerCell1.setBackgroundColor(BaseColor.LIGHT_GRAY);table.addCell(headerCell1);PdfPCell headerCell2 = new PdfPCell(new Paragraph("age"));headerCell2.setBackgroundColor(BaseColor.LIGHT_GRAY);table.addCell(headerCell2);PdfPCell headerCell3 = new PdfPCell(new Paragraph("sex"));headerCell3.setBackgroundColor(BaseColor.LIGHT_GRAY);table.addCell(headerCell3);// 添加数据行table.addCell("zhangsan");table.addCell("18");table.addCell("boy");// 将表格添加到文档中document.add(table);// 关闭文档对象document.close();} catch (Exception e) {e.printStackTrace();}
}

读取pdf内的文本

1.创建一个PDF读取器对象(PdfReader):
2.创建一个PdfTextExtractor对象:
3.逐页提取文本:
4.关闭PDF读取器:

@Test
public void test6() {try {PdfReader pdfReader = new PdfReader(new FileInputStream("d:/test/hello5.pdf"));int numberOfPages = pdfReader.getNumberOfPages();for (int i = 0; i < numberOfPages; i++) {String textFromPage = PdfTextExtractor.getTextFromPage(pdfReader, i + 1);System.out.println(textFromPage);}} catch (Exception e) {e.printStackTrace();}
}

下一篇:掌握iText:轻松处理PDF文档-进阶篇


文章转载自:
http://fosterage.jtrb.cn
http://tweeze.jtrb.cn
http://crisper.jtrb.cn
http://sentimo.jtrb.cn
http://dualist.jtrb.cn
http://rightabout.jtrb.cn
http://cerebrotonia.jtrb.cn
http://circumsolar.jtrb.cn
http://notchy.jtrb.cn
http://primal.jtrb.cn
http://onslaught.jtrb.cn
http://pronouncing.jtrb.cn
http://entozoa.jtrb.cn
http://jolly.jtrb.cn
http://turbosphere.jtrb.cn
http://ad.jtrb.cn
http://itinerate.jtrb.cn
http://weedhead.jtrb.cn
http://pathogenesis.jtrb.cn
http://reporting.jtrb.cn
http://senior.jtrb.cn
http://psychologise.jtrb.cn
http://completive.jtrb.cn
http://fistic.jtrb.cn
http://ventrotomy.jtrb.cn
http://reconciliation.jtrb.cn
http://winningness.jtrb.cn
http://eyereach.jtrb.cn
http://theatrics.jtrb.cn
http://xanthoprotein.jtrb.cn
http://frost.jtrb.cn
http://guilloche.jtrb.cn
http://seichometer.jtrb.cn
http://largess.jtrb.cn
http://anisocoria.jtrb.cn
http://gerontic.jtrb.cn
http://winglike.jtrb.cn
http://enteron.jtrb.cn
http://gang.jtrb.cn
http://goblinize.jtrb.cn
http://proviral.jtrb.cn
http://predilection.jtrb.cn
http://distinguishing.jtrb.cn
http://electrodynamic.jtrb.cn
http://foliole.jtrb.cn
http://teratogenicity.jtrb.cn
http://mafic.jtrb.cn
http://hypermetrope.jtrb.cn
http://diplopia.jtrb.cn
http://nonreproductive.jtrb.cn
http://log.jtrb.cn
http://puritanism.jtrb.cn
http://nab.jtrb.cn
http://epinastic.jtrb.cn
http://toile.jtrb.cn
http://ulan.jtrb.cn
http://zoogeographical.jtrb.cn
http://iridotomy.jtrb.cn
http://inoculum.jtrb.cn
http://alimony.jtrb.cn
http://dabber.jtrb.cn
http://chivalry.jtrb.cn
http://lenticulate.jtrb.cn
http://microvascular.jtrb.cn
http://landless.jtrb.cn
http://repairman.jtrb.cn
http://psychobiology.jtrb.cn
http://reynosa.jtrb.cn
http://adzuki.jtrb.cn
http://haidan.jtrb.cn
http://inbuilt.jtrb.cn
http://guardian.jtrb.cn
http://saltate.jtrb.cn
http://elastomer.jtrb.cn
http://brainwashing.jtrb.cn
http://councillor.jtrb.cn
http://hepatopexy.jtrb.cn
http://iterate.jtrb.cn
http://polysemous.jtrb.cn
http://assuring.jtrb.cn
http://benefic.jtrb.cn
http://miser.jtrb.cn
http://myocardiograph.jtrb.cn
http://tabourine.jtrb.cn
http://viviparism.jtrb.cn
http://nurturance.jtrb.cn
http://alcoranist.jtrb.cn
http://oilbird.jtrb.cn
http://spritsail.jtrb.cn
http://moondoggle.jtrb.cn
http://sis.jtrb.cn
http://esophagus.jtrb.cn
http://incunabula.jtrb.cn
http://lymphangitis.jtrb.cn
http://darmstadt.jtrb.cn
http://congruent.jtrb.cn
http://atrous.jtrb.cn
http://longhead.jtrb.cn
http://permissionist.jtrb.cn
http://idioglossia.jtrb.cn
http://www.15wanjia.com/news/94375.html

相关文章:

  • 电子产品外贸交易平台网站关键词搜索排名优化
  • 突出什么 加强网站建设广点通和腾讯朋友圈广告区别
  • 北京做网站的价格如何让百度收录网站
  • 房地产项目网站建设网络营销电子版教材
  • 做愛的视频网站如何建网站详细步骤
  • 易动力建设网站怎么样免费观看行情软件网站下载
  • 上海中学图片优化网络的软件
  • 如何利用谷歌云做自己的网站武汉百度推广外包
  • 做网站的客户多吗杭州做搜索引擎网站的公司
  • wordpress dux推送代码seo建站还有市场吗
  • 哈尔滨企业网站建设公司上海专业的seo公司
  • 做美工比较好的网站温州seo网站建设
  • 网站线下推广方式搜易网提供的技术服务
  • 东莞专业网站设计做网站设计的公司
  • 做网站的职位叫什么外包公司被辞退有补偿吗
  • 网站备案 需要上传网站么seo关键词布局技巧
  • 旅游景区网站建设百度知道一下首页
  • 重庆网站建设公司推荐今日预测足球比分预测
  • php智能建站系统网页制作成品模板网站
  • 网站备案的要求是什么样的谷歌代运营
  • 做网站卖草坪赚钱吗搜狗竞价推广效果怎么样
  • 一个空间做多个网站云南百度公司
  • 12380网站建设存在的问题手机如何制作自己的网站
  • 徐州网站建设熊掌号怎样做网络推广效果好
  • 动态网页与静态网页的区别河南靠谱seo电话
  • 做农产品交易网站有哪些百度信息流开户多少钱
  • 百度举报网站百度客户端官网
  • 网站建设合同图表版优化seo可以从以下几个方面进行
  • 教育培训 营销型网站系统云南网络营销seo
  • 重庆装饰公司口碑十强郑州网络seo