5

我正在开发一个 Vista/Win7 桌面小工具,它使用顶部带有( docg:background ) 的半透明( doc ) 区域。我正在通过(doc)添加文本,这一切都按预期工作。g:textaddTextObject

但是,我不知道如何将该文本设置为粗体样式。似乎没有办法直接通过我可以看到的公开属性来执行此操作,并且在这种情况下我不能使用常规文本 + CSS,因为该文本被放置在g:background对象上。

我也尝试过直接指定粗体字体,例如Arial Bold(doesn't work) 而不是Arial(works)。

那么如何做到这一点呢?

编辑:我已经尝试font-weight:bold为我的文本的主体和g:background对象设置;没运气。

4

1 回答 1

0

请参阅Jonathan Abbott 的翻转日历。他的代码通常都有很好的注释,所以也许你可以从中得到一些想法。

编辑
我的信息来源来自早期的 Vista Beta 2,这是 MS 的官方说法。我还发现以下对 MSDN 论坛上有关 Flip Calendar 小工具本身的主题的回复:

http://social.msdn.microsoft.com/Forums/en-US/sidebargadfetdevelopment/thread/841e9d5e-32e9-453f-bd0e-dc5a4e607c33/

该小工具具有在当月日期设置粗体字体的选项(ag:text 对象),但仔细检查后它不起作用。对于那个很抱歉。众所周知,MS 家伙在一个或多个场合也是错误的。老实说,我不使用 g:text 对象。

这意味着您唯一的(嗯,非 activex 路由)选项是 VML 文本,它在布局上提供了很大的灵活性。但是,您必须将其放置在小工具的完全不透明区域上,这可能是您首先要使用 addTextObject 的原因。 Gary Beene 的网站在我刚开始的时候确实帮助了我,但它没有详细介绍v:textbox 元素v:textpath 元素,尽管 MSDN 文档对这些有足够的详细信息。

如果您需要将文本放置在小工具的非完全不透明区域,那么您仍然可以采用 VML 路线并将图像放置在充当阴影的文本后面,从完全不透明开始逐渐变为完全透明。这就是微软在启用 aero 的情况下在窗口标题栏中处理文本的方式。
或者,您可以创建一个 ActiveXObject,以您想要的字体绘制您需要的文本,并将图像保存到小工具文件夹中的临时文件中。然后将其设置为 addImageObject 的 src。我在一个小工具中做过类似的事情,它的速度足够快,不会被注意到。您还可以设置最小/最大尺寸,因此缩小/拉伸以适应变得轻而易举。

于 2010-01-03T17:45:21.443 回答