开心就好的代码人生

用伪代码书写我的人生

   博客堂 :: 首页 :: 联系 :: RSS 2.0 ::
随笔 - 384, 评论 - 6970, 引用 - 242

导航

关于

贴子以"现状"提供且没有任何担保也没有授予任何权利。
在TechED 2006上的演讲




开心就好

请见谅,我无法公布我的Windows Live ID,而且工作很忙,没有多余时间进行闲聊。

每月存档

最新留言

广告

 

很多朋友可能已经开始尝试使用WPF/E来在网络上制作一些动画,在其中可能遇到了一些问题。尤其是当前公开版本还是CTP,所以有一些东西在互联网中得不到解答,本人不才,准备通过本博客系列为大家进行答疑解惑。(由于WPF/E的正式名称即将公布,所以在正式名称公布后,本系列教程也会进行更新)

1. WPF/E是否可以支持嵌入式字体?

问题描述:在设计HTML网页的时候,我们会碰到很多类似的问题。一个网页中的字体在设计期非常好看,但当我们发布之后,却发现用户体验惨不忍睹,这其中最大的原因就是字体的不同。比如设计师使用Windows Vista来进行设计,使用了微软雅黑字体。而此种字体在早期Windows版本以及其它操作系统当中并不存在,浏览器会按照自己的方式来使用替代字体(或者CSS中指定的替代字体),从而导致用户体验非常差。如何解决这种问题呢?

解答:我们可以使用FontUri这种方式来嵌入字体,从而解决此种问题,根据当前版本的SDK文档中,我们可以看到,FontUri属性可以应用于Glyphs标签。

示例:  把字体从你的Windows/Fonts目录中拷出(或者从其它地方获得),拷贝到您的WPF/E相应的目录当中,然后在您的XAML语句中按照以下方式进行撰写:

  <Canvas x:Name="GlyphDisplayCanvas" Canvas.Left="0" Canvas.Top="0" >

    <Glyphs x:Name="GlyphDisplay" Fill="Black" FontUri="./simhei.ttf" FontRenderingEmSize="48" UnicodeString="Hello, WPF/E?" />

</Canvas>

2. WPF/E如何支持中文显示?

问题描述:在前段时间我的文章留言中,有一位朋友询问如何支持中文。可能很多朋友已经注意到了,在TextBlock或者其它元素当中,如果输入中文,那么在最终显示效果当中,您可能会注意到,这些汉字全部显示为了一个规矩的方框,而不是我们想像中的汉字,那么如何解决此问题呢?

解答:的确在当前版本的WPF/E应用程序当中,很多元素其实不支持中文或者更准确地说,是双字节语言(比如韩文以及日文),但解决也比较简单,查看前面的问题解答,您或者已经得到了解答,即使用UnicodeString方式对其进行设置。当然,如果您查看SDK文档也会发现,这个UnicodeString也只能应用于Glyphs。

示例:同上面问题的解答一样,只需要把应用程序代码中的UnicodeString替换为中文即可,如下:

<Canvas x:Name="GlyphDisplayCanvas" Canvas.Left="0" Canvas.Top="0" >

    <Glyphs x:Name="GlyphDisplay" Fill="Black" FontUri="./simhei.ttf" FontRenderingEmSize="48" UnicodeString="生日快乐,开心就好" />

</Canvas>

 

以上问题解答得益于公司同事Laurence Moroney(其太太是华人,前段时间刚访问过中国)

打印 | 张贴于 2007-04-06 09:56:00

留言反馈

#Silverlight为什么不支持中文?有没有别的途径可以解决这个问题呢? 编辑
来自开心就好的blog http://www.joycode.com/joy/ 问题描述:我相信凡是准备采用Silverlight技术或者正在使用Silverlight构建应用程序的开发者,很多人...
2007-09-16 20:13:00 | [匿名用户:吴博]
#回复: WPF/E开发基础答疑(1) 编辑
一个近乎变态的解决方法,参见:
Displaying unicode in silverlight:
http://wpf-e.spaces.live.com/blog/cns!2B248D261D0E0035!122.entry

