赞
踩
【Spire.PDF】Spire.PDF导出报告之一获取与破解
【Spire.PDF】Spire.PDF导出报告之二基本绘制Draw
【Spire.PDF】Spire.PDF导出报告之三表格Grid
【Spire.PDF】Spire.PDF导出报告之四报告模板
【Spire.PDF】Spire.PDF导出报告之实用工具类PdfUtility
Spire.PDF版本:5.1
https://www.e-iceblue.com/Download/download-pdf-for-net-now.html
到官网下载(需要注册登录才能下载),安装并获取两个dll文件
或
链接:https://pan.baidu.com/s/1_YijYkjogH1bZ30gbpFMCQ
提取码:k5zn
Spire.License.dll 版本:1.3.7.40
Spire.Pdf.dll 版本:5.1.0.2040
新建项目,添加两个dll的应用
添加命名空间
using Spire.Pdf;
using Spire.Pdf.Graphics;
using Spire.Pdf.Grid;
新建类PDF生成工具类PdfUtility,方便使用和维护
添加基本属性
/// <summary>
/// PDF文档
/// </summary>
public PdfDocument Doc { get; private set; }
/// <summary>
/// 页面
/// </summary>
public PdfPageBase Page { get; private set; }
添加页面操作方法
/// <summary> /// 增加页面 /// </summary> public void PagesAdd() { Page = Doc.Pages.Add(); } /// <summary> /// 移除页面 /// </summary> /// <param name="page">要移除的页面</param> public void PageRemove(PdfPageBase page) { Doc.Pages.Remove(page); }
添加字体设置
#region Font,BrushColor,PenColor /// < summary> /// 设置字体大小样式 /// </ summary> /// < param name="emSize">大小</ param> /// < param name="IsBold">是否加粗,默认不加粗</ param> /// <returns>字体大小样式</returns> public PdfTrueTypeFont Font(float emSize, bool IsBold = false) { return new PdfTrueTypeFont(new Font("宋体", emSize, IsBold ? FontStyle.Bold : FontStyle.Regular), true);//true防止中文乱码 } /// < summary> /// 设置笔刷颜色(用于填充图形形状(如矩形、椭圆、饼形、多边形和封闭路径)的内部) /// </ summary> /// < param name="color">颜色</ param> /// <returns>PdfSolidBrush</returns> public PdfSolidBrush BrushColor(Color color) { return new PdfSolidBrush(color); } /// < summary> /// 设置画笔颜色(用于绘制直线和曲线) /// </ summary> /// < param name="color">颜色</ param> /// < param name="width">画笔的宽度,默认为1</ param> /// <returns>画笔颜色</returns> public PdfPen PenColor(Color color, float width = 1) { return new PdfPen(color, width); } #endregion
添加初始化方法
/// < summary>
/// 初始化
/// </ summary>
public void Init()
{
Doc = new PdfDocument();
Doc.PageSettings.Margins.All = 0;//设置边距为0,默认边距为40
}
添加绘制文本方法
/// <summary>
/// 绘制文本
/// </summary>
/// <param name="s">字符串文本</param>
/// <param name="font">文本格式</param>
/// <param name="brush">文本颜色</param>
/// <param name="point">绘制的位置</param>
/// <param name="page">页面,默认为创建的最后一个页面,也可以重新设置页面</param>
public void DrawString(string s, PdfTrueTypeFont font, PdfSolidBrush brush, PointF point, PdfPageBase page = null)
{
(page ?? Page).Canvas.DrawString(s, font, brush, point);
}
添加保存方法
/// <summary>
/// 保存并打开
/// </summary>
/// <param name="name"></param>
public void SaveToPDF(string name)
{
string path = Application.StartupPath + "\\Reports\\" + name + DateTime.Now.ToString("yyyyMMddHHmmss") + ".pdf";//以日期为文件名,以防存在打开文件
Doc.SaveToFile(path);
Doc.Close();
Process.Start(path);//打开文档
}
应用
PdfUtility pdfUtility = new PdfUtility();
pdfUtility.Init();
pdfUtility.PagesAdd();
pdfUtility.DrawString(pdfUtility.Page, "PDF文档测试", pdfUtility.Font(10), pdfUtility.BrushColor(Color.Black), new PointF(10, 10));
pdfUtility.SaveToPDF("PDFTest");
生成pdf后自动打开报告
发现出现Evaluation Warning : The document was created with Spire.PDF for .NET. 的警告
解决方案:在初始化时添加并删除第一页即可
/// <summary>
/// 初始化
/// </summary>
public void Init()
{
Doc = new PdfDocument();
Doc.PageSettings.Margins.All = 0;//设置边距为0,默认边距为40
PagesAdd(); PageRemove(Page);//删除第一页,因为第一页有警告语
}
【Spire.PDF】Spire.PDF导出报告之一获取与破解
【Spire.PDF】Spire.PDF导出报告之二基本绘制Draw
【Spire.PDF】Spire.PDF导出报告之三表格Grid
【Spire.PDF】Spire.PDF导出报告之四报告模板
【Spire.PDF】Spire.PDF导出报告之实用工具类PdfUtility
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。