Avi*_*ngh 4 itextsharp nopcommerce asp.net-mvc-3 itextpdf
我想在iTextPDf中显示Special Character India Rupee Symbol,
我的代码:
Font fontRupee = FontFactory.GetFont("Arial", "?", true, 12);
Chunk chunkRupee = new Chunk(" ? 5410", font3);
Run Code Online (Sandbox Code Playgroud)
在源代码中存储Unicode字符(例如₹)绝不是一个好主意.如果你这样做,很多事情都可能出错:
从您的代码示例中可以看出,您不熟悉称为编码的概念.创建Font对象时,将卢比符号作为编码传递.
实现你想要的正确方法如下:
BaseFont bf =
BaseFont.CreateFont("c:/windows/fonts/arial.ttf",
BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font font = new Font(bf, 12);
Chunk chunkRupee = new Chunk(" \u20B9 5410", font3);
Run Code Online (Sandbox Code Playgroud)
请注意,卢比符号有两种可能的Unicode值(源维基百科):\ u20B9是您正在寻找的值; 替代值是\ u20A8(看起来像这样:₨).
我用arialuni.ttf和arial.ttf测试了这个.令人惊讶的是MS Arial Unicode只能渲染₨; 它无法渲染₹.普通arial能够渲染两个符号.检查您使用的字体是否知道如何绘制符号非常重要.如果没有,则页面上不会显示任何内容.
| 归档时间: |
|
| 查看次数: |
3264 次 |
| 最近记录: |