但此解决方法远比下载好几M的字库要强.
2007-08-07 21:30:00 | [匿名用户:阿山Net]
#Silverlight点亮你世界 编辑
相信很多朋友对于Silverlight已经非常熟悉了。基于种种原因,微软在原来并没有重视设计人员/美工这一块的业务,而把重心放在了开发人员/Developer这一块,所以,微软一直对于Visual Studio/.NET平台非常重视,投入了大量精力,使其功能不断丰富,性能不断提高。从去年开始,微软开始重视Designer市场,面向Designer开发了Expression设计套件,包括Expression
2007-06-17 10:14:00 | [匿名用户:joycode]
#Silverlight开发基础答疑(5) 编辑
很好玩的是看到了Silverlight目前在国内受到了很多开发者的热情拥护,“ 自由、创新、研究、探索 ”先生在Google Groups里面创建了一个 讨论组 ,开张不到一个月,就有176名成员参与
2007-05-28 22:11:00 | [匿名用户:Joycode@Ab110.com]
#WPF/E如何支持中文显示? 编辑
你好,能给个完整的支持中文的.xaml文件吗?

wapasp@sina.com 将不胜感激!
2007-04-17 15:28:00 | [匿名用户:上午十时]
#WPF/E的颜色填充问题,求叫。 编辑
上次中文不成,求教了,这次又发现一个问题哦。。。
试图判断sender的Fill颜色然后改变,代码如下:

if(sender.Fill.Color =="4294967295")
{
sender.Fill="Gold";
}
else{
sender.Fill="White";
}


为什么只能单向的,4294967295就是white,但是用White就是不行,用#FFFFFFFF也不成。。。。虽然功能最终没问题,但是看着那串数字很不爽。

2007-04-11 20:00:00 | [匿名用户:loadstar]
#回复: WPF/E开发基础答疑(1) 编辑
Nice work HongChao -- it looks great, and thanks for the reference!

I am working on coupling ASP.NET and WPF/E for an MSDN white paper that shows full text input (with IME) and output (with WPF/E) in a rich web context. Watch my blog for more details! :)

好的工作HongChao -- 这看起来伟大, 和感谢作为参考! 我从事联结ASP.NET 和WPF/E 为显示全文输入的MSDN 白皮书(与IME) 并且产品(与WPF/E) 在富有的网上下文。观看我的blog 以获得详情! :)

Laurence
2007-04-07 01:20:00 | [匿名用户:Laurence Moroney]
#Chinese, and other International Text in WPF/E 编辑
For our friends in the international community, text rendering is possible by means of the Glyph tag.
2007-04-07 01:14:00 | [匿名用户:Web.Next]
#回复: WPF/E开发基础答疑(1) 编辑
照着做试试,看行不行。
2007-04-06 15:15:00 | [匿名用户:糖尿病]
#回复: WPF/E开发基础答疑(1) 编辑
据说4月底5月初的版本变化比较大.
2007-04-06 14:22:00 | [匿名用户:234]
#回复: WPF/E开发基础答疑(1) 编辑
三十一岁生日快乐,开心!
2007-04-06 14:04:00 | [匿名用户:yaosansi]
#回复: WPF/E开发基础答疑(1) 编辑
生日快乐,开心!
2007-04-06 14:03:00 | [匿名用户:yaosansi]
#回复: WPF/E开发基础答疑(1) 编辑
第一个问题,如果使用嵌入字体的方式把微软雅黑嵌入网页,那么用户需要等待多久才能打开网页?微软雅黑可是15M的大家伙啊。还是说WPF/E有和Flash一样的只嵌入使用到的字符的功能?
2007-04-06 13:44:00 | [匿名用户:windie]
#回复: WPF/E开发基础答疑(1) 编辑
先顶一下~

我其实是来问问题的。为什么我在joycode回复时,第一次总是提示“验证码输入错误”?如果说偶然输错,不应该次次都这样啊……
不知道别人是否也遇到这个问题。

还有,输入框的字体是否可以调整一下,眼神不大好~
2007-04-06 13:26:00 | [匿名用户:AndersLiu]
#回复: WPF/E开发基础答疑(1) 编辑
可以选择UTF-8么
2007-04-06 12:17:00 | [匿名用户:helixapp]
#回复: WPF/E开发基础答疑(1) 编辑
另外,回复输入的内容怎么字这么小啊,几乎看不见,是我浏览器的问题吗?还是开心大哥blog样式的问题?
2007-04-06 10:08:00 | [匿名用户:星宿.net]
#回复: WPF/E开发基础答疑(1) 编辑
谢谢,昨天偶还碰到显示中文的问题,呵呵,今天开心大哥就解答了
如果要有个通过WPF/E和数据库进行交互的例子就更好了,哈哈(我是不是太贪心了 )
2007-04-06 10:06:00 | [匿名用户:星宿.net]

发表留言

标题
姓名
邮件
主页
留言