C# 產生PDF使用IText7

在這篇文章中介紹如何用C#產生PDF檔案。
使用套件為IText7。

IText7:https://itextpdf.com/en/products/itext-7/itext-7-core
程式碼範例:https://github.com/yuhsiang237/csharp-notes/tree/master/IText7Sample

先用Nuget安裝:

1
Install-Package itext7

如下,以下為產生一個PDF檔案,並加入標題。
其中標題為中英文混雜。

Program.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using iText.Kernel.Font;
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.Layout.Properties;
using System;

namespace IText7Sample
{
public class Program
{
public static void Main()
{
PdfFont sysFont = PdfFontFactory.CreateFont(Environment.CurrentDirectory + "/src/fonts/NotoSansCJKtc-Regular.otf", iText.IO.Font.PdfEncodings.IDENTITY_H);

// Must have write permissions to the path folder
PdfWriter writer = new PdfWriter(@"demo.pdf");
PdfDocument pdf = new PdfDocument(writer);
Document document = new Document(pdf);
Paragraph header = new Paragraph("標題 HEADER")
.SetFont(sysFont)
.SetTextAlignment(TextAlignment.CENTER)
.SetFontSize(20);

document.Add(header);
document.Close();
}
}
}

總結

可以使用此套件來快速產生PDF,如果有中文需求可以像我上面那樣自己去補中文字型即可。

參考資料