java itextsharp_使用iTextSharp生成PDF
您提供的代码示例甚至输出PDF吗?它看起来像你尝试了许多不同的方式来添加条形码图像,结果是多余的代码混淆了事情......它让我很困惑;-)
无论如何,这是使用PdfStamper实现目标的一种方式,就像你尝试过的那样;示例HTTP Handler(.ashx):
using System;
using System.IO;
using System.Web;
using iTextSharp.text;
using iTextSharp.text.pdf;
public class addBarcodeWithStamper : IHttpHandler {
public void ProcessRequest (HttpContext context) {
HttpResponse Response = context.Response;
Response.ContentType = "application/pdf";
PdfReader reader = new PdfReader(context.Server.MapPath(PATH_TO_PDF));
/*
* save __one__ instance of barcode image;
* see MakeBarcode() method below
*/
iTextSharp.text.Image barcode = null;
float barcodeWidth = 0;
float barcodeHeight = 0;
using (PdfStamper stamper = new PdfStamper(reader, Response.OutputStream))
{
int n = reader.NumberOfPages;
for (int i = 1; i <= n; i++) {
PdfContentByte cb = stamper.GetOverContent(i);
/*
* re-use image bytes so they are added only __once__
*/
if (barcode == null) {
barcode = MakeBarcode(cb);
barcodeWidth= barcode.Width;
barcodeHeight= barcode.Height;
}
/*
* calculate in case individual page sizes are different
*/
Rectangle rect = stamper.Reader.GetPageSize(i);
float x = (rect.Width - barcodeWidth) / 2;
// modify/remove 10 offset as you see fit
float y = rect.Top - barcodeHeight - 10;
barcode.SetAbsolutePosition(x, y);
cb.AddImage(barcode);
}
}
}
public bool IsReusable {
get { return false; }
}
// ----------------------------------------------------------------------------
public iTextSharp.text.Image MakeBarcode(PdfContentByte cb) {
Barcode128 barcode128 = new Barcode128();
string text2 = "650-M5-013";
barcode128.Code = text2;
barcode128.ChecksumText = true;
return barcode128.CreateImageWithBarcode(cb, null, null);
}
}
显然,您需要将上面的 PATH_TO_PDF 更改为PDF的实际路径 . 还有其他方法可以实现相同的目标 . 例如使用PdfPageEventHelper .
java itextsharp_使用iTextSharp生成PDF相关推荐
- java在linux生成pdf文件,从 Java 应用程序动态生成 PDF 文件
简介: 如果您的应用程序需要动态生成 PDF 文档,那么您需要 iText 库.开源的 iText 库使得 PDF 的创建变得轻松易行.本文介绍了 iText 并提供了一个使用它从 Java 技术应用 ...
- C# Json数据转DataTable并生成PDF在线下载--iTextSharp生成PDF实例(文件下载,json数据转换,PDF排版一步到位)
前言 本文将重点介绍iTextSharp的使用方法和易踩的一些坑,顺便介绍了json转DataTable的简单快捷高效的方法及二进制流转换文件在线即时下载的方法.经测试生成40页的pdf仅需要1秒,大 ...
- 使用 iTextSharp 生成 PDF 表格
iTextSharp 5 已经取消了 Table 类,我对照着一份 iTextSharp 4 的帮助文档,使用 VS 的智能提示找遍了所有的命名空间,都找不到 Table 类,幸好最终看到一个 Pdf ...
- java xsl转换pdf_Java 生成PDF文档-阿里云开发者社区
最近项目需要实现PDF下载的功能,由于没有这方面的经验,从网上花了很长时间才找到相关的资料.整理之后,发现有如下几个框架可以实现这个功能. 1. 开源框架支持 iText,生成PDF文档,还支持将XM ...
- java itext根据模板生成pdf
很久没有更新过了,稍微闲一点,顺势总结下N久之前用到的小技巧. 这里生成pdf主要使用itext.jar.如想生成一个pdf,其实很简单的啦!第一种:全部使用代码生成:第二种:根据pdf模板生成.当前 ...
- java根据word模板生成pdf
java根据word模板动态赋值某些字段,然后生成pdf,参考文档:http://deepoove.com/poi-tl/#_why_poi_tl
- java利用iText工具包生成PDF
iText是一个非常著名的能够快速产生PDF文件的Java类库.支持文本,表格,图形的操作,可以方便的跟 Servlet 进行结合 iText的更新变化很大,早期版本在PDF样式上可能会有瑕疵,所有我 ...
- Java使用iText5.0生成PDF文件
前言 近段时间做开发,遇到生成PDF文件的需求,在此做一个总结: iText的5.0版本较2.0版本变化比较大,比如:颜色,页脚,字体,去掉table对象,文字位置 等等: 公司用的2.0,但我这里想 ...
- java使用在线编辑器生成PDF
java代码如下: /*** 使用在线编辑器生成PDF* @param htmlCode 编辑器内容* @param pdfPath PDF文件保存路径*/public static void htm ...
- java 生成水印,Java 用html模板生成 Pdf 加水印
生成PDF报表是很多企业系统常见的需求, 有些对外提供报表的系统还需要对生成的pdf文件添加水印, 本文将介绍以上2个问题简单又免费的技术方案 ( 商业收费可见: 最新版ItextPdf ) 依赖 免 ...
最新文章
- Android 中文API (94) —— MediaController
- 调试coffee script 的一个技巧
- P7444-「EZEC-7」猜排列【dp】
- 深度优化LNMP之Nginx [2]
- pytorch初试:CNN实现
- Jedis与Redisson对比有什么优缺点?
- 8.0魔兽服务器维护时间,魔兽世界8.0大米开放时间一览_wow8.0大秘境开启时间介绍_3DM网游...
- 数论专题 hdu2136
- Java继承中的构造方法使用的理解,白话文,简单易理解
- 步进电机驱动C语言代码,单片机控制步进电机系统(C语言源代码)
- 怎样知道android的手机号码,怎么知道自己的手机号
- C语言如何设置随机数
- Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level.错误解决
- GIT统计代码量及IDEA Statistic统计解析
- 什么是抓包 为什么要抓包
- Redis 进阶笔记
- resulful规范_resultful风格简介
- 城市太美、生活步调太悠闲
- VS2008下水晶报表之简单示例
- 深度学习AI美颜系列----人像静态/动态贴纸特效算法实现
热门文章
- 用友政务U8补丁包下载地址
- 基于android的家庭财务通 .apk,毕业设计(论文)-基于Android的家庭财务管家的设计与实现.doc...
- BitTorrent协议规范(BitTorrent Protocol Specification)之Peer Wire协议(Peer Wire Protocol)-第四部分...
- 中国男性最想娶回家的金庸女性角色排行榜zz
- .net chart控件的使用技巧
- 感知层在物联网中的重要性
- 什么是Adobe Creative Cloud,值得吗?
- adobe creative cloud的开机自启如何阻止
- 按键精灵手机助手之实战篇(一)需求理论分析
- 读书笔记《Redis入门指南》