【WPF.NET开发】OpenType字体

这篇具有很好参考价值的文章主要介绍了【WPF.NET开发】OpenType字体。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文内容

  1. OpenType 字体格式
  2. 变量
  3. 大写字母
  4. 连字
  5. 花体
  6. 备用项
  7. 数字样式
  8. 版式类

本主题概述了 Windows Presentation Foundation (WPF) 中 OpenType 字体技术的一些主要功能。

1、OpenType 字体格式

OpenType 字体格式是 TrueType® 字体格式的扩展,增加了对 PostScript 字体数据的支持。 OpenType 字体格式由 Microsoft 和 Adobe Corporation 联合开发。 无论字体包含 TrueType 边框还是 CFF (PostScript) 边框,OpenType 字体和支持 OpenType 字体的操作系统服务都向用户提供一种简单的字体安装和使用方式。

OpenType 字体格式解决了以下开发人员挑战:

  • 更广泛的多平台支持。

  • 更出色的国际字符集支持。

  • 更优的字体数据保护。

  • 更小的文件大小,让字体发布更加高效。

  • 更广泛的高级版式控件支持。

 备注

Windows SDK 包含一组可用于 Windows Presentation Foundation (WPF) 应用程序的示例 OpenType 字体。 这些字体提供本主题余下部分所述的大多数功能。

高级版式扩展

高级版式表格(OpenType 布局表格)扩展了具有 TrueType 或 CFF 边框的字体的功能。 OpenType 布局字体包含一些其他信息,可扩展字体功能以支持高质量国际版式。 大多数 OpenType 字体仅体现全部可用 OpenType 功能的一部分。 OpenType 字体提供以下功能。

  • 字符与字形之间的丰富映射,可支持连字、定位格式、备用项以及其他字体替换功能。

  • 支持二维定位和字形附加。

  • 字体中包含的显式脚本和语言信息,使文本处理应用程序可相应调整其行为。

在 OpenType 规范的“字体文件表格”部分中对 OpenType 布局表格进行了更详细的介绍。

此概述的其余部分介绍了一些直观有趣的 OpenType 功能的广度和灵活性(这些功能由 Typography 对象的属性公开)。 

2、变量

变量用于呈现不同的版式风格,例如上标和下标。

上标和下标

通过 Variants 属性可以设置 OpenType 字体的上标和下标值。

以下文本显示 Palatino Linotype 字体的上标。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Palatino Linotype 字体的上标。

XAML复制

<Paragraph FontFamily="Palatino Linotype">
  2<Run Typography.Variants="Superscript">3</Run>
  14<Run Typography.Variants="Superscript">th</Run>
</Paragraph>

以下文本显示 Palatino Linotype 字体的下标。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Palatino Linotype 字体的下标。

XAML复制

<Paragraph FontFamily="Palatino Linotype">
  H<Run Typography.Variants="Subscript">2</Run>O
  Footnote<Run Typography.Variants="Subscript">4</Run>
</Paragraph>

上标和下标的修饰用法

也可使用上标和下标来营造混合大小写文本的修饰效果。 以下文本显示 Palatino Linotype 字体的上标和下标文本。 注意,大写字母不受影响。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义字体的上标和下标。

XAML复制

<Paragraph FontFamily="Palatino Linotype" Typography.Variants="Superscript">
  Chapter One
</Paragraph>
<Paragraph FontFamily="Palatino Linotype" Typography.Variants="Subscript">
  Chapter One
</Paragraph>

3、大写字母

大写字母是一组以大写样式字形呈现文本的版式形式。 通常情况下,当以全大写呈现文本时,字母之间的间距可能看起来很小,字母的权重和比例看起来会很大。 OpenType 支持多种大写字母的样式格式,包括小体大写字母、小号大写字母、标题和大写字母间距。 通过这些样式格式可控制大写字母的外观。

以下文本显示 Pescadero 字体的标准大写字母,其后接样式为“SmallCaps”和“AllSmallCaps”的字母。 本例中,对所有三个单词均使用相同的字体大小。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pescadero 字体的大写字母。 使用“SmallCaps”格式时会忽略任何前导大写字母。

XAML复制

<Paragraph FontFamily="Pescadero" FontSize="48">
  <Run>CAPITALS</Run>
  <Run Typography.Capitals="SmallCaps">Capitals</Run>
  <Run Typography.Capitals="AllSmallCaps">Capitals</Run>
</Paragraph>

标题大写字母

