多德报告iTextSharp土耳其语字符
本文关键字:土耳其语 字符 iTextSharp 报告 | 更新日期: 2023-09-27 18:28:34
我正在使用codeplex doddlereport项目来报告我的linq查询。它很简单而且非常成功。但对我来说只有一个问题。当我向excel报告时,html或csv文件的土耳其字符似乎还可以。但当我试图将查询导出到隐藏了doddlerreport.itextsharp土耳其字符的pdf时。隐藏的字符是("伊,ı,Ş,ş,'',ğ,Ö,ö,ç,Ç,ü,Ü")。任何人使用doddlereport并导出到带有土耳其字符的pdf帮助我如何成功?
或者我如何更改pdf文件的doddlereport字体系列?可以为我提供解决方案。
您需要更改的ConvertStyleToFont
方法https://doddlereport.codeplex.com/SourceControl/latest#src/DoddleReport.iTextSharp/PdfReportWriter.cs文件以支持Identity_H编码(Unicode编码)。更多信息点击这里
using DoddleReport;
using iTextSharp.text;
using iTextSharp.text.pdf;
using Font = iTextSharp.text.Font;
namespace Test
{
public class PdfReportWriter // …
{
public static Font ConvertStyleToFont(ReportStyle reportStyle, string fontFamily)
{
var style = Font.NORMAL;
if (reportStyle.Underline)
{
style = Font.UNDERLINE;
}
else if (reportStyle.Bold || reportStyle.Italic)
{
if (reportStyle.Bold && reportStyle.Italic)
{
style = Font.BOLDITALIC;
}
else if (reportStyle.Bold)
{
style = Font.BOLD;
}
else
{
style = Font.ITALIC;
}
}
// todo: to use this method you need to register your fonts at the beginning of the report
// FontFactory.Register(@"c:'windows'fonts'myfont.ttf");
return FontFactory.GetFont(
fontFamily, BaseFont.IDENTITY_H, BaseFont.EMBEDDED,
reportStyle.FontSize, style,
new BaseColor(reportStyle.ForeColor.R, reportStyle.ForeColor.G, reportStyle.ForeColor.B));
}
}
}
或者你可以试试http://pdfreport.codeplex.com