必威体育Betway必威体育官网
当前位置:首页 > IT技术

WPF中的文字修饰——上划线,中划线,基线与下划线

时间:2019-09-13 09:42:15来源:IT技术作者:seo实验室小编阅读:64次「手机版」
 

划线

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

我们知道,文字的修饰包括:空心字、立体字、划线字、阴影字、加粗、倾斜等。这里只说划线字的修饰方式,按划线的位置,我们可将之分为:上划线、中划线、基线与下划线。如图:

从上至下,分别为上划线(Overline),中划线(StrikeThrough),基线(Baseline)和下划线(Underline)。

如何实现?

(1)XAML代码

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >

<TextBlock TextDecorations="Strikethrough" FontSize="72" FontFamily="Arial">A</TextBlock>

</Page>

这里TextDecorations属性可以设置为:OverLine, Strikethrough, Baseline, UnderlineNone,如果没有设置TextDecorations属性,则默认为None,即不带划线修饰。

(2)使用C#代码:

private void SetDefaultStrikethrough()

{

textBlock1.TextDecorations = TextDecorations.Strikethrough;

}

(为了简洁,这里只列出相关的关键代码,其他代码未用C#列出。textBlock1为TextBlock的名称,在XAML中使用 x:Name="textBlock1"形式标记)

如果要更复杂点的效果,比如需要设置划线的颜色、线粗等,如下图:

文字的特别下划线效果制作

如何制作类似效果呢?

方法是:设置TextBlock的TextDecorations属性,再对TextDecoration的Pen属性进行设置。

如下XAML代码:

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >

<Canvas>

<TextBlock FontSize="84" FontFamily="Arial Black" Margin="0,0">

<TextBlock.TextDecorations>

<TextDecoration Penoffset="10" PenOffsetUnit="Pixel" PenThicknessUnit="Pixel">

<TextDecoration.Pen>

<Pen Thickness="5">

<Pen.Brush>

<LinearGradientBrush Opacity="0.8"StartPoint="0,0.5" EndPoint="1,0.5">

<LinearGradientBrush.GradientStops>

<GradientStop color="Yellow" Offset="0" />

<GradientStop Color="Red" Offset="1" />

</LinearGradientBrush.GradientStops>

</LinearGradientBrush>

</Pen.Brush>

<Pen.DashStyle>

<DashStyle Dashes="1,2,3"/>

</Pen.DashStyle>

</Pen>

</TextDecoration.Pen>

</TextDecoration>

</TextBlock.TextDecorations>

GOOD

</TextBlock>

</Canvas>

</Page>

C#关键代码:

private void SetLinearGradientUnderline()

{

TextDecoration myUnderline = new TextDecoration();

Pen myPen = new Pen();

myPen.Brush = new LinearGradientBrush(Colors.Yellow, Colors.Red, new Point(0, 0.5), new Point(1, 0.5));

myPen.Brush.Opacity = 0.8;

myPen.Thickness = 5;

myPen.DashStyle = DashStyles.Dash;

myUnderline.Pen = myPen;

myUnderline.PenThicknessUnit = TextDecorationUnit.Fontrecommended;

TextDecorationCollection myCollection = new TextDecorationCollection();

myCollection.Add(myUnderline);

textBlockGood.TextDecorations = myCollection;

}

引申问题:

可不可以同时画上划线、中划线和下划线?比如:可不可以画如下图所示的文武线呢?

文字的文武线

答案是:可以!留给有兴趣的朋友去思考吧。

相关阅读:Typography in windows Presentation Foundation http://msdn2.microsoft.com/en-us/library/ms742190.aspx

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

相关阅读

WPS文字设置奇偶页眉、下划线的方法步骤

这个问题困扰了我一天,问了无数人都不会,最后还是自己无意间网上查到一个点给了我灵感。本文将解决以下问题:1、页眉添加下划线、设

Word用制表位来制作下划线,真的太好用了!

在制作合同和毕业论文封面时,我们都会输入大量下划线。而这些下划线都很难对齐,有什么好办法能够快速有效的添加下划线呢?在前面的课

驼峰命名法和数据库下划线问题和一个mybatis的源码解

参考:   https://segmentfault.com/a/1190000010240142 驼峰式命名开关,数据库列和字段名全一致。 开启 后不论多少下划线都

去掉a标签下划线

a{    text-decoration:none; //去掉默认下滑线   color:#333; //设置默认颜色   }a:hover{   text-decoration:none;//

Word调整文字和下划线的间隔

工作环境(蓝色粗体字为特别注意内容) 1,开发环境:Microsoft word 2007 2,参考文献:https://blog.csdn.net/yiluyangguang1234/article

分享到:

栏目导航

推荐阅读

热门阅读