标题大写字母权重和比例更小,外观比普通大写字母更加雅致。 标题大写字母通常用于作为标题的大号字体中。 以下文本显示 Pescadero 字体的普通大写字母和标题大写字母。 请注意第二行文本的宽度更窄。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pescadero 字体的标题大写字母。

XAML复制

<Paragraph FontFamily="Pescadero">
  <Run Typography.Capitals="Titling">chapter one</Run>
</Paragraph>

大写字母间距

大写字母间距功能让你可以在使用全大写字母文本时提供更宽的间距。 大写字母通常设计为与小写字母混合使用。 大写字母和小写字母之间看起来比较美观的间距在使用全大写字母时可能会显得过紧。 以下文本显示 Pescadero 字体的普通间距和大写字母间距。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pescadero 字体的大写字母间距。

XAML复制

<Paragraph FontFamily="Pescadero">
  <Run Typography.CapitalSpacing="True">CHAPTER ONE</Run>
</Paragraph>

4、连字

连子是为使文本更具可读性或更加美观而由两个或更多字形形成的一个单一字形。 OpenType 字体支持四种类型的连字:

  • 标准连字。 旨在增强可读性。 标准连字包括“fi”、“fl”和“ff”。

  • 上下文连字。 旨在通过在组成连字的字符之间提供更好的联结行为来增强可读性。

  • 自由连字。 重在修饰性,并非专为可读性而设计。

  • 历史连字。 重在历史性,并非专为可读性而设计。

以下文本显示 Pericles 字体的标准连字字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pericles 字体的标准连字字形。

XAML复制

<Paragraph FontFamily="Pericles" Typography.StandardLigatures="True">
  <Run Typography.StylisticAlternates="1">FI</Run>
  <Run Typography.StylisticAlternates="1">FL</Run>
  <Run Typography.StylisticAlternates="1">TH</Run>
  <Run Typography.StylisticAlternates="1">TT</Run>
  <Run Typography.StylisticAlternates="1">TV</Run>
  <Run Typography.StylisticAlternates="1">TW</Run>
  <Run Typography.StylisticAlternates="1">TY</Run>
  <Run Typography.StylisticAlternates="1">VT</Run>
  <Run Typography.StylisticAlternates="1">WT</Run>
  <Run Typography.StylisticAlternates="1">YT</Run>
</Paragraph>

以下文本显示 Pericles 字体的自由连字字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pericles 字体的自由连字字形。

XAML复制

<Paragraph FontFamily="Pericles" Typography.DiscretionaryLigatures="True">
  <Run Typography.StylisticAlternates="1">CO</Run>
  <Run Typography.StylisticAlternates="1">LA</Run>
  <Run Typography.StylisticAlternates="1">LE</Run>
  <Run Typography.StylisticAlternates="1">LI</Run>
  <Run Typography.StylisticAlternates="1">LL</Run>
  <Run Typography.StylisticAlternates="1">LO</Run>
  <Run Typography.StylisticAlternates="1">LU</Run>
</Paragraph>

默认情况下,Windows Presentation Foundation (WPF) 中的 OpenType 字体启用标准连字。 例如,如果使用 Palatino Linotype 字体,则标准连字“fi”、“ff”和“fl”显示为组合字符字形。 请注意,每个标准连字的字符对之间彼此相连。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

但是,可禁用标准连字功能,从而使“ff”等标准连字显示为两个单独的字形,而不显示为一个组合字符字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性禁用 Palatino Linotype 字体的标准连字字形。

XAML复制

<!-- Set standard ligatures to false in order to disable feature. -->
<Paragraph Typography.StandardLigatures="False" FontFamily="Palatino Linotype" FontSize="72">
  fi ff fl
</Paragraph>

5、花体

花体是使用精美修饰的装饰性字形,通常与书法相关。 以下文本显示 Pescadero 字体的标准和花体字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

花体通常用作事件公告等简短文章中的修饰元素。 以下文本使用花体强调事件名称的大写字母。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义字体花体。

XAML复制

<Paragraph FontFamily="Pescadero" TextBlock.TextAlignment="Center">
  Wishing you a<LineBreak/>
  <Run Typography.StandardSwashes="1" FontSize="36">Happy New Year!</Run>
</Paragraph>

连接形式花体

花体字形的某些组合可能导致文本外观欠佳,例如相邻字母的下行处出现重叠。 通过连接形式花体,可使用能生成更佳外观的替代花体字形。 以下文本显示同一单词应用连接形式花体前后的外观。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pescadero 字体的连接形式花体。

XAML复制

<Paragraph FontFamily="Pescadero" Typography.StandardSwashes="1">
  Lyon <Run Typography.ContextualSwashes="1">L</Run>yon
