Манипулирование шрифтами

Манипулирование шрифтами

Теперь давайте выясним, как можно программно манипулировать шрифтами. Тип System.Drawing.Font представляет шрифт, установленный на машине пользователя, Типы шрифта могут определяться с помощью любого числа перегруженных конструкторов. Вот вам несколько примеров.

// Создание Font с заданными именем типа и размером.

Font f = new Font("Times New Roman", 12);

// Создание Font, с заданными именем типа, размером и начертанием.

Font f2 = new Font("WingDings", 50, FontStyle.Bold | FontStyle.Underline);

При создании f2 здесь используются связанные с помощью операции OR значения из перечня FontStyle.

public enum FontStyle {

 Regular, Bold,

 Italic, Underline, Strikeout

}

После установки параметров объекта Font следующей вашей задачей должна быть передача этого объекта методу Graphics.DrawString() в виде параметра. Хотя метод DrawString() перегружен, каждая из его вариаций требует одну и ту же информацию: отображаемый текст, шрифт для отображения этого текста, кисть, с помощью которой выполняется визуализация, и место, в которое нужно текст поместить.

private void MainForm_Paint(object sender, PaintEventArgs e) {

 Graphics g = e.Graphics;

 // Аргументы (String, Font, Brush, Point).

 g.DrawString("Моя строка", new Font("WingDings", 25), Brushes.Black, new Point(0,0));

 // Аргументы (String, Font, Brush, int, int)

 g.DrawString("Другая строка", new Font("Times New Roman", 16), Brushes.Red, 40, 40);

}