CoreGraphics - 特殊字符未正确绘制
我正在使用 CoreGraphics 绘制图像,但无法正确显示欧元符号。
但是,美元符号工作正常。我尝试过使用不同的字体,但遇到同样的问题,我现在的猜测是存在某种编码问题,但我仍然无法使其正常工作。
这是我进行绘图的代码:
context.SelectFont (font.FamilyName, font.PointSize, CGTextEncoding.MacRoman);
context.SetFillColorWithColor (color.CGColor);
context.SetTextDrawingMode (CGTextDrawingMode.Fill);
context.SetShouldAntialias (antiAlias);
context.ShowTextAtPoint (position.X, position.Y,text);
任何可以为我指明正确方向的内容都将受到赞赏。
I am drawing an image using CoreGraphics and can't get the €-sign displaying correctly..
The dollar sign works fine, however. I have tried it using different fonts but same problem, my guess now is that there is an encoding problem of some sort, but I still cant get it working correctly.
Here is my code that does the drawing:
context.SelectFont (font.FamilyName, font.PointSize, CGTextEncoding.MacRoman);
context.SetFillColorWithColor (color.CGColor);
context.SetTextDrawingMode (CGTextDrawingMode.Fill);
context.SetShouldAntialias (antiAlias);
context.ShowTextAtPoint (position.X, position.Y,text);
Anything that can point me in the right direction is appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
“欧元”符号比其他字符更新一些,但是,即使在 MacRoman 中定义,我也无法让 CoreGraphics 使用 ShowTextAtPoint 正确显示它(我怀疑存在编码问题)。
但是,如果您使用 UIKit 而不是 CoreGraphics,它可以正常工作,请参阅问答:
示例代码CGBitmapContext 中没有德语变音符号。
The "euro" sign is a bit more recent than other characters but, even if defined in MacRoman, I could not get CoreGraphics to display it properly with ShowTextAtPoint (I suspect an encoding issue).
However it works fine if you use UIKit instead of CoreGraphics, see Q&A:
no german umlaute in CGBitmapContext for the sample code.