</Paragraph>

6、备用项

备用项是可替代标准字形的字形。 OpenType 字体(例如以下示例中使用的 Pericles 字体)可包含用于塑造不同文本外观的备用字形。 以下文本显示 Pericles 字体的标准字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

Pericles OpenType 字体包含其他字形,可为标准自行集提供样式备用项。 以下文本显示样式备用字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pericles 字体的样式备用字形。

XAML复制

<Paragraph FontFamily="Pericles">
  <Run Typography.StylisticAlternates="1">A</Run>NCIENT
  GR<Run Typography.StylisticAlternates="1">EE</Run>K
  MYTH<Run Typography.StylisticAlternates="1">O</Run>LOGY
</Paragraph>

以下文本显示 Pericles 字体的几种其他样式备用字形。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何定义其他样式备用字形。

XAML复制

<Paragraph FontFamily="Pericles">
  <Run Typography.StylisticAlternates="1">A</Run>
  <Run Typography.StylisticAlternates="2">A</Run>
  <Run Typography.StylisticAlternates="3">A</Run>
  <Run Typography.StylisticAlternates="1">C</Run>
  <Run Typography.StylisticAlternates="1">E</Run>
  <Run Typography.StylisticAlternates="1">G</Run>
  <Run Typography.StylisticAlternates="1">O</Run>
  <Run Typography.StylisticAlternates="1">Q</Run>
  <Run Typography.StylisticAlternates="1">R</Run>
  <Run Typography.StylisticAlternates="2">R</Run>
  <Run Typography.StylisticAlternates="1">S</Run>
  <Run Typography.StylisticAlternates="1">Y</Run>
</Paragraph>

随机备用连接形式

随机备用连接形式为单个字符提供多种备用字形。 实现脚本类型字体时,此功能可通过使用一组随机选择的外观稍有差异的字形来模拟手写内容。 以下文本使用 Lindsey 字体的随机备用连接形式。 请注意字母“a”外观稍有变化

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Lindsey 字体的随机备用连接形式。

XAML复制

<TextBlock FontFamily="Lindsey">
  <Run Typography.ContextualAlternates="True">
    a banana in a cabana
  </Run>
</TextBlock>

历史形式

历史形式指过去常见的版式约定。 以下文本使用 Palatino Linotype 字体的一种历史字形形式显示短语“Boston, Massachusetts”。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Palatino Linotype 字体的历史形式。

XAML复制

<Paragraph FontFamily="Palatino Linotype">
  <Run Typography.HistoricalForms="True">Boston, Massachusetts</Run>
</Paragraph>

7、数字样式

OpenType 字体支持多种可用于文本中数值的功能。

分数

OpenType 字体支持多种分数样式,包括横式分数和竖式分数。

以下文本显示 Palatino Linotype 字体的分数样式。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Palatino Linotype 字体的分数样式。

XAML复制

<Paragraph FontFamily="Palatino Linotype" Typography.Fraction="Slashed">
  1/8 1/4 3/8 1/2 5/8 3/4 7/8
</Paragraph>
<Paragraph FontFamily="Palatino Linotype" Typography.Fraction="Stacked">
  1/8 1/4 3/8 1/2 5/8 3/4 7/8
</Paragraph>

旧样式数字

OpenType 字体支持旧样式数字格式。 此格式对于显示不再是标准样式的数字非常有用。 以下文本以 Palatino Linotype 字体的标准和旧样式数字格式显示 18 世纪日期。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下文本显示 Palatino Linotype 字体的标准数字,后跟旧样式数字。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Palatino Linotype 字体的旧样式数字。

XAML复制

<Paragraph FontFamily="Palatino Linotype">
  <Run Typography.NumeralStyle="Normal">1234567890</Run>
  <Run Typography.NumeralStyle="OldStyle">1234567890</Run>
</Paragraph>

比例数字和表格式数字

OpenType 字体支持比例数字和表格式数字功能,可在使用数字时控制宽度对齐。 比例数字将每个数字视为具有不同的宽度—“1”窄于“5”。 表格式数字被视为宽度相等的数字,因此它们可垂直对齐,从而增强财务类型信息的可读性。

以下文本使用 Miramonte 字体显示第一列中的两个表格式数字。 请注意数字“5”和“1”之间的宽度差异。 第二列显示相同的两个数值,并通过使用表格式数字功能调整其宽度。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Miramonte 字体的比例数字和表格式数字。

XAML复制

<TextBlock FontFamily="Miramonte">
  <Run Typography.NumeralAlignment="Proportional">114,131</Run>
