笔记:简要介绍WPF中FormattedText是什么,主要有什么功能

一、目的:简要介绍WPF中FormattedText是什么,主要有什么功能

FormattedText 是 WPF中的一个类,位于 System.Windows.Media 命名空间中。它用于创建和管理格式化的文本,这些文本可以包含不同的字体、大小、颜色和其他文本属性。FormattedText 类提供了一种灵活的方法来处理复杂的文本布局和渲染。

二、主要功能

1. 文本内容:

• 可以设置和获取文本内容。

2. 字体属性:

• 可以设置字体系列、字体大小、字体样式(如粗体、斜体)等。

3. 文本颜色:

• 可以设置文本的前景色(颜色)。

4. 文本对齐:

• 可以设置文本的对齐方式,如左对齐、右对齐、居中对齐等。

5. 文本装饰:

• 可以添加文本装饰,如下划线、删除线等。

6. 文本测量:

• 可以测量文本的宽度和高度,以便在布局中使用。

三、环境

.NET7+ VS2022

四、示例

以下是一个简单的示例,展示如何使用 FormattedText 类来创建和绘制格式化的文本:

cs 复制代码
using System.Windows;
using System.Windows.Media;

public void DrawFormattedText(DrawingContext drawingContext)
{
    FormattedText formattedText = new FormattedText(
        "Hello, WPF!",
        System.Globalization.CultureInfo.InvariantCulture,
        FlowDirection.LeftToRight,
        new Typeface("Verdana"),
        32,
        Brushes.Black
    );

    formattedText.TextAlignment = TextAlignment.Center;
    formattedText.SetFontWeight(FontWeights.Bold);
    formattedText.SetFontStyle(FontStyles.Italic);
    formattedText.SetForegroundBrush(Brushes.Blue);

    Point origin = new Point(100, 100);
    drawingContext.DrawText(formattedText, origin);
}

在这个示例中,我们创建了一个 FormattedText 对象,并设置了文本内容、字体、大小、颜色和对齐方式。然后,我们使用 DrawingContext 的 DrawText 方法将文本绘制到指定的起点位置。

总结

FormattedText 类在 WPF 中提供了强大的文本格式化和渲染功能,使得开发者可以轻松地创建复杂的文本布局和样式。

需要了解的知识点

FormattedText 类 (System.Windows.Media) | Microsoft Learn

DrawingContext Class (System.Windows.Media) | Microsoft Learn

System.Windows.Controls 命名空间 | Microsoft Learn

控件库 - WPF .NET Framework | Microsoft Learn

WPF 介绍 | Microsoft Learn

XAML概述 - WPF .NET | Microsoft Learn

Windows Presentation Foundation 简介 - WPF .NET | Microsoft Learn

使用 Visual Studio 创建新应用教程 - WPF .NET | Microsoft Learn

了解更多

适用于 .NET 8 的 WPF 的新增功能 - WPF .NET | Microsoft Learn

适用于 .NET 7 的 WPF 的新增功能 - WPF .NET | Microsoft Learn

System.Windows.Controls 命名空间 | Microsoft Learn

Reference Source

Sysinternals - Sysinternals | Microsoft Learn

Windows app development documentation - Windows apps | Microsoft Learn

欢迎使用 Expression Blend | Microsoft Learn

https://learn.microsoft.com/zh-cn/dotnet/desktop/wpf/?view=netdesktop-7.0&WT.mc_id=MVP_380318

https://github.com/HeBianGu

HeBianGu的个人空间-HeBianGu个人主页-哔哩哔哩视频

相关推荐
咔叽布吉1 小时前
【论文阅读笔记】CamoFormer: Masked Separable Attention for Camouflaged Object Detection
论文阅读·笔记·目标检测
johnny2331 小时前
《大模型应用开发极简入门》笔记
笔记·chatgpt
亦枫Leonlew1 小时前
微积分复习笔记 Calculus Volume 1 - 4.7 Applied Optimization Problems
笔记·数学·微积分·1024程序员节
小肥象不是小飞象1 小时前
(六千字心得笔记)零基础C语言入门第八课——函数(上)
c语言·开发语言·笔记·1024程序员节
星LZX1 小时前
WireShark入门学习笔记
笔记·学习·wireshark
冷眼Σ(-᷅_-᷄๑)2 小时前
WPF缩放动画和平移动画叠加后会发生什么?
wpf·动画
努力变厉害的小超超3 小时前
ArkTS中的组件基础、状态管理、样式处理、class语法以及界面渲染
笔记·鸿蒙
△曉風殘月〆4 小时前
WPF MVVM入门系列教程(二、依赖属性)
c#·wpf·mvvm
逐·風6 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
aloha_7897 小时前
从零记录搭建一个干净的mybatis环境
java·笔记·spring·spring cloud·maven·mybatis·springboot