Ich habe einen Druckprozess, bei dem die Schriftartenersetzung nicht zulässig ist, um die Integrität des Dokuments zu gewährleisten. Die einzige Möglichkeit, dies zu erreichen, besteht darin, sicherzustellen, dass alle Schriftarten eingebettet sind. Ich gebe die eingebettete Option an, wenn ich die FontFactory.GetFont-Überladung (Zeichenfolgenschriftart, Zeichenfolgencodierung, Bool-Einbettung, Gleitkommagröße) aufruft. Der folgende Code ist ein Testcode, mit dem ich versucht habe, eine Lösung zu finden. Leider sind im PDF-Dokument nicht die Schriften eingebettet.Schriftarten, die nicht in ItextSharp eingebettet sind
public static void TestPDFEmbedd()
{
Document document = new Document();
PdfWriter.GetInstance(document, new FileStream(SystemPaths.SystemPath + "\\Production\\Test.pdf", FileMode.Create));
document.Open();
FontFactory.Register("c:\\windows\\fonts\\tahomabd.ttf","address_font");
Font font = FontFactory.GetFont("address_font",BaseFont.CP1252,true,10f);
document.Add(new Paragraph("Testing 123", font));
document.Close();
}
Wenn Sie Helvetica anstelle von Tahoma Bold sehen, ist der Pfad zur Schriftart falsch. –