</TextBlock>
<TextBlock FontFamily="Miramonte">
  <Run Typography.NumeralAlignment="Tabular">114,131</Run>
</TextBlock>

斜线零

OpenType 字体支持斜线零数字格式来强调字母“O”和数字“0”之间的差异。 斜线零数字通常用于财务和商务信息中的标识符。

以下文本显示使用 Miramonte 字体的订单标识符。 第一行使用标准数字。 第二行使用斜线零数字,以便更易于与大写字母“O”进行区分。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Miramonte 字体的斜线零数字。

XAML复制

<Paragraph FontFamily="Miramonte">
  <Run>Order #0048-OTC-390</Run>
  <LineBreak/>
  <Run Typography.SlashedZero="True">Order #0048-OTC-390</Run>
</Paragraph>

8、版式类

Typography 对象公开 OpenType 字体支持的功能集。 通过在标记中设置 Typography 的属性,可轻松创作使用 OpenType 功能的文档。

以下文本显示 Pescadero 字体的标准大写字母,其后接样式为“SmallCaps”和“AllSmallCaps”的字母。 本例中,对所有三个单词均使用相同的字体大小。

【WPF.NET开发】OpenType字体,WPF.NET 专栏,wpf,.net,c#

以下标记示例演示如何使用 Typography 对象的属性定义 Pescadero 字体的大写字母。 使用“SmallCaps”格式时会忽略任何前导大写字母。

XAML复制

<Paragraph FontFamily="Pescadero" FontSize="48">
  <Run>CAPITALS</Run>
  <Run Typography.Capitals="SmallCaps">Capitals</Run>
  <Run Typography.Capitals="AllSmallCaps">Capitals</Run>
</Paragraph>

以下代码示例完成与先前的标记事例相同的任务。

C#复制

MyParagraph.FontFamily = new FontFamily("Pescadero");
MyParagraph.FontSize = 48;

Run run_1 = new Run("CAPITALS ");
MyParagraph.Inlines.Add(run_1);

Run run_2 = new Run("Capitals ");
run_2.Typography.Capitals = FontCapitals.SmallCaps;
MyParagraph.Inlines.Add(run_2);

Run run_3 = new Run("Capitals");
run_3.Typography.Capitals = FontCapitals.AllSmallCaps;
MyParagraph.Inlines.Add(run_3);

MyParagraph.Inlines.Add(new LineBreak());

版式类属性

下表列出了 Typography 对象的属性、值和默认设置。

展开表文章来源地址https://www.toymoban.com/news/detail-793161.html

properties 默认值
AnnotationAlternates 数值 - 字节 0
Capitals AllPetiteCaps | AllSmallCaps | Normal | PetiteCaps | SmallCaps | Titling | Unicase FontCapitals.Normal
CapitalSpacing Boolean false
CaseSensitiveForms Boolean false
ContextualAlternates Boolean true
ContextualLigatures Boolean true
ContextualSwashes 数值 - 字节 0
DiscretionaryLigatures Boolean false
EastAsianExpertForms Boolean false
EastAsianLanguage HojoKanji | Jis04 | Jis78 | Jis83 | Jis90 | NlcKanji | Normal | Simplified | Traditional | TraditionalNames FontEastAsianLanguage.Normal
EastAsianWidths Full | Half | Normal | Proportional | Quarter | Third FontEastAsianWidths.Normal
Fraction Normal | Slashed | Stacked FontFraction.Normal
HistoricalForms Boolean false
HistoricalLigatures Boolean false
Kerning Boolean true
MathematicalGreek Boolean false
NumeralAlignment Normal | Proportional | Tabular FontNumeralAlignment.Normal
NumeralStyle Boolean FontNumeralStyle.Normal
SlashedZero Boolean false
StandardLigatures Boolean true
StandardSwashes 数值 - 字节 0
StylisticAlternates 数值 - 字节 0
StylisticSet1 Boolean false
StylisticSet2 Boolean false
StylisticSet3 Boolean false
StylisticSet4 Boolean false
StylisticSet5 Boolean false
StylisticSet6 Boolean false
StylisticSet7 Boolean false
StylisticSet8 Boolean false
StylisticSet9 Boolean false
StylisticSet10 Boolean false
StylisticSet11 Boolean false
StylisticSet12 Boolean false
StylisticSet13 Boolean false
StylisticSet14 Boolean false
StylisticSet15 Boolean false
StylisticSet16 Boolean false
StylisticSet17 Boolean false
StylisticSet18 Boolean false
StylisticSet19 Boolean false
StylisticSet20 Boolean false
Variants Inferior | Normal | Ordinal | Ruby | Subscript | Superscript FontVariants.Normal

到了这里,关于【WPF.NET开发】OpenType字体的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【WPF.NET开发】WPF中的版式

    改进的文本质量和性能 丰富的版式 增强的国际文本支持 增强的字体支持 新的文本应用程序编程接口 (API) 本主题介绍 WPF 的主要版式功能。 这些功能包括改进的文本呈现质量和性能、OpenType 版式支持、增强的国际文本、增强的字体支持和新的文本应用程序编程接口 (API)。

    2024年02月01日
    浏览(41)
  • 【WPF.NET开发】WPF中的XAML资源

    使用 XAML 中的资源 静态和动态资源 静态资源 动态资源 样式、DataTemplate 和隐式键 资源是可以在应用中的不同位置重复使用的对象。 资源的示例包括画笔和样式。 本概述介绍如何使用 Extensible Application Markup Language (XAML) 中的资源。 你还可以使用代码创建和访问资源。  备注

    2024年01月17日
    浏览(62)
  • 【WPF.NET开发】预览事件

    先决条件 预览标记为“已处理”的事件 通过控件解决事件禁止问题 预览事件,也称为隧道事件,是从应用程序根元素向下遍历元素树到引发事件的元素的路由事件。 引发事件的元素在事件数据中报告为Source 。 并非所有事件场景都支持或需要预览事件。 本文介绍了预览事件

    2024年02月03日
    浏览(45)
  • 【WPF.NET开发】流文档

    什么是流文档? 流文档类型 创建流内容 与流相关的类 内容架构 自定义文本 流文档旨在优化查看和可读性。 流文档根据运行时变量(例如,窗口大小、设备分辨率和可选的用户首选项)来动态调整和重新排列内容,而不是设置为一个预定义的布局。 此外,流文档还提供一

    2024年01月17日
    浏览(38)
  • 【WPF.NET开发】弱事件模式

    先决条件 为什么要实现弱事件模式? 应该由谁实现弱事件模式? 如何实现弱事件模式 在应用程序中,附加到事件源的处理程序可能不会与将处理程序附加到源的侦听器对象一同销毁。 这种情况下会导致内存泄漏。 Windows Presentation Foundation (WPF) 引入了可用于解决此问题的设

    2024年02月03日
    浏览(36)
  • VisualStudio[WPF/.NET]基于CommunityToolkit.Mvvm架构开发

    项目模板选择如下: 暂时随机填一个目标框架,待会改: 双击“解决方案资源管理器”中项目CU-APP, 打开项目工程文件CU-APP.csproj, 修改目标框架 TargetFramework 为.net framework 4.7.2 ;  C#语言版本 LangVersion 为  9.0  \\\"工具\\\" - \\\"NuGet包管理器\\\",“管理解决方案的NuGet程序包(N)”,  或者,

    2024年02月07日
    浏览(38)
  • .NET6: 开发基于WPF的摩登三维工业软件 (7)

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/course/detail/35475 做为一个摩登的工业软件,提供可编程的脚本能力是必不可少的能力。脚本既可以方便用户进行二次开发,也对方便对程序进行自动化测试。本文将结合

    2024年02月05日
    浏览(43)
  • .net wpf程序 移花接木

    最近在研究C# .net桌面程序。非常有趣 软件是国外作者写的 公司要求修改翻译 从最初的开源变成闭源再到加壳. 一路让我这个小小的职员好蛋疼. 软件是VS2015 C# WPF 程序 在不脱壳的情况下 实现挂钩类托管函数 遍历WPF控件汉化 首先通过各种手段脱壳目标程序,哪怕是不能运行

    2024年02月07日
    浏览(35)
  • WPF .NET 7.0学习整理(一)

    参照文档进行不系统的整理,看到那写到那O.o DependencyProperty:使用专有字段支持属性的标准模式的替代方法。 DependencyObject:定义了可以注册和拥有依赖属性的基类。 属性及其支持性 DependencyProperty 字段的命名约定非常重要。 字段总是与属性同名,但其后面追加了 Property 后

    2024年02月09日
    浏览(34)
  • [.NET/WPF] CommunityToolkit.Mvvm 异步指令

    我们在开发中, 经常会有这样的需求: 点击按钮后, 进行一些耗时的工作 工作进行时, 按钮不可再次被点击 工作进行时, 会显示进度条, 或者 “加载中” 的动画 CommunityToolkit.Mvvm 中的 RelayCommand 除了支持最简单的同步方法, 还支持以 Task 作为返回值的异步方法, 当我们为这样的异

    2024年02月12日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包