0
var htmlarraylist = HTMLWorker.ParseToList(new StringReader(htmlText), styles);
document.Open();

BaseFont Vn_Helvetica = BaseFont.CreateFont(@"C:\Windows\Fonts\arial.ttf", 
"Identity-H", BaseFont.EMBEDDED);
Font fontNormal = new Font(Vn_Helvetica, 12, Font.NORMAL);


                foreach (var t in htmlarraylist)
                {
                    if (t is PdfPTable)
                    {                          
                       //how set fontNormal all text from Pdfptable ?
                    }

                    document.Add((IElement)t);

                }

                    document.Close();

有人能帮助我吗

4

2 回答 2

3

请尝试通过将字体设置为PdfPTable.DefaultCell propertyforeach loop

Example:
t.DefaultCell.Phrase = new Phrase() { Font = fontNormal };
于 2012-07-20T10:45:21.853 回答
0

我尝试在 pdf 模板中设置字体系列。并显示以下错误

“BaseFont”不包含“Cambria”的定义

请建议我...谢谢

public void abcd()
        {
            try
            {
                string UniqueNumber = Request.QueryString["UniqueNumber"];
                string strFileName = UniqueNumber;
                string strFileExtension = ".pdf";
                string strContentType = FileManager.FileContentType_application_pdf;
                string strExportData = string.Empty;
                Document pdfDoc = new Document();
                HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
                var output = new MemoryStream();
                BaseFont bfTimes = BaseFont.CreateFont(BaseFont.Cambria, BaseFont.CP1252, false);
                //Font ChronicleFont = new Font(bfTimes, 26f);
                StringWriter sw = new StringWriter();
                HtmlTextWriter htw = new HtmlTextWriter(sw);
                StringReader sr;
                sr = new StringReader(Convert.ToString(ExportData.UserDetails(UniqueNumber)));
                PdfWriter.GetInstance(pdfDoc, output);
                pdfDoc.Open();
                htmlparser.Parse(sr);
                pdfDoc.Close();
                strFileName = strFileName.Replace(" - ", "-").Replace(" ", "-").Replace("--", "-");
                Response.ClearContent();
                Response.Buffer = true;
                Response.AddHeader("content-disposition", string.Format("attachment; filename={0}{1}", strFileName, strFileExtension));
                Response.ContentType = strContentType;
                Response.Charset = "";
                Response.BinaryWrite(output.ToArray());
                Response.Flush();
                Response.End();

            }
            catch (Exception ex)
            {
                //

            }
        }
于 2019-11-04T10:11:58.733 回答