Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 204

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 198 199 200 201 202 203 < 204 > 205 206 207 208 209 210 .. 404 >> Следующая

440

Глава 16

Graphicsunit размер шрифта может задаваться с помощью следующих единиц измерения:

? пункты
? особый шрифт ('/75 дюйма)
? документ ([/ш дюйма)
? дюйм
? миллиметр
? пиксель

Это означает, что мы обладаем беспрецедентной гибкостью при задании требуемого размера шрифта. Одной из возможных областей применения этил размеров может быть подпрограмма, предназначенная для графического вывода текста, которая должна надлежащим образом работать с дисплеями, обладающими высоким/ низким разрешением и с принтерами.

При выводе и графическом режиме текста каким-либо определенным шрифтом на некоторой конкретной поверхности рисования зачастую бывает необходимо узнать длину данной строки текста, выраженную в пикселях. Совершенно очевидно, почему в результате использования различных шрифтов длина строки, выраженная и пикселях, будет различной — меньший по размеру шрифт будет занимать меньшее количество пикселей. Однако не менее важно обладать информацией о поверхности рисования, поскольку разрешение различных поверхностен рисования, выраженное в пикселях, также различно. Обычно экран имеет разрешение 72 пикселя на дюйм. У некоторых принтеров может быть разрешение 300 или 600 пикселей на дюйм, а иногда даже еще больше. Для определения длины строки для ДаННОГО шрифта МЫ будем ИСПОЛЬЗОВаТЬ МСТОД MeasureStringO Объекта Graphics. В качестве образца здесь использован некоторый код, который позволяет продемонстрировать, каким образом можно получить длину и высоту строки. После этого код выводит прямоугольник черного цвета, внутри которого синим цветом выводится текст:

String str 1 'This is a string','

SizeF size * ST.KeasureStri.ng(str, font) t

g.DrawRectangle(Pens.Black, 0, 0, size.Width, size,Height); g.DrawString(str. Font, Brushes.Blue, new Rectangle?(0, 0, size.Width, size.Height));

Свойство шрифта Style (стиль) позволяет определять, выделяется ли текст курсивом, жирным шрифтом, зачеркивается ли он или подчеркивается.

Всегда вызывайте метод Disposal) для объектов Font.

Вызов метода Disposal) для создаваемых нами объектов Brush или использование [

для работы с ними конструкции using представляется очень важным, поскольку !

в противном случае приложение может исчерпать ресурсы системы. I

L-^^_шт^^тяттятшJ

При графическом выводе текста для задания граничных координат выводимого текста используется Rcctangie, Обычно высота этого прямоугольника должна равняться высоте шрифта или быть кратной ей. Отступление от этою правила допускается только в особых случаях для достижения специальных эффектов с использованием отдельных частей текста.
Введение в GD1+

441

В классе stringFormat содержится информация о внешнем представлении текста, включая выравнивание и интервалы меяеду строками, В следующем примере демонстрируется выравнивание текста по правому краю и по центру с помощью класса StringFormat,

Практикум: пример использования нласса Font

Запустите Visual Studio.NET и создайте проект C# Windows Application. Щелкните правой кнопкой мыши на форме и выберите пункт View Code из раскрывшегося меню. Найдите конструктор класса Fonni и вставьте обращение к методу setstyleo сразу после обращения к методу InitializeComponentо. Нам также потребуется изменить границы окна, что бы в нем было достаточно места для вывода текста, который нам необходим. Измененный конструктор будет выглядеть следующим образом:

public Forml()

{

П

I/ Необходимо для поддержки Windows Form Designer П

SetStyle(ControlStyles.Opaque, true);

Bounds = new Rectangle(0, D, 500, 300); -

11

I/ Следует сделать: Любой код, относящийся к конструктору,

// должен быть помещен после вызова метода InitializeComponent

П

>

Теперь добавьте в класс метод OnPaint (): protected override void OnPaint (PaintEventArgs e)

{

Graphics g = e.Graphics; .

int у = 0!

g.FillRectangle(Brushes.White, ClientRoetangle);

H Вывод текста, выровненного по левому крап Rectangle rect = new Rectangle(0, у, 400, Font.Height); g.DrawRectangle(Pens.Blue, rect); g,DrawString('This text is left justified.'. Font,

Brushes.Black, rect); у += Font. Height + 20;

/< Зы щ текста, выровненного no правому крав

Font aFont = new Font('Ariel', 16, FontStyle.Bold I PontStyle.Italic); rect “ new Rectangle(О, у, 400, aFont.Height); g.DrawRectangle!Pena,Blue, rect);

StringFormat sf “ new StringPorruat 0 j

- sf.Alignment = StringAlignment,Far;

g.Drawstring("This text is right justified.aFont, Brushes.Blue, rect, sf)} у aFont.Height + 20;

11 Выэза удаления текста вручную .

aFont.Dispose()>
442

Глава 16

// Вывод текста, выровненного по центру

Font cFont - new Font ('Courier New*, 12, Font Style. Underline) j rect ¦ new Rectangle(0, y, 400, cFont.Height); g.DrawRectangle(Pens,Blue, rect); sf = new StringFormat(); sf.Alignment - StringAlignment.Centeri

g.DrawString(*Hiii text.is centered and underlined. ¦, cFont, Brushes. Red, rect, в?); у *— cFont.Height +¦ 20;

jj Вызов удаления текста вручнут) cFont.Disposal)i
Предыдущая << 1 .. 198 199 200 201 202 203 < 204 > 205 206 207 208 209 210 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.