Иллюстрированный самоучитель по Java

Методы улучшения визуализации

Визуализацию (rendering) созданной графики можно усовершенствовать, установив один из методов (hint) улучшения одним из методов класса Graphics2D:

setRenderingHints(RenderingHints.Key key, Object value)
setRenderingHints(Map hints)

Ключи – методы улучшения – и их значения задаются константами класса RenderingHints, перечисленными в табл. 9.2.

Таблица 9.2. Методы визуализации и их значения.

Метод Значение
KEY_ANTIALIASING Размывание крайних пикселов линий для гладкости изображения; три значения, задаваемые константами:
VALUE ANTIALIAS DEFAULT, VALUE ANTIALIAS ON, VALUE~ANTIALIAS OFF
KEY_TEXT_ANTTALIAS ING To же для текста. Константы:
VALUE TEXT ANTIALIASING_DEFAULT, VALUE TEXT ANTIALIASING ON, VALUE_TEXT_ANTIALIASING_OFF
KEY RENDERING Три типа визуализации. Константы:
VALUE RENDER SPEED, VALUE RENDER QUALITY, VALUE RENDER DEFAULT
KEY COLOR RENDERING To же для цвета. Константы:
VALUE COLOR RENDER_SPEED, VALUE COLOR RENDER QUALITY, VALUE COLOR RENDER DEFAULT
KEY ALPHA INTERPOLATION Плавное сопряжение линий. Константы:
VALUE ALPHA INTERPOLATION_SPEED, VALUE ALPHA INTERPOLATION QUALITY, VALUE_ALPHA_INTERPOLATION_DEFAULT
KEY_INTERPOLATION Способы сопряжения. Константы:
VALUE_INTERPOLATION_BILINEAR, VALUE INTERPOLATION BICUBIC, VALUE INTERPOLATION_NEAREST_NEIGHBOR
KEY_DITHERING Замена близких цветов. Константы:
VALUE DITHER ENABLE, VALUE DITHER DISABLE, VALUE DITHER DEFAULT

He все графические системы обеспечивают выполнение этих методов, поэтому задание указанных атрибутов не означает, что определяемые ими методы будут применяться на самом деле.

Вот как может выглядеть начало метода paint () с указанием методов улучшения визуализации:

public void paint(Graphics gr){
Graphics2D g = (Graphics2D)gr;
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_QUALITY);
// Продолжение метода
}

Заключение

В этой главе мы, разумеется, не смогли подробно разобрать все возможности Java 2D. Мы не коснулись моделей задания цвета и смешивания цветов, печати графики и текста, динамической загрузки шрифтов, изменения области рисования. В главе 15 мы рассмотрим средства Java 2D для работы с изображениями, в главе 18 – средства печати.

В документации SUN J2SDK, в каталоге docs\guide\2d\spec, есть руководство Java 2 API Guide с обзором всех возможностей Java 2D. Там помещены ссылки на руководства и пособия по Java 2D. В каталоге demo\jfc\Java2D\src приведены исходные тексты программ, использующих Java 2D.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.