我想改变单词中每个字母的颜色。但是当我使用
时<TextBlock>
<Run Foreground="Red" Text="F"/>
<Run Foreground="Yellow" Text="o"/>
<Run Foreground="Lime" Text="o"/>
<Run Foreground="Magenta" Text="b"/>
<Run Foreground="Blue" Text="a"/>
<Run Foreground="Red" Text="r"/>
<TextBlock>
<TextBlock>
<Span Foreground="Red">F</Span>
<Span Foreground="Yellow">o</Span>
<Span Foreground="Lime">o</Span>
<Span Foreground="Magenta">b</Span>
<Span Foreground="Blue">a</Span>
<Span Foreground="Red">r</Span>
</TextBlock>
它包含运行应用程序时字母之间的间距,而不是Visual Studio 2012的编辑器中的间距。我尝试设置fontStretch但在这种情况下似乎没用。有人能告诉我如何在不获取间距的情况下单独为每个字母着色吗? 提前谢谢。
答案 0 :(得分:4)
由于SPAN块上的样式,它正在做空间。它是display:inline-block。
如果要删除它,可以执行以下操作:
<TextBlock>
<Span Foreground="Red">F</Span
><Span Foreground="Yellow">o</Span
><Span Foreground="Lime">o</Span
><Span Foreground="Magenta">b</Span
><Span Foreground="Blue">a</Span
><Span Foreground="Red">r</Span>
</TextBlock>
这只是一个小技巧; - )
希望这有帮助!
编辑:我认为你也可以做一个负余量:)
EDIT2:拜托,当你做错事时不要编辑我的代码,谢谢! (&gt;&lt; span是技巧)