2013-05-31 1 views
0

У меня есть richtextbox1. Когда я вставить текст в том, что мне нужно:Как восстановить имя шрифта на C#?

  1. Получить точное имя шрифта, что я вставил в эту richtextbox1
  2. Что соответствующее переменный (Есть ли способ retrive полной детализации шрифта, что?) типа присвоить детали шрифта (Это Font?)

Пожалуйста, дайте мне проще предложение. Спасибо

+3

http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox. font.aspx – Yatrix

+1

Если текст, который вы вставляете, является насыщенным текстом, вы можете иметь несколько шрифтов в выборе. – LarsTech

ответ

0

управления RichTextBox имеет Font свойство, типа Font, который «Получает или задает шрифт, используемый при отображении текста в элементе управления.» И да, Font - это правильная структура данных для хранения информации о шрифтах в .NET.

+0

'RichTextBox' может содержать несколько шрифтов по всему тексту. Вы уверены, что «Шрифт» правильный? – Stijn

+0

@Stijn Да, но это связано с свойством 'SelectionFont', которое обычно контролируется пользователем путем выбора из диалогового окна шрифта и относится только к выбранному в данный момент тексту. –

+0

-1 Я протестировал это, и 'Font' просто выводит шрифт по умолчанию вместо шрифта требуемого текста. – Stijn

2

Свойство SelectionFont можно получить, чтобы получить шрифт требуемого текста. Однако, если текст, который вы вставляете, использует несколько шрифтов, свойство вернет null.

В качестве теста я скопировал в текстовый текст текст из трех разных шрифтов в RichTextBox.

«Шрифт: [Шрифт: Name = Microsoft Sans Serif, Size = 8,25, Units = 3, GdiCharSet = 0, GdiVerticalFont = False]

SelectionFont: [Шрифт: Name = Cambria, размер = 11, Единицы = 3, GdiCharSet = 0, GdiVerticalFont = False]»

http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox.selectionfont.aspx

+0

Downvoter, пожалуйста, объясните? – Stijn

+0

+1 этот ответ не заслужил ни одного голоса. – Paparazzi

Смежные вопросы