1 效果图

2.代码

引用组件:

using iTextSharp.text;
using iTextSharp.text.pdf;
using System;
using System.Data;
using System.IO;
using System.Text;
using System.Xml;

示例:

/// <summary>
/// 利用itextsharp 创建一个简单pdf文件
/// </summary>
private static void GetCreateDocumentPDF()
{
//开始创建PDF文档
Document document = new Document();
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss")+".pdf";
PdfWriter.GetInstance(document, new FileStream("D:/" + fileName, FileMode.Create));
document.Open();
//字体
BaseFont baseFont = BaseFont.CreateFont(@"c:\windows\fonts\SIMSUN.TTC,1", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
//标题居中
Paragraph paragraph = new Paragraph("嘉峪关长城", new Font(baseFont, 18));
paragraph.Alignment = Element.ALIGN_CENTER;
document.Add(paragraph);

//段落
string strtext = "嘉峪关长城[1],在嘉峪关市区西南6公里处,位于嘉峪关最狭窄的山谷中部,城关两侧的城墙横穿沙漠戈壁,北连黑山悬壁长城,南接天下第一墩,是明代万里长城最西端的关口,以巍峨壮观著称于世,被誉为“天下雄关” 自古为河西第一隘口。关城始建于明洪武五(1372年)年因地势险要,建筑雄伟而有天下第一雄关连陲锁钥之称。[1]它由内城、外城、城壕三道防线组成重叠并守之势,形成五里一燧,十里一墩,三十里一堡,一百里一城的军事防御体系。关城以内城为主,周长640万平方米,面积2.5万平方米,城高10.7米,以黄土夯筑而成,西侧以砖包墙,雄伟坚固。内城有东西两门,东为光化门意为紫气东升,光华普照;西为柔远门意为以怀柔而致远,安定西陲。在两门外各有一瓮城围护,嘉峪关内城墙上还建有箭楼、敌楼、角楼、阁楼、闸门楼共十四座。嘉峪关关城是长城众多关城中保存最为完整的一座。";
Font lightblue = new Font(baseFont,12f, 1,new iTextSharp.text .BaseColor(43, 145, 175));
Font lightred = new Font(baseFont,12f, 1,new iTextSharp.text .BaseColor(163, 21, 21));

//创建一个图片对象
Stream sr = new FileStream("D:/100001.jpg", FileMode.Open, FileAccess.Read, FileShare.Read);
//iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(new Uri(@"d:\Lock-icon.png"));
iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(sr);
//设置图片的指定大小
//img.ScaleToFit(140F, 320F);
//按比例缩放
//img.ScalePercent(50);
//把图片增加到内容页的指定位子 b width c height e bottom f left
// img.SetAbsolutePosition(100f, 150f);

Paragraph paragraph_text = new Paragraph(strtext, lightblue);
paragraph_text.Alignment = Element.ALIGN_JUSTIFIED;

img.ScaleToFit(200f,132f);
img.Alignment = Image.TEXTWRAP | Image.ALIGN_RIGHT;
img.IndentationLeft = 9f;
img.SpacingAfter = 9f;
img.BorderWidthTop = 10f;
img.BorderColorTop = iTextSharp.text.BaseColor.WHITE;

document.Add(img);
document.Add(paragraph_text);

document.Add(new Chunk("\n\r嘉峪关长城\n\r", lightred));

//添加table
PdfPTable table = new PdfPTable(3);

table.SetWidths(new int[]{35,30,35}); //table 列的width比例
table.WidthPercentage = 100;//table width 比例

//表头
for (int i = 0; i < 3; i++)
{
PdfPCell cell = new PdfPCell(new Phrase(2f, "标题" + i, lightblue));
cell.HorizontalAlignment = Element.ALIGN_CENTER;
table.AddCell(cell);
}
//数据
for (int i = 0; i < 5; i++)
{
for (int j = 0; j< 3; j++)
{
PdfPCell cell = new PdfPCell(new Phrase(2f, "内容" + j, lightred));
cell.HorizontalAlignment = Element.ALIGN_CENTER;
table.AddCell(cell);
}
}
document.Add(table);
Font link = new Font(baseFont, 12f, 1, new iTextSharp.text.BaseColor(0, 0, 255));
Anchor anchor = new Anchor(" LIN.SU ", link);
anchor.Reference = "http://www.cnblogs.com/linsu";
Paragraph ph2 = new Paragraph();
ph2.Alignment = Element.ALIGN_RIGHT;
ph2.Add(anchor);
Chunk c3 = new Chunk("2014年1月21日13:49:01", lightblue);
ph2.Add(c3);
document.Add(ph2);
document.AddAuthor("LIN.SU");
document.AddCreationDate();
document.Close();
}

itextsharp 1.0的更多相关文章

  1. [ASP.net MVC] 将HTML转成PDF档案,使用iTextSharp套件的XMLWorkerHelper (附上解决显示中文问题)

    原文:[ASP.net MVC] 将HTML转成PDF档案,使用iTextSharp套件的XMLWorkerHelper (附上解决显示中文问题) [ASP.net MVC] 将HTML转成PDF档案 ...

  2. itextsharp图片生成pdf模糊问题解释

    I forget to mention that I' am using itextsharp 5.0.2. It turned out that PDF DPI = 110, which means ...

  3. c#使用word、excel、pdf ——转

    一.C# Word操作引入Word COM组件菜单=>项目=>添加引用=>COM=>Microsoft Word 11.0 Object Libraryusing Word = ...

  4. ZAM 3D 制作简单的3D字幕 流程(二)

    原地址:http://www.cnblogs.com/yk250/p/5663907.html 文中表述仅为本人理解,若有偏差和错误请指正! 接着 ZAM 3D 制作简单的3D字幕 流程(一) .本篇 ...

  5. ZAM 3D 制作3D动画字幕 用于Xaml导出

    原地址-> http://www.cnblogs.com/yk250/p/5662788.html 介绍:对经常使用Blend做动画的人来说,ZAM 3D 也很好上手,专业制作3D素材的XAML ...

  6. 微信小程序省市区选择器对接数据库

    前言,小程序本身是带有地区选着器的(网站:https://mp.weixin.qq.com/debug/wxadoc/dev/component/picker.html),由于自己开发的程序的数据是很 ...

  7. osg编译日志

    1>------ 已启动全部重新生成: 项目: ZERO_CHECK, 配置: Debug x64 ------1> Checking Build System1> CMake do ...

  8. .NET的那些事儿(9)——C# 2.0 中用iTextSharp制作PDF(基础篇) .

    该文主要介绍如何借助iTextSharp在C# 2.0中制作PDF文件,本文的架构大致按照iTextSharp的操作文档进行翻译,如果需要查看原文,请点击一下链接:http://itextsharp. ...

  9. ADO.NET .net core2.0添加json文件并转化成类注入控制器使用 简单了解 iTextSharp实现HTML to PDF ASP.NET MVC 中 Autofac依赖注入DI 控制反转IOC 了解一下 C# AutoMapper 了解一下

    ADO.NET   一.ADO.NET概要 ADO.NET是.NET框架中的重要组件,主要用于完成C#应用程序访问数据库 二.ADO.NET的组成 ①System.Data  → DataTable, ...

随机推荐

  1. vue中使用watch函数,当数据改变时自动引发事件

    本来我的需求是这样的,使用ElementUI的日期选择器,当日期选择器被更改时需要根据新日期来向服务器获取新数据,但是发现这个日期选择器没有change事件,后来终于发现vue有个watch函数就是用 ...

  2. 《DSP using MATLAB》Problem 8.22

    时光飞逝,亲朋会一个一个离我们远去,孤独漂泊一阵子后,我们自己也要离开, 代码: %% -------------------------------------------------------- ...

  3. 08_springmvc数据回显和@ModelAttribute注解详解

    一.数据回显 提交后,如果出现错误,将刚才提交的数据回显到刚才的提交页面. 二.pojo数据回显方法 1.springmvc默认对pojo数据进行回显. pojo数据传入controller方法后,s ...

  4. python学习笔记4_数据清洗与准备

    一.处理缺失值 pandas使用浮点值NaN(Not a Number)来显示缺失值,并将缺失值称为NA(not available(不可用)). NA常用处理方法: dropna:根据每个标签的值是 ...

  5. ArrayBlockingQueue的使用案例:

    ArrayBlockingQueue的介绍: ArrayBlockingQueue,顾名思义:基于数组的阻塞队列.数组是要指定长度的,所以使用ArrayBlockingQueue时必须指定长度,也就是 ...

  6. adb命令总结

  7. vector以及array和数组

    //比较数组.vector.array #include <iostream> #include <vector> #include <array> #includ ...

  8. Ionic 生成icon图标

    1.直接切换到项目跟目录 运行以下命令 备注:运行第一次ionic rescoures 后自动生成文件夹rescoures ,让后帮你自己的icon.png 文件放进入就ok ,在次运行ionic r ...

  9. LUOGU P4113 [HEOI2012]采花

    传送门 解题思路 莫队题卡莫队...莫队只能拿到100分,满分200.正解主席树??发个莫队100分代码. 代码 #include<iostream> #include<cstdio ...

  10. 常用的git操作命令

    整理来源于廖雪峰的git教程https://www.liaoxuefeng.com git: 分布式版本控制系统  本地有完整的代码库,还有远程代码库 svn: 集中式版本控制系统 必须联网时才可提交 ...