Делаем текст жирным, используя Stream Writer в C # - PullRequest
0 голосов
/ 21 июля 2009

Как сделать текст жирным, используя потоковую запись, вот мой код:

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

Я пишу текст, и мне нужно сделать текст жирным, Как это сделать?

Спасибо

Ответы [ 3 ]

7 голосов
/ 21 июля 2009

StreamWriter для написания простого текста. Вам нужна какая-то разметка, чтобы сделать текст жирным. Варианты включают в себя:

  • RTF
  • HTML
  • TeX

Как вы ожидаете открыть сгенерированный файл? Приложение должно понимать, какой формат файла вы выберете. Там нет общего понятия "жирный шрифт" - буква Е это буква Е; если вы хотите, чтобы это стилировалось, данные о стилях являются отдельными.

Учитывая ваше расширение файла, вы пытаетесь создать файл PeerNet Label Designer ? Если это так, вам нужно найти подходящий формат файла - я не знаю, текстовый ли это, двоичный и т. Д.

2 голосов
/ 21 июля 2009

Сначала вы должны создать свой путь следующим образом:

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

После этого небольшого улучшения давайте посмотрим на ваш файл pnr ...

Итак, вы открываете этот файл и хотите написать какой-нибудь жирный текст?

Итак, у вас есть какая-то программа, которая уже может создавать и просматривать такой файл .pnr?

Я думаю, у вас или откуда вы знаете, что в таком файле можно выделить жирный текст?

Если у вас есть эта программа, чтобы создать такой файл с жирным текстом. Просто создайте новый файл, введите три слова: «один два три» и сделайте «два» жирным шрифтом. Сохраните этот файл и откройте его с помощью простого текстового редактора (например, notepad ++) или хорошего Hex-редактора и попытайтесь выяснить, как это будет выполнено.

Например, откройте WordPad, создайте новый файл rtf и вставьте приведенный выше пример. После сохранения и повторного открытия в текстовом редакторе вы получите:

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

И, как вы можете видеть, выделение жирным шрифтом осуществляется с помощью «\ b» для включения и «\ b0» для отключения выделенного текста. Также есть много другой информации, такой как используемый шрифт, кодировка и т. Д.

Это называется обратным инжинирингом, если у вас нет спецификаций. ; -)

1 голос
/ 21 июля 2009

Расширение PNR предлагает какой-нибудь файл принтера. Это означает, что вам придется искать коды для этого конкретного типа принтера.

...