Now Spire.Doc support using uninstalled font when converting Doc to PDF to diversity text content. In this article, we'll talk about how to realize this function:
Step 1: Download a font uninstalled in system.
Step 2: Create a new blank Word document.
Document document = new Document();
Step 3: Add a section and create a new paragraph.
Section section = document.AddSection(); Paragraph paragraph = section.Paragraphs.Count > 0 ? section.Paragraphs[0] : section.AddParagraph();
Step 4: Append text for a txtRange.
TextRange txtRange = paragraph.AppendText(text);
Step 5: Create an example for class ToPdfParameterList named to pdf, and create a new PrivateFontPathlist for property PrivateFontPaths, instantiate one PrivateFontPath with name and path of downloaded font.
ToPdfParameterList toPdf = new ToPdfParameterList() { PrivateFontPaths = new List() { new PrivateFontPath("DeeDeeFlowers",@"D:\DeeDeeFlowers.ttf") } };
Step 6: Set the new font for the txtaRange.
txtRange.CharacterFormat.FontName = "DeeDeeFlowers";
Step 7: Convert the Doc to PDF.
document.SaveToFile("result.pdf", toPdf);
Step 8: Review converted PDF files.
System.Diagnostics.Process.Start("result.pdf");
Result screenshot:
Full Code Below:
Document document = new Document(); //Add the first secition Section section = document.AddSection(); //Create a new paragraph and get the first paragraph Paragraph paragraph = section.Paragraphs.Count > 0 ? section.Paragraphs[0] : section.AddParagraph(); //Append Text String text = "This paragraph is demo of text font and color. " + "The font name of this paragraph is Tahoma. " + "The font size of this paragraph is 20. " + "The under line style of this paragraph is DotDot. " + "The color of this paragraph is Blue. "; TextRange txtRange = paragraph.AppendText(text); //Import the font ToPdfParameterList toPdf = new ToPdfParameterList() { PrivateFontPaths = new List<PrivateFontPath>() { new PrivateFontPath("DeeDeeFlowers",@"D:\DeeDeeFlowers.ttf") } }; //Make use of the font. txtRange.CharacterFormat.FontName = "DeeDeeFlowers"; document.SaveToFile("result.pdf", toPdf); System.Diagnostics.Process.Start("result.pdf");