C#怎么在PDF文档中应用多种不同字体
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,今天小编给大家分享一下C#怎么在PDF文档中应用多种不同字体的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面
千家信息网最后更新 2026年11月02日C#怎么在PDF文档中应用多种不同字体
今天小编给大家分享一下C#怎么在PDF文档中应用多种不同字体的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
引入dll
本次程序中引入的是Spire.Pdf.dll,引入方法如下:
【方法1】通过NuGet安装。
可以在Visual Studio中打开"解决方案资源管理器",鼠标右键点击"引用","管理NuGet包",然后搜索"Free Spire.PDF",点击"安装"。
也可以将以下内容复制到PM控制台安装:
Install-Package FreeSpire.PDF -Version 7.8.9
【方法2】手动安装。
可通过手动下载Free Spire.PDF for .NET包,然后解压,找到BIN文件夹下的Spire.Pdf.dll。在Visual Studio中打开"解决方案资源管理器",鼠标右键点击"引用","添加引用",将本地路径BIN文件夹下的dll文件添加引用至程序。
应用字体
C#
using Spire.Pdf;using Spire.Pdf.Graphics;using System.Drawing;namespace ApplyFonts{ class Program { static void Main(string[] args) { //创建PdfDocument对象 PdfDocument pdf = new PdfDocument(); //添加一页 PdfPageBase page = pdf.Pages.Add(); //初始化y坐标 float y = 30; //使用standard字体绘制文字 PdfFont standardFont = new PdfFont(PdfFontFamily.Helvetica, 14f); page.Canvas.DrawString("Standard Font - Helvetica", standardFont, PdfBrushes.Black, 0, y); standardFont = new PdfFont(PdfFontFamily.TimesRoman, 14f); page.Canvas.DrawString("Standard Font - Times_Roman", standardFont, PdfBrushes.Black, 0, (y = y + 16)); standardFont = new PdfFont(PdfFontFamily.Courier, 14f); page.Canvas.DrawString("Standard Font - Courier", standardFont, PdfBrushes.Black, 0, (y = y + 16)); //使用true type字体绘制文字 PdfTrueTypeFont trueTypeFont = new PdfTrueTypeFont(new Font("Arial", 12f), true); page.Canvas.DrawString("TrueType Font - Arial", trueTypeFont, PdfBrushes.Blue, 0, (y = y + 30f)); /*//使用私有字体绘制文字 string fontFileName = "C:\\Users\\Administrator\\Desktop\\fontfile.ttf"; trueTypeFont = new PdfTrueTypeFont(fontFileName, 14f); page.Canvas.DrawString("Private Font: 私有字体", trueTypeFont, PdfBrushes.DarkGreen, 0, (y = y + 30f)); */ //使用cjk字体绘制文字 PdfCjkStandardFont cjkFont = new PdfCjkStandardFont(PdfCjkFontFamily.MonotypeHeiMedium, 14f); page.Canvas.DrawString("你 好", cjkFont, PdfBrushes.DeepPink, 0, (y = y + 30f)); cjkFont = new PdfCjkStandardFont(PdfCjkFontFamily.HanyangSystemsGothicMedium, 14f); page.Canvas.DrawString("こんにちは", cjkFont, PdfBrushes.OrangeRed, 0, (y = y + 16f)); cjkFont = new PdfCjkStandardFont(PdfCjkFontFamily.HanyangSystemsShinMyeongJoMedium, 14f); page.Canvas.DrawString("안녕하세요", cjkFont, PdfBrushes.Purple, 0, (y = y + 16f)); //保存文档 pdf.SaveToFile("ApplyFonts.pdf",FileFormat.PDF); System.Diagnostics.Process.Start("ApplyFonts.pdf"); } }}VB.NET
Imports Spire.PdfImports Spire.Pdf.GraphicsImports System.DrawingNamespace ApplyFonts Class Program Private Shared Sub Main(args As String()) '创建PdfDocument对象 Dim pdf As New PdfDocument() '添加一页 Dim page As PdfPageBase = pdf.Pages.Add() '初始化y坐标 Dim y As Single = 30 '使用standard字体绘制文字 Dim standardFont As New PdfFont(PdfFontFamily.Helvetica, 14F) page.Canvas.DrawString("Standard Font - Helvetica", standardFont, PdfBrushes.Black, 0, y) standardFont = New PdfFont(PdfFontFamily.TimesRoman, 14F) page.Canvas.DrawString("Standard Font - Times_Roman", standardFont, PdfBrushes.Black, 0, (InlineAssignHelper(y, y + 16))) standardFont = New PdfFont(PdfFontFamily.Courier, 14F) page.Canvas.DrawString("Standard Font - Courier", standardFont, PdfBrushes.Black, 0, (InlineAssignHelper(y, y + 16))) '使用true type字体绘制文字 Dim trueTypeFont As New PdfTrueTypeFont(New Font("Arial", 12F), True) page.Canvas.DrawString("TrueType Font - Arial", trueTypeFont, PdfBrushes.Blue, 0, (InlineAssignHelper(y, y + 30F))) '//使用私有字体绘制文字' string fontFileName = "C:\\Users\\Administrator\\Desktop\\fontfile.ttf";' trueTypeFont = new PdfTrueTypeFont(fontFileName, 14f);' page.Canvas.DrawString("Private Font: 私有字体", trueTypeFont, PdfBrushes.DarkGreen, 0, (y = y + 30f));' '使用cjk字体绘制文字 Dim cjkFont As New PdfCjkStandardFont(PdfCjkFontFamily.MonotypeHeiMedium, 14F) page.Canvas.DrawString("你 好", cjkFont, PdfBrushes.DeepPink, 0, (InlineAssignHelper(y, y + 30F))) cjkFont = New PdfCjkStandardFont(PdfCjkFontFamily.HanyangSystemsGothicMedium, 14F) page.Canvas.DrawString("こんにちは", cjkFont, PdfBrushes.OrangeRed, 0, (InlineAssignHelper(y, y + 16F))) cjkFont = New PdfCjkStandardFont(PdfCjkFontFamily.HanyangSystemsShinMyeongJoMedium, 14F) page.Canvas.DrawString("안녕하세요", cjkFont, PdfBrushes.Purple, 0, (InlineAssignHelper(y, y + 16F))) '保存文档 pdf.SaveToFile("ApplyFonts.pdf", FileFormat.PDF) System.Diagnostics.Process.Start("ApplyFonts.pdf") End Sub Private Shared Function InlineAssignHelper(Of T)(ByRef target As T, value As T) As T target = value Return value End Function End ClassEnd Namespace绘制效果
以上就是"C#怎么在PDF文档中应用多种不同字体"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
字体
文字
文档
知识
篇文章
私有
不同
应用
内容
文件
方法
管理
多种
C#
坐标
对象
手动
文件夹
方案
程序
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司
互联网科技财经
鸠鸠互联网科技
腾讯阿里互联网科技
上海挚品互联网科技
智网互联网科技
互联网与新科技
广州互联网络科技有限公司
易通互联网络科技有限公司
北京禾田雨橡互联网科技
中国互联网金融科技基金
互联网和高科技公司
互联网科技寓意
互联网对科技的发展
黑科技闪耀互联网之光
互联网科技和法律行业
国大互联网教育科技有限公司薪资
中天科技中国工业互联网
郑州欣桑互联网科技有限公司
中国互联网公司的科技投入
云之行互联网科技
互联网科技公司怎么样
北京互联网络科技有限公司
创业天下互联网科技有限公司
昭通云南众福互联网科技有限公司
爱医互联网络科技
广州富喜互联网络科技
互联网科技资金流入
兰石爱特工业互联网科技分公司
六子台科技互联网展会