2
我想用iText創建一個PDF/A-1A文件,但我無法繞過經典的Helvetica錯誤,但我無法弄清楚如何解決它。 下面的代碼:必須嵌入所有字體。這一個不是:Helvetica
Imports iTextSharp.text.pdf
Imports iTextSharp.text
Imports System.IO
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim document As Document = New Document(PageSize.A4)
Dim writer As PdfAWriter = PdfAWriter.GetInstance(document, New FileStream("./Test.pdf", FileMode.Create), PdfAConformanceLevel.PDF_A_1A)
writer.CreateXmpMetadata()
document.Open()
'The sRGB File is located in my Resources.'
Dim icc = ICC_Profile.GetInstance(My.Resources.sRGB)
writer.SetOutputIntents("Custom", "", "http://www.color.org", "sRGB IEC61966-2.1", icc)
Dim fonts As Font = FontFactory.GetFont("./FreeSansBold.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED, 10)
Dim normal9 As Font = FontFactory.GetFont("./FreeSans.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED, 9)
Dim bold9 As Font = FontFactory.GetFont("./FreeSansBold.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED, 9)
Dim normal8 As Font = FontFactory.GetFont("./FreeSans.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED, 8)
document.Add(New Paragraph("Hello world"))
writer.Close()
document.Close()
End Sub
End Class
如果您有任何問題,只是問我。我希望你能幫助我。
Regards
Nadix。
你會這麼好心並解釋或發送每個電子郵件的整個代碼? – Nadix
我不知道你還需要什麼。如果您希望符合PDF/A-1A標準,則基本上需要始終使用'New Paragraph()'和您之前嵌入的字體。本身,'document.Add(New Paragraph(「Hello world」))'使用未嵌入的系統默認值。 –
好吧,我現在已經把所有東西都拿到了,它正在工作。非常感謝你的幫助! :) – Nadix