2

我们通过传递泰米尔语文本(一种印度语言)在我们的 C# 应用程序中创建 pdf 文件。所以,我已经为我的泰米尔语字体安装了 AVVAIYAR.TTF(一种泰米尔语字体)字体。但是当我运行下面提到的pgm,创建的 pdf 文件不包含任何泰米尔语字体显示。它显示空行而不是泰米尔语文本...

C#代码:

Document document = new Document();
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(@"C:\pdfout.pdf", FileMode.Create));
document.Open();

PdfContentByte pcb = writer.DirectContent;
Font ft = new Font();
FontFactory.Register(@"C:\WINDOWS\Fonts\AVVAIYAR.TTF", "AVVAIYAR");
ft = FontFactory.GetFont("AVVAIYAR");

Paragraph pr1 = new Paragraph("இது முதல் பேரா", ft);
Paragraph pr2 = new Paragraph("This is a Sub Paragraph");
Paragraph pr3 = new Paragraph("This is the Second Paragraph");

document.Add(pr1);
document.Add(pr2);
document.Add(pr3);
document.Close();

我的输出pdf文件是:

<blank line>
This is a Sub Paragraph
This is the Second Paragraph

而且我还必须支持更多的印度语言来创建 PDF 文件。

4

3 回答 3

1

你能试试下面的代码片段吗?

string fontpath = Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\AVVAIYAR.TTF";
BaseFont basefont = BaseFont.CreateFont(fontpath, BaseFont.IDENTITY_H, true);
Font AVVAIYARFont = new iTextSharp.text.Font(basefont, 24, iTextSharp.text.Font.NORMAL, iTextSharp.text.Color.BLUE); /*For test color blue is placed with some foramtting.*/

Paragraph pr1 = new Paragraph("இது முதல் பேரா", AVVAIYARFont);

这应该工作...

一个开箱即用的想法,iText 目前还没有完全支持所有印度语言......看到这里他们说他们没有足够的志愿者来支持这一点。

于 2012-09-18T06:13:08.850 回答
1

我已经引用了 ARIALUNI.TTF。我试过这样,

string fontpath = Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\ARIALUNI.TTF"; 
BaseFont basefont = BaseFont.CreateFont(fontpath, BaseFont.IDENTITY_H, true);
Font font = new iTextSharp.text.Font(basefont, 24, iTextSharp.text.Font.NORMAL, iTextSharp.text.Color.BLUE);
Paragraph pr1 = new Paragraph("இது முதல் பேரா", AVVAIYARFont);

所以,现在泰米尔语字体显示在pdf文件中。但是简单的拼写错误......所以我正在阅读这个问题......

于 2012-09-21T07:11:13.020 回答
1

进行1:

第 1 步:转到http://software.nhm.in/services/converter网站

step2:粘贴这个词படிவம்-டி ஊதியம் சீட்டு /விடுப்பு அட்டை</p>

step3:1.将第一个下拉列表更改为 Unicode ,2.将第二个下拉列表更改为 TAB

step5:点击按钮转换器

step6.text 将被对齐。

步骤 7:主要过程从听到开始

1.将第二个下拉菜单更改为 TSCI 并单击转换。(不要惊慌,不会存在任何更改)

2.现在将第一个下拉菜单自动更改为 Unicode,泰米尔语文本将更改为“ÀÊÅõ-Ê °¾¢Âõ º£ðÎ /Å¢ÎôÒ «ð¨¼”;

3.复制内容并将其放在记事本中。

过程2:

1.首先下载TSC-Sri.ttf( http://www.eaglefonts.com/download.php?action=zip&image_id=129859 )

2.保存或移动到c:\Windows\fonts

3.最后在c#程序中粘贴下面的代码

     string fontpath = Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\TSC-Sri.ttf";
    BaseFont basefont = BaseFont.CreateFont(fontpath, BaseFont.IDENTITY_H, true);
    iTextSharp.text.Font font = new iTextSharp.text.Font(basefont, 24, iTextSharp.text.Font.NORMAL, iTextSharp.text.BaseColor.BLUE);
    Paragraph pr1 = new Paragraph("ÀÊÅõ-Ê °¾¢Âõ º£ðÎ /Å¢ÎôÒ «ð¨¼ ", font);

4.运行 itextsharp pdf 程序输出为例外 100% 工作。

于 2016-02-25T03:53:29.250 回答