我做了我的第一个Silverlight 2应用程序,令人烦恼的是文本字体看起来模糊或粗糙。
你可以在这里看到:
alt text http://img516.imageshack.us/img516/1444/blurryfonthp3.png
这是SL的“功能”还是我做错了什么?
我知道SL2使用了一些奇特的技术来使应用程序设备独立,但这种字体是不可接受的(我正在使用带有Aero的Vista)。
红利问题:SL2中是否有参考商业申请?
致以最诚挚的问候,
托马斯
答案 0 :(得分:5)
我肯定说它看起来很模糊 - 有点像你在OSX或Linux上查看它。我也同意这是不可接受的 - 当然,与WPF一起,字体渲染也很糟糕。现在,虽然微软一直承诺为.NET 4版本修复此问题,但事实是,我们当中许多人今天需要发布/销售这些东西,这导致了以下选择:
我猜我想说的是这样的:有是的为WPF / WinForms的解决方案(是的,WinForms的ClearTypeGridFit
是不是最好的算法要么),但有不是 Silverlight的解决方案。然而。我希望有人能证明我错了。
答案 1 :(得分:4)
抗锯齿只是Silverlight的一个功能;不会说它看起来很模糊,我非常喜欢它。
参考方面,我认为我见过的应用程序示例并不完整,但如果您使用IPropertyNotifyChanged / ObservableCollection查看Model-View-ViewModel并浏览Jesse Liberty的博客, Shawn Wildermuth他们有大量关于数据传输和多页面应用程序的信息 - 这两者都需要您做一个“业务应用程序”
答案 2 :(得分:3)
WPF和Silverlight上的ClearType字体呈现实现是以这种方式设计的。文字动画流畅,但看起来很模糊。
答案 3 :(得分:0)
我会用完另一个答案位,因为这里有很多话要说。
我希望我可以提供这些资源的链接:)我的意思是,那里没有这样的东西,而且我怀疑那些做过它的人会得到他们如何把它拉下来的源代码。这主要是因为所需的大量工作令人难以置信。
这是我如何去做的。首先,我发现了理想的(或几乎)类似ClearType的算法 - 专门为我工作的东西(没有提示,请注意,但考虑到性能成本,我无法打扰)。然后,我将它连接到.NET,这样我至少可以使用文本呈现位图(我有一个Silverlight test page显示它在运行中)。因此,我将算法微调到可以用来代替例如标签的程度。我的应用程序充满了标签,所以我做了那些。 (文本框可能比你想象的要复杂得多)。就是这样。
正如您从链接中看到的那样,也许可以在Silverlight中获得良好的ClearType样式文本。我只花了2天时间连接一个Web服务来渲染文本,而且速度相当慢,但我认为对于像标签这样的东西,没有理由为什么这样的东西 - 尤其是缓存和其他技巧 - 无法完成。