在加载到richTextBox之前,获取.txt文件中使用的字体

本文关键字:文件 字体 txt 获取 加载 richTextBox 之前 | 更新日期: 2023-09-27 17:54:08

我需要在加载到richTextBox之前获得。txt文件(或。rtf)中的字体集。如果我不这样做,默认字体设置和richTextBox。文本的字体与原始。txt文件中设置的字体不同…

我正在处理从RichTextBox继承的自定义TextPanel。

    if (File.Exists(file))
            {
                if (Path.GetExtension(file) == ".txt")
                {
                    // I need to get the font here from the path "file" .txt document
                    textPanel = new TextPanel(file, this);
                    textPanel.LoadFile(file, RichTextBoxStreamType.PlainText);

我相信有一个简单的方法来做到这一点,只是找不到它:

在加载到richTextBox之前,获取.txt文件中使用的字体

Thomas, .txt不存储字体信息,除非你有一个自定义的文件格式,你在问题中没有注意到。例如,在记事本中更改文本只是一个显示功能,对文件本身没有任何影响。

RTF确实存储字体信息,并且应该在将其推送到RTB时加载。

欢呼。

纯文本文件不存储字体信息。(它们是文本文件,这意味着它们只存储文本。)当它们被加载时,它们使用它们所显示的容器的字体。

如果一个实际的richtext (.rtf)文件有字体信息,并且它被加载为。rtf文件(不要使用RichTextBoxStreamType.PlainText,使用RichTextBoxStreamType.RichText代替),RichTextBox应该自动为您设置字体,不涉及代码

TXT文件没有标题。它们是纯文本文件,没有任何额外的文件结构或隐式格式(如RTF)。你可以使用,例如,当你打开你的应用程序的默认字体样式…或默认的记事本字体(Lucida Console, normal, 10)