博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 生成pdf
阅读量:4677 次
发布时间:2019-06-09

本文共 2979 字,大约阅读时间需要 9 分钟。

Document doc = new Document();            //粉丝名称            string memberName = "";            var detail = listDetails.FirstOrDefault();            if (detail != null)            {                ServiceRecord record = detail.ServiceRecord;                if (record != null)                {                    Member m = record.Member;                    if (m != null)                    {                        memberName = m.FirstName + " " + m.LastName;                    }                }            }            try            {                //step 2:创建一个writer用于监听Document以及通过PDF-stream指向一个文件                string pdfName = DateTime.Now.ToString("yyyyMMddHHmmss");                if (!Directory.Exists(Server.MapPath("~/Content/pdf/")))                {                    Directory.CreateDirectory(Server.MapPath("~/Content/pdf/"));                }                string pdfPath = Server.MapPath(string.Format("~/Content/pdf/{0}.pdf", pdfName));                PdfWriter.GetInstance(doc, new FileStream(pdfPath, FileMode.Create));                pdfURL = Request.Headers["host"] + Url.Content(string.Format("~/Content/pdf/{0}.pdf", pdfName));                // step 3: 打开document                doc.Open();            }//----------------     doc.Add(CreateParagraphTxt(new List
{ atc.Title }, num)); doc.Add(CreateParagraphImg(atc.PictureUrl));//--------------------------------- //创建文本段落 private Paragraph CreateParagraphTxt(List
Listtxt, int num, bool isContent = true) { Paragraph phTxt = new Paragraph();//段落 BaseFont bf = BaseFont.CreateFont("c://windows//fonts//simsun.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED); iTextSharp.text.Font font = new iTextSharp.text.Font(bf); phTxt.Font = font; if (num % 2 != 0) { phTxt.Font.SetColor(80, 120, 169); } phTxt.SpacingAfter = 10; int fontSize = 15; foreach (var item in Listtxt) { Chunk chunkTxt = new Chunk(item, FontFactory.GetFont(FontFactory.COURIER, "UniGB-UCS2-H", BaseFont.EMBEDDED, fontSize)); if (isContent) { phTxt.IndentationLeft = 30; } phTxt.Add(chunkTxt); } return phTxt; } //创建图片段落 private Paragraph CreateParagraphImg(string imgUrl) { if (System.IO.File.Exists(Server.MapPath(imgUrl))) { Paragraph phImg = new Paragraph();//段落 iTextSharp.text.Image jpg1 = iTextSharp.text.Image.GetInstance(Server.MapPath(imgUrl)); jpg1.Alignment = Element.ALIGN_LEFT; phImg.Add(jpg1); return phImg; } return new Paragraph("Image Load failed"); }

 

转载于:https://www.cnblogs.com/zjflove/p/pdf.html

你可能感兴趣的文章
使用框架的——好处
查看>>
如此大量的代码,但每个类里面的代码却不显得特别多,原因。。。。。。。。。。。。...
查看>>
C#特征备忘
查看>>
intelil——快捷键
查看>>
Java 面向对象 之 final 关键字
查看>>
Contact Form 7邮件发送失败的解决办法
查看>>
How to use For loop in CruiseControl.net
查看>>
P1800 software_NOI导刊2010提高(06)
查看>>
Python学习日记(1)使用if __name__ == "main"
查看>>
第八章 线性时间排序 8.3 基数排序
查看>>
创建maven项目
查看>>
二进制的最大公约数
查看>>
彻底弄懂 RTL级,行为级的区别
查看>>
关于PHP开发的9条建议
查看>>
jackson的自动检测机制
查看>>
2019 计蒜之道 初赛 第二场 B. 百度AI小课堂-上升子序列(简单) ( 实现)
查看>>
Python(2.7)-随机函数(random)
查看>>
loadrunner测试c/s架构的应用系统
查看>>
Mybatis学习笔记(一) 之框架原理
查看>>
Aptana 安装与配置
查看>>