最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實(shí)現(xiàn)在PDF文檔中應(yīng)用多種不同字體

 更新時(shí)間:2022年01月21日 11:22:58   作者:E-iceblue  
在PDF文檔中,可繪制不同字體樣式、不同語(yǔ)言的文字,可通過(guò)使用Standard字體、TrueType字體、CJK字體或者自定義(私有)等字體類(lèi)型。本文將具體介紹實(shí)現(xiàn)的方法,需要的可以參考一下

引入dll

 本次程序中引入的是Spire.Pdf.dll,引入方法如下:

【方法1】通過(guò)NuGet安裝。

可以在Visual Studio中打開(kāi)“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“管理NuGet包”,然后搜索“Free Spire.PDF”,點(diǎn)擊“安裝”。

也可以將以下內(nèi)容復(fù)制到PM控制臺(tái)安裝:

Install-Package FreeSpire.PDF -Version 7.8.9

【方法2】手動(dòng)安裝。

可通過(guò)手動(dòng)下載Free Spire.PDF for .NET包,然后解壓,找到BIN文件夾下的Spire.Pdf.dll。在Visual Studio中打開(kāi)“解決方案資源管理器”,鼠標(biāo)右鍵點(diǎn)擊“引用”,“添加引用”,將本地路徑BIN文件夾下的dll文件添加引用至程序。

應(yīng)用字體

C#

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace ApplyFonts
{
    class Program
    {
        static void Main(string[] args)
        {
            //創(chuàng)建PdfDocument對(duì)象
            PdfDocument pdf = new PdfDocument();

            //添加一頁(yè)
            PdfPageBase page = pdf.Pages.Add();

            //初始化y坐標(biāo)
            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.Pdf
Imports Spire.Pdf.Graphics
Imports System.Drawing

Namespace ApplyFonts
    Class Program
        Private Shared Sub Main(args As String())
            '創(chuàng)建PdfDocument對(duì)象
            Dim pdf As New PdfDocument()

            '添加一頁(yè)
            Dim page As PdfPageBase = pdf.Pages.Add()

            '初始化y坐標(biāo)
            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 Class
End Namespace

繪制效果

以上就是C#實(shí)現(xiàn)在PDF文檔中應(yīng)用多種不同字體的詳細(xì)內(nèi)容,更多關(guān)于C# PDF應(yīng)用不同字體的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 簡(jiǎn)述C#枚舉高級(jí)戰(zhàn)術(shù)

    簡(jiǎn)述C#枚舉高級(jí)戰(zhàn)術(shù)

    這篇文章主要介紹了簡(jiǎn)述C#枚舉高級(jí)戰(zhàn)術(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • C#/VB.NET實(shí)現(xiàn)在PDF文檔中插入,替換或刪除圖片

    C#/VB.NET實(shí)現(xiàn)在PDF文檔中插入,替換或刪除圖片

    這篇文章主要為大家詳細(xì)介紹了如何使用 Spire.PDF for .NET 通過(guò)程序在 PDF 文檔中插入、替換或刪除圖片,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-12-12
  • VisualStudio2019安裝C#環(huán)境的實(shí)現(xiàn)方法

    VisualStudio2019安裝C#環(huán)境的實(shí)現(xiàn)方法

    這篇文章主要介紹了VisualStudio2019安裝C#環(huán)境的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • C#調(diào)用Win32的API函數(shù)--User32.dll

    C#調(diào)用Win32的API函數(shù)--User32.dll

    這篇文章主要介紹了C#調(diào)用Win32_的API函數(shù)--User32.dll,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • C#常用多線(xiàn)程(線(xiàn)程同步,事件觸發(fā),信號(hào)量,互斥鎖,共享內(nèi)存,消息隊(duì)列)

    C#常用多線(xiàn)程(線(xiàn)程同步,事件觸發(fā),信號(hào)量,互斥鎖,共享內(nèi)存,消息隊(duì)列)

    這篇文章主要介紹了C#常用多線(xiàn)程(線(xiàn)程同步,事件觸發(fā),信號(hào)量,互斥鎖,共享內(nèi)存,消息隊(duì)列),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • C#實(shí)現(xiàn)掃描局域網(wǎng)內(nèi)的所有IP和端口

    C#實(shí)現(xiàn)掃描局域網(wǎng)內(nèi)的所有IP和端口

    這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)掃描局域網(wǎng)內(nèi)的所有IP和端口的功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-12-12
  • c#中值類(lèi)型和引用類(lèi)型的基礎(chǔ)教程

    c#中值類(lèi)型和引用類(lèi)型的基礎(chǔ)教程

    這篇文章主要給大家介紹了關(guān)于c#中值類(lèi)型和引用類(lèi)型的基礎(chǔ)教程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • C#中實(shí)體類(lèi)與XML相互轉(zhuǎn)換方式

    C#中實(shí)體類(lèi)與XML相互轉(zhuǎn)換方式

    這篇文章主要介紹了C#中實(shí)體類(lèi)與XML相互轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 解析C#設(shè)計(jì)模式編程中適配器模式的實(shí)現(xiàn)

    解析C#設(shè)計(jì)模式編程中適配器模式的實(shí)現(xiàn)

    這篇文章主要介紹了C#設(shè)計(jì)模式編程中適配器模式的實(shí)現(xiàn),分別舉了類(lèi)的對(duì)象適配器與對(duì)象的適配器模式的例子,需要的朋友可以參考下
    2016-02-02
  • C#實(shí)現(xiàn)基于Base64的加密解密類(lèi)實(shí)例

    C#實(shí)現(xiàn)基于Base64的加密解密類(lèi)實(shí)例

    這篇文章主要介紹了C#實(shí)現(xiàn)基于Base64的加密解密類(lèi),實(shí)例分析了C#基于Base64的加密解密實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03

最新評(píng)論

响水县| 乐平市| 松滋市| 石门县| 策勒县| 沁源县| 河津市| 咸宁市| 龙口市| 祥云县| 云龙县| 湖口县| 达尔| 厦门市| 天祝| 枣庄市| 囊谦县| 南皮县| 平定县| 舒兰市| 内丘县| 墨竹工卡县| 方城县| 精河县| 沧州市| 宜川县| 奉节县| 南汇区| 日土县| 大渡口区| 通化县| 兴城市| 合作市| 于都县| 手机| 杭锦后旗| 广宁县| 阜宁县| 诏安县| 绥宁县| 筠连县|