2009-07-21 45 views
0

如何使文本加粗使用流作家,这里是我的代码:制作文本加粗

string path = Application.StartupPath + "\\WZ.PNR"; 
StreamWriter writer = new StreamWriter(path); 
textPrint.ToText(writer, Width, FSection, FAlign, DSection, DAlign, Format); 
writer.WriteLine();     
writer.Close(); 

我写一些文字,我需要做一些文字加粗,怎么办呢?

感谢

+0

这真的取决于你输出的文件类型。如果它是一个单词文件,那么你将不得不看看单词文件,看看如何做到这一点。你不能在简单的文本文件中做到这一点,因为在简单的文本文件中没有粗体/斜体等概念。这是简单的文字。 – Aamir 2009-07-21 09:40:57

+0

其实它是一个写字板文件(.PNR) – 2009-07-21 09:43:20

+3

你现在声称它是写字板文件*和*打印机文件。这是什么?当我尝试在写字板中保存文件时,选项为RTF,文本文档,文本文档(MS-DOS格式)或Unicode文本文档。根本没有提到PNR。 – 2009-07-21 10:02:40

回答

7

StreamWriter是编写纯文本。您需要某种标记才能使文本变为粗体。选项包括:

  • RTF
  • HTML
  • TeX的

你如何期待打开生成的文件?应用程序需要了解您选择的任何文件格式。没有“粗体字”的一般概念 - 字母E是字母E;如果你想要它的样式数据是分开的。

鉴于您的文件扩展名,你试图创建一个文件?如果是这样,你需要找出适当的文件格式 - 我不知道它是否是文本格式,二进制等。

+1

这可能是拼写错误.prn文件... – leppie 2009-07-21 09:56:12

1

扩展PNR建议某种类型的打印机文件。这意味着您必须查找特定类型打印机的转义码。

2

首先,你应该建立在这样的路径:

string path = Path.Combine(Application.StartupPath, "WZ.PNR"); 

这个小改进后,让我们来看看您的PNR文件...

所以你打开此文件,并喜欢写一些粗体的文字呢?

那么你有某种程序,它已经能够创建和查看这样一个.pnr文件?

我想你会有,或者从哪里知道,在这样的文件中可能有粗体文本?

如果你有这个程序来生成这样一个带粗体文本的文件。只要创建一个新文件,输入三个单词:“一二三”,并使'两'粗体。保存这个文件并用一个很好的纯文本编辑器(例如notepad ++)或一个好的十六进制编辑器打开它,并试图找出这将如何完成。

例如,打开写字板创建一个新的rtf文件并插入上面的示例。它保存在一个纯文本编辑器,重新打开后,您会得到:

{\rtf1\ansi\ansicpg1252\deff0\deflang1031{\fonttbl{\f0\fswiss\fcharset0 Arial;}} 
\viewkind4\uc1\pard\f0\fs20 one \b two\b0 three\par 
} 

正如你所看到的,粗体是通过使用“\ B”启用和“\ B0”禁用作出粗体文本。还有很多其他信息,如使用的字体,字符集等。

如果您没有任何规格,这就是所谓的逆向工程。 ;-)