|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class Graphics2D extends Graphics
Graphics2D class расширяется Graphics class, чтобы обеспечить более сложное управление геометрией, скоординируйте преобразования, управление цветом, и текстовое расположение. Это - фундаментальный class для того, чтобы представить 2-мерные формы, текст и изображения на Java (ТМ) платформа.
Graphics2D объект определяется в независящей от устройств системе координат под названием Пространство пользователя, которое используется приложениями. Graphics2D объект содержит AffineTransform возразите как часть его состояния рендеринга, которое определяет, как преобразовать координаты от пространства пользователя до зависящих от устройств координат в Пространстве устройства. Координаты в пространстве устройства обычно обращаются к отдельным пикселям устройства и выровненные на бесконечно тонких разрывах между этими пикселями. Некоторые Graphics2D объекты могут использоваться, чтобы получить операции рендеринга для хранения в графический метафайл для воспроизведения на конкретном устройстве неизвестного физического разрешения в более позднее время. Так как разрешение не могло бы быть известно, когда операции рендеринга получаются, Graphics2D Transform устанавливается, чтобы преобразовать пользовательские координаты к пространству виртуального устройства, которое приближает ожидаемое разрешение целевого устройства. Дальнейшие преобразования, возможно, должны были бы быть применены во время воспроизведения, если оценка является неправильной.
Некоторые из операций, выполняемых объектами атрибута рендеринга, происходят в пространстве устройства, но всех Graphics2D методы берут координаты пространства пользователя.
Каждый Graphics2D объект связывается с целью, которая определяет, где рендеринг имеет место. A GraphicsConfiguration объект определяет характеристики цели рендеринга, такие как пиксельный формат и разрешение. Та же самая цель рендеринга используется в течение жизни a Graphics2D объект.
Создавая a Graphics2D объект, GraphicsConfiguration определяет, что значение по умолчанию преобразовывает для цели Graphics2D (a Component или Image). Это значение по умолчанию преобразовывает карты, система координат пространства пользователя, чтобы экранировать и устройство принтера координирует так, что карты источника к верхнему левому углу целевой области устройства с увеличением X координат, расширяющихся направо и увеличивающихся Y координаты, расширяющиеся вниз. Масштабирование преобразования значения по умолчанию устанавливается в идентификационные данные для тех устройств, которые являются близко к 72 точкам на дюйм, таким как экранные устройства. Масштабирование преобразования значения по умолчанию устанавливается приблизительно в 72 координаты пространства пользователя на квадратный дюйм для устройств высокого разрешения, таких как принтеры. Для буферов изображения преобразование значения по умолчанию Identity преобразовать.
Graphics2D рендеринг атрибутов. Средство рендеринга может оптимизировать многие из этих шагов, или кэшируя результаты для будущих вызовов, сворачивая многократные виртуальные шаги в единственную работу, или распознавая различные атрибуты как общие простые случаи, которые могут быть устранены, изменяя другие части работы. Шаги в процессе рендеринга:
Clip. Clip определяется a Shape в пространстве пользователя и управляется программой, используя различные методы манипулирования клипом Graphics и Graphics2D. Этот пользовательский клип преобразовывается в пространство устройства током Transform и объединенный с клипом устройства, который определяется видимостью степеней устройства и окон. Комбинация пользовательского клипа и клипа устройства определяет составной клип, который определяет заключительную область отсечения. Пользовательский клип не изменяется системой рендеринга, чтобы отразить получающийся составной клип. Composite атрибут в Graphics2D контекст. Shape операции
draw(Shape) работа, тогда createStrokedShape метод на токе Stroke атрибут в Graphics2D контекст используется, чтобы создать новое Shape объект, который содержит схему указанного Shape. Shape преобразовывается от пространства пользователя до пространства устройства, используя ток Transform в Graphics2D контекст. Shape извлекается, используя getPathIterator метод Shape, который возвращает a PathIterator объект, который выполняет итерации вдоль границы Shape. Graphics2D объект не может обработать кривые сегменты что PathIterator возразите возвратам тогда, это может вызвать альтернативу getPathIterator метод Shape, который сглаживается Shape. Paint в Graphics2D контекст запрашивается для a PaintContext, который определяет цвета, чтобы представить в пространстве устройства. String: String, тогда ток Font в Graphics2D контекст просят преобразовать символы Unicode в String в ряд глифов для представления с любыми основными алгоритмами расположения и формирования реализации шрифта. AttributedCharacterIterator, iterator просят преобразовать себя в a TextLayout использование его встроенных атрибутов шрифта. TextLayout реализует более сложные алгоритмы компоновки глифа, которые выполняют Unicode двунаправленные корректировки расположения автоматически к многократным шрифтам отличающихся, записав направления. GlyphVector, тогда GlyphVector объект уже содержит соответствующие специфичные для шрифта коды глифа с явными координатами для позиции каждого глифа. Font запрашивается, чтобы получить схемы для обозначенных глифов. Эти схемы обрабатываются как формы в пространстве пользователя относительно позиции каждого глифа, который был определен в шаге 1. Shape операции. Paint запрашивается для a PaintContext, который определяет цвета, чтобы представить в пространстве устройства. Image Операции
Image. Этот ограничивающий прямоугольник определяется в Пространстве Изображения, которое является Image локальная система координат объекта. AffineTransform к передают drawImage(Image, AffineTransform, ImageObserver), AffineTransform используется, чтобы преобразовать ограничивающий прямоугольник от пространства изображения до пространства пользователя. Если нет AffineTransform предоставляется, ограничивающий прямоугольник обрабатывается, как будто это уже находится в пространстве пользователя. Image преобразовывается от пространства пользователя в пространство устройства, используя ток Transform. Отметьте, что результат преобразования ограничивающего прямоугольника не обязательно приводит к прямоугольной области в пространстве устройства. Image объект определяет что цвета представить, выбранный согласно источнику к целевой координате отображение указанного током Transform и дополнительное изображение преобразовывает. Graphics2D представляющие атрибуты: Paint
Component. Font
Font из Component. Stroke
Transform
getDefaultTransform для GraphicsConfiguration из Component. Composite
AlphaComposite.SRC_OVER правило. Clip
Clip, вывод отсекается к Component. Java, 2-D (ТМ) (Java (ТМ) 2 платформы) API, поддерживает сглаживающиеся средства рендеринга. Перо с width одного пикселя не должно упасть полностью на пиксель N в противоположность пикселю N+1. Перо может упасть частично на оба пикселя. Не необходимо выбрать направление смещения для широкого пера начиная со смешивания, которое происходит вдоль перьевых краев обхода, делает субпиксельную позицию пера видимой пользователю. С другой стороны, когда сглаживание выключается, устанавливая KEY_ANTIALIASING подскажите ключ VALUE_ANTIALIAS_OFF подскажите значение, средство рендеринга, возможно, должно было бы применить смещение, чтобы определить, какой пиксель изменить, когда перо колеблется между пиксельной границей, такой как тогда, когда это оттягивается вдоль целочисленной координаты в пространстве устройства. В то время как возможности сглаживающегося средства рендеринга не делают это больше необходимым для модели рендеринга, чтобы определить смещение для пера, это является требуемым для сглаживания и несглаживания средств рендеринга, чтобы выполнить так же для общих падежей рисования широкой горизонтали с одним пикселем и вертикальных строк на экране. Гарантировать что, включая сглаживание, устанавливая KEY_ANTIALIASING подскажите ключ VALUE_ANTIALIAS_ON не заставляет такие строки внезапно становиться дважды столь же широкими и половина как непрозрачный, это является требуемым, чтобы иметь модель, определяют путь для таких строк так, чтобы они полностью покрыли определенный набор пикселей, чтобы помочь увеличить их четкость.
Java 2-D API поддерживает совместимость с JDK 1.1 поведения рендеринга, так, что операции наследства и существующее поведение средства рендеринга, неизменен под Java 2-D API. Методы наследства та карта на общий draw и fill методы определяются, который ясно указывает как Graphics2D расширяется Graphics основанный на настройках Stroke и Transform атрибуты и представляющие подсказки. Определение выполняет тождественно при настройках атрибута по умолчанию. Например, значение по умолчанию Stroke a BasicStroke с width 1 и никакое подчеркивание штриховой линией и значение по умолчанию Преобразовывают для экранного рисунка, Идентификационные данные, преобразовывают.
Следующие два правила обеспечивают предсказуемое поведение рендеринга, исказить ли ли или сгладиться, используется.
BasicStroke объект может быть "нормализован", чтобы обеспечить непротиворечивый рендеринг схем когда расположено в различные точки на drawable и сглаживал ли оттянутый с искаженным или рендеринг. Этим процессом нормализации управляют KEY_STROKE_CONTROL подсказка. Точный алгоритм нормализации не определяется, но цели этой нормализации состоят в том, чтобы гарантировать, что строки представляются с непротиворечивым визуальным появлением независимо от того, как они падают на пиксельную сетку и продвинуть более твердую горизонталь и вертикальные строки в сглаженном режиме так, чтобы они напомнили свои несглаженные дубликаты более близко. Типичный шаг нормализации мог бы продвинуть сглаженные конечные точки строки пиксельные центры, чтобы уменьшить количество смешивания или скорректировать субпиксельное расположение несглаженных строк так, чтобы ширины строки с плавающей точкой вокруг к даже или нечетный пиксель рассчитали с равной вероятностью. Этот процесс может переместить конечные точки до половины пикселя (обычно к положительной бесконечности вдоль обеих осей), чтобы продвинуть эти непротиворечивые результаты. Следующие определения общих методов наследства выполняют тождественно к ранее указанному поведению при настройках атрибута по умолчанию:
fill операции, включая fillRect, fillRoundRect, fillOval, fillArc, fillPolygon, и clearRect, fill может теперь быть вызван с требуемым Shape. Например, заполняя прямоугольник: fill(new Rectangle(x, y, w, h));вызывается.
drawLine, drawRect, drawRoundRect, drawOval, drawArc, drawPolyline, и drawPolygon, draw может теперь быть вызван с требуемым Shape. Например, при рисовании прямоугольника: draw(new Rectangle(x, y, w, h));вызывается.
draw3DRect и fill3DRect методы были реализованы с точки зрения drawLine и fillRect методы в Graphics class, который утвердил бы их поведение на ток Stroke и Paint объекты в a Graphics2D контекст. Этот class переопределяет те реализации с версиями, которые используют ток Color исключительно, переопределение тока Paint и который использует fillRect описать то же самое поведение как существующие ранее методы независимо от установки тока Stroke. Graphics class определяет только setColor метод, чтобы управлять цветом, который будет нарисован. Начиная с Java 2-D API расширяется Color возразите, чтобы реализовать новое Paint интерфейс, существующее setColor метод является теперь методом удобства для того, чтобы установить ток Paint припишите a Color объект. setColor(c) эквивалентно setPaint(c). Graphics class определяет два метода для того, чтобы управлять, как цвета применяются к месту назначения.
setPaintMode метод реализуется как метод удобства, чтобы установить значение по умолчанию Composite, эквивалентный setComposite(new AlphaComposite.SrcOver). setXORMode(Color xorcolor) метод реализуется как метод удобства, чтобы установить специальное предложение Composite объект, который игнорирует Alpha компоненты источника красят и выбирают целевой цвет к значению: dstpixel = (PixelOf(srccolor) ^ PixelOf(xorcolor) ^ dstpixel);
RenderingHints| Модификатор | Конструктор и Описание |
|---|---|
protected |
Graphics2D()
Создает новое
Graphics2D объект. |
| Модификатор и Тип | Метод и Описание |
|---|---|
abstract void |
addRenderingHints(Map<?,?> hints)
Устанавливает значения произвольного числа предпочтения алгоритмам рендеринга.
|
abstract void |
clip(Shape s)
Пересекает ток
Clip с внутренней частью указанного Shape и наборы Clip к получающемуся пересечению. |
abstract void |
draw(Shape s)
Перечеркивает схему a
Shape использование настроек тока Graphics2D контекст. |
void |
draw3DRect(int x, int y, int width, int height, boolean raised)
Тянет 3-D выделенную схему указанного прямоугольника.
|
abstract void |
drawGlyphVector(GlyphVector g, float x, float y)
Представляет текст указанного
GlyphVector использование Graphics2D атрибуты рендеринга контекста. |
abstract void |
drawImage(BufferedImage img, BufferedImageOp op, int x, int y)
Представляет a
BufferedImage это фильтруется с a BufferedImageOp. |
abstract boolean |
drawImage(Image img, AffineTransform xform, ImageObserver obs)
Представляет изображение, применяя преобразование от пространства изображения в пространство пользователя перед рисунком.
|
abstract void |
drawRenderableImage(RenderableImage img, AffineTransform xform)
Представляет a
RenderableImage, применение преобразования от изображения располагает с интервалами в пространство пользователя перед рисунком. |
abstract void |
drawRenderedImage(RenderedImage img, AffineTransform xform)
Представляет a
RenderedImage, применение преобразования от изображения располагает с интервалами в пространство пользователя перед рисунком. |
abstract void |
drawString(AttributedCharacterIterator iterator, float x, float y)
Представляет текст указанного iterator применение его атрибутов в соответствии со спецификацией
TextAttribute class. |
abstract void |
drawString(AttributedCharacterIterator iterator, int x, int y)
Представляет текст указанного iterator применение его атрибутов в соответствии со спецификацией
TextAttribute class. |
abstract void |
drawString(String str, float x, float y)
Представляет текст, определенный указанным
String, использование текущего текста приписывает состояние в Graphics2D контекст. |
abstract void |
drawString(String str, int x, int y)
Представляет текст указанного
String, использование текущего текста приписывает состояние в Graphics2D контекст. |
abstract void |
fill(Shape s)
Заполняет внутреннюю часть a
Shape использование настроек Graphics2D контекст. |
void |
fill3DRect(int x, int y, int width, int height, boolean raised)
Красит 3-D выделенный прямоугольник заполненным текущим цветом.
|
abstract Color |
getBackground()
Возвращает цвет фона, используемый для того, чтобы очистить область.
|
abstract Composite |
getComposite()
Возвращает ток
Composite в Graphics2D контекст. |
abstract GraphicsConfiguration |
getDeviceConfiguration()
Возвращает конфигурацию устройства, связанную с этим
Graphics2D. |
abstract FontRenderContext |
getFontRenderContext()
Получите контекст рендеринга
Font в пределах этого Graphics2D контекст. |
abstract Paint |
getPaint()
Возвращает ток
Paint из Graphics2D контекст. |
abstract Object |
getRenderingHint(RenderingHints.Key hintKey)
Возвращает значение единственного предпочтения алгоритмам рендеринга.
|
abstract RenderingHints |
getRenderingHints()
Получает предпочтение алгоритмам рендеринга.
|
abstract Stroke |
getStroke()
Возвращает ток
Stroke в Graphics2D контекст. |
abstract AffineTransform |
getTransform()
Возвращает копию тока
Transform в Graphics2D контекст. |
abstract boolean |
hit(Rectangle rect, Shape s, boolean onStroke)
Проверки, действительно ли указанное
Shape пересекает указанное Rectangle, который находится в пространстве устройства. |
abstract void |
rotate(double theta)
Связывает ток
Graphics2D
Transform с вращением преобразовывают. |
abstract void |
rotate(double theta, double x, double y)
Связывает ток
Graphics2D
Transform с преобразованным вращением преобразовывают. |
abstract void |
scale(double sx, double sy)
Связывает ток
Graphics2D
Transform с преобразованием масштабирования Последующий рендеринг изменяется согласно указанным масштабным коэффициентам относительно предыдущего масштабирования. |
abstract void |
setBackground(Color color)
Устанавливает цвет фона для
Graphics2D контекст. |
abstract void |
setComposite(Composite comp)
Наборы
Composite для Graphics2D контекст. |
abstract void |
setPaint(Paint paint)
Наборы
Paint атрибут для Graphics2D контекст. |
abstract void |
setRenderingHint(RenderingHints.Key hintKey, Object hintValue)
Устанавливает значение единственного предпочтения алгоритмам рендеринга.
|
abstract void |
setRenderingHints(Map<?,?> hints)
Заменяет значения всего предпочтения алгоритмам рендеринга с указанным
hints. |
abstract void |
setStroke(Stroke s)
Наборы
Stroke для Graphics2D контекст. |
abstract void |
setTransform(AffineTransform Tx)
Перезаписывает Преобразование в
Graphics2D контекст. |
abstract void |
shear(double shx, double shy)
Связывает ток
Graphics2D
Transform со сдвигом преобразовывают. |
abstract void |
transform(AffineTransform Tx)
Сочиняет
AffineTransform объект с Transform в этом Graphics2D согласно правилу, "последнему, определил сначала примененный". |
abstract void |
translate(double tx, double ty)
Связывает ток
Graphics2D Transform с преобразованием преобразовывают. |
abstract void |
translate(int x, int y)
Преобразовывает источник
Graphics2D контекст к точке (x, y) в текущей системе координат. |
clearRect, clipRect, copyArea, create, create, dispose, drawArc, drawBytes, drawChars, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawLine, drawOval, drawPolygon, drawPolygon, drawPolyline, drawRect, drawRoundRect, fillArc, fillOval, fillPolygon, fillPolygon, fillRect, fillRoundRect, finalize, getClip, getClipBounds, getClipBounds, getClipRect, getColor, getFont, getFontMetrics, getFontMetrics, hitClip, setClip, setClip, setColor, setFont, setPaintMode, setXORMode, toStringprotected Graphics2D()
Graphics2D объект. С тех пор Graphics2D абстрактный class, и так как он должен быть настроен подклассами для различных устройств вывода, Graphics2D объекты не могут быть созданы непосредственно. Вместо этого Graphics2D объекты должны быть получены от другого Graphics2D объект, создаваемый a Component, или полученный из изображений такой как BufferedImage объекты.Component.getGraphics(), Graphics.create()public void draw3DRect(int x,
int y,
int width,
int height,
boolean raised)
Цвета, используемые для выделяющегося эффекта, определяются основанные на текущем цвете. Получающийся прямоугольник покрывает область, которая является width + 1 пиксели, широкие height + 1 высокие пиксели. Этот метод использует ток Color исключительно и игнорирует ток Paint.
draw3DRect в class Graphicsx - x координата прямоугольника, который будет оттянут.y - y координата прямоугольника, который будет оттянут.width - width прямоугольника, который будет оттянут.height - height прямоугольника, который будет оттянут.raised - булево, которое определяет, кажется ли прямоугольник, повышается выше поверхности или снижается в поверхность.Graphics.fill3DRect(int, int, int, int, boolean)public void fill3DRect(int x,
int y,
int width,
int height,
boolean raised)
Color. Этот метод использует ток Color исключительно и игнорирует ток Paint.fill3DRect в class Graphicsx - x координата прямоугольника, чтобы быть заполненным.y - y координата прямоугольника, чтобы быть заполненным.width - width прямоугольника, чтобы быть заполненным.height - height прямоугольника, чтобы быть заполненным.raised - булево значение, которое определяет, кажется ли прямоугольник, повышается выше поверхности или вытравливал поверхность.Graphics.draw3DRect(int, int, int, int, boolean)public abstract void draw(Shape s)
Shape использование настроек тока Graphics2D контекст. Примененные атрибуты рендеринга включают Clip, Transform, Paint, Composite и Stroke атрибуты.s - Shape быть представленнымsetStroke(java.awt.Stroke), setPaint(java.awt.Paint), Graphics.setColor(java.awt.Color), transform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), clip(java.awt.Shape), Graphics.setClip(int, int, int, int), setComposite(java.awt.Composite)public abstract boolean drawImage(Image img, AffineTransform xform, ImageObserver obs)
Transform в Graphics2D. Указанное преобразование применяется к изображению перед атрибутом преобразования в Graphics2D контекст применяется. Примененные атрибуты рендеринга включают Clip, Transform, и Composite атрибуты. Отметьте, что никакой рендеринг не делается, если указанное преобразование необратимое.img - указанное изображение, которое будет представлено. Этот метод ничего не делает если img нуль.xform - преобразование от изображения располагает с интервалами в пространство пользователяobs - ImageObserver быть уведомленным как больше Image преобразовываетсяtrue если Image полностью загружается и полностью представляется, или если это - нуль; false если Image все еще загружается.transform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), clip(java.awt.Shape), Graphics.setClip(int, int, int, int)public abstract void drawImage(BufferedImage img, BufferedImageOp op, int x, int y)
BufferedImage это фильтруется с a BufferedImageOp. Примененные атрибуты рендеринга включают Clip, Transform и Composite атрибуты. Это эквивалентно: img1 = op.filter(img, null); drawImage(img1, new AffineTransform(1f,0f,0f,1f,x,y), null);
op - фильтр, который будет применен к изображению перед рендерингомimg - указанное BufferedImage быть представленным. Этот метод ничего не делает если img нуль.x - x координата расположения в пространстве пользователя, где левый верхний угол изображения представляетсяy - y координата расположения в пространстве пользователя, где левый верхний угол изображения представляетсяtransform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), clip(java.awt.Shape), Graphics.setClip(int, int, int, int)public abstract void drawRenderedImage(RenderedImage img, AffineTransform xform)
RenderedImage, применение преобразования от изображения располагает с интервалами в пространство пользователя перед рисунком. Преобразование от пространства пользователя в пространство устройства делается с током Transform в Graphics2D. Указанное преобразование применяется к изображению перед атрибутом преобразования в Graphics2D контекст применяется. Примененные атрибуты рендеринга включают Clip, Transform, и Composite атрибуты. Отметьте, что никакой рендеринг не делается, если указанное преобразование необратимое.img - изображение, которое будет представлено. Этот метод ничего не делает если img нуль.xform - преобразование от изображения располагает с интервалами в пространство пользователяtransform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), clip(java.awt.Shape), Graphics.setClip(int, int, int, int)public abstract void drawRenderableImage(RenderableImage img, AffineTransform xform)
RenderableImage, применение преобразования от изображения располагает с интервалами в пространство пользователя перед рисунком. Преобразование от пространства пользователя в пространство устройства делается с током Transform в Graphics2D. Указанное преобразование применяется к изображению перед атрибутом преобразования в Graphics2D контекст применяется. Примененные атрибуты рендеринга включают Clip, Transform, и Composite атрибуты. Отметьте, что никакой рендеринг не делается, если указанное преобразование необратимое. Рендеринг набора подсказок на Graphics2D объект мог бы использоваться в рендеринге RenderableImage. Если явное управление требуется по определенным подсказкам, распознанным определенным RenderableImage, или если, знание которого подсказки используются, требуется, тогда a RenderedImage должен быть получен непосредственно из RenderableImage и представленное использование drawRenderedImage.
img - изображение, которое будет представлено. Этот метод ничего не делает если img нуль.xform - преобразование от изображения располагает с интервалами в пространство пользователяtransform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), clip(java.awt.Shape), Graphics.setClip(int, int, int, int), drawRenderedImage(java.awt.image.RenderedImage, java.awt.geom.AffineTransform)public abstract void drawString(String str, int x, int y)
String, использование текущего текста приписывает состояние в Graphics2D контекст. Базовая линия первого символа в позиции (x, y) в Пространстве пользователя. Примененные атрибуты рендеринга включают Clip, Transform, Paint, Font и Composite атрибуты. Для символов в системах сценария, таких как иврит и арабский язык, глифы могут быть представлены справа налево, когда предоставленная координата является расположением крайнего левого символа на базовой линии.drawString в class Graphicsstr - строка, которая будет представленаx - x координата расположения, где String должен быть представленy - y координата расположения, где String должен быть представленNullPointerException - если str nullGraphics.drawBytes(byte[], int, int, int, int), Graphics.drawChars(char[], int, int, int, int)public abstract void drawString(String str, float x, float y)
String, использование текущего текста приписывает состояние в Graphics2D контекст. Базовая линия первого символа в позиции (x, y) в Пространстве пользователя. Примененные атрибуты рендеринга включают Clip, Transform, Paint, Font и Composite атрибуты. Для символов в системах сценария, таких как иврит и арабский язык, глифы могут быть представлены справа налево, когда предоставленная координата является расположением крайнего левого символа на базовой линии.str - String быть представленнымx - x координата расположения, где String должен быть представленy - y координата расположения, где String должен быть представленNullPointerException - если str nullsetPaint(java.awt.Paint), Graphics.setColor(java.awt.Color), Graphics.setFont(java.awt.Font), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), Graphics.setClip(int, int, int, int)public abstract void drawString(AttributedCharacterIterator iterator, int x, int y)
TextAttribute class. Базовая линия первого символа в позиции (x, y) в Пространстве пользователя. Для символов в системах сценария, таких как иврит и арабский язык, глифы могут быть представлены справа налево, когда предоставленная координата является расположением крайнего левого символа на базовой линии.
drawString в class Graphicsiterator - iterator, текст которого должен быть представленx - x координируют, где текст iterator должен быть представленy - y координируют, где текст iterator должен быть представленNullPointerException - если iterator nullsetPaint(java.awt.Paint), Graphics.setColor(java.awt.Color), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), Graphics.setClip(int, int, int, int)public abstract void drawString(AttributedCharacterIterator iterator, float x, float y)
TextAttribute class. Базовая линия первого символа в позиции (x, y) в Пространстве пользователя. Для символов в системах сценария, таких как иврит и арабский язык, глифы могут быть представлены справа налево, когда предоставленная координата является расположением крайнего левого символа на базовой линии.
iterator - iterator, текст которого должен быть представленx - x координируют, где текст iterator должен быть представленy - y координируют, где текст iterator должен быть представленNullPointerException - если iterator nullsetPaint(java.awt.Paint), Graphics.setColor(java.awt.Color), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), Graphics.setClip(int, int, int, int)public abstract void drawGlyphVector(GlyphVector g, float x, float y)
GlyphVector использование Graphics2D атрибуты рендеринга контекста. Примененные атрибуты рендеринга включают Clip, Transform, Paint, и Composite атрибуты. GlyphVector определяет отдельных глифов от a Font. GlyphVector может также содержать позиции глифа. Это - самый быстрый способ представить ряд символов на экран.g - GlyphVector быть представленнымx - x позиция в Пространстве пользователя, где глифы должны быть представленыy - y позиция в Пространстве пользователя, где глифы должны быть представленыNullPointerException - если g null.Font.createGlyphVector(java.awt.font.FontRenderContext, java.lang.String), GlyphVector, setPaint(java.awt.Paint), Graphics.setColor(java.awt.Color), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), Graphics.setClip(int, int, int, int)public abstract void fill(Shape s)
Shape использование настроек Graphics2D контекст. Примененные атрибуты рендеринга включают Clip, Transform, Paint, и Composite.s - Shape быть заполненнымsetPaint(java.awt.Paint), Graphics.setColor(java.awt.Color), transform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), setComposite(java.awt.Composite), clip(java.awt.Shape), Graphics.setClip(int, int, int, int)public abstract boolean hit(Rectangle rect, Shape s, boolean onStroke)
Shape пересекает указанное Rectangle, который находится в пространстве устройства. Если onStroke ложь, этот метод проверки действительно ли внутренняя часть указанного Shape пересекает указанное Rectangle. Если onStroke true, этот метод проверяет действительно ли Stroke из указанного Shape схема пересекает указанное Rectangle. Рендеринг приписывает принятый во внимание, включают Clip, Transform, и Stroke атрибуты.rect - область в пространстве устройства, чтобы проверить на хитs - Shape проверять на хитonStroke - флаг, используемый, чтобы выбрать между тестированием перечеркиваемого или заполненной формы. Если флаг true, Stroke oultine тестируется. Если флаг false, заполненный Shape тестируется.true если есть хит; false иначе.setStroke(java.awt.Stroke), fill(java.awt.Shape), draw(java.awt.Shape), transform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform), clip(java.awt.Shape), Graphics.setClip(int, int, int, int)public abstract GraphicsConfiguration getDeviceConfiguration()
Graphics2D.Graphics2D.public abstract void setComposite(Composite comp)
Composite для Graphics2D контекст. Composite используется во всех методах рисунка такой как drawImage, drawString, draw, и fill. Это определяет, как новые пиксели должны быть объединены с существующими пикселями на графическом устройстве во время процесса рендеринга. Если это Graphics2D контекст тянет к a Component на экране дисплея и Composite пользовательский объект, а не экземпляр AlphaComposite class, и если есть менеджер безопасности, checkPermission метод вызывают с AWTPermission("readDisplayPixels") разрешение.
comp - Composite объект, который будет использоваться для того, чтобы представитьSecurityException - если пользовательское Composite объект используется, чтобы представить на экран, и менеджер безопасности устанавливается и checkPermission метод не позволяет работу.Graphics.setXORMode(java.awt.Color), Graphics.setPaintMode(), getComposite(), AlphaComposite, SecurityManager.checkPermission(java.security.Permission), AWTPermissionpublic abstract void setPaint(Paint paint)
Paint атрибут для Graphics2D контекст. Вызов этого метода с a null Paint объект не имеет никакого эффекта на ток Paint атрибут этого Graphics2D.paint - Paint объект, который будет использоваться, чтобы генерировать цвет во время процесса рендеринга, или nullGraphics.setColor(java.awt.Color), getPaint(), GradientPaint, TexturePaintpublic abstract void setStroke(Stroke s)
Stroke для Graphics2D контекст.s - Stroke объект, который будет использоваться, чтобы перечеркнуть a Shape во время процесса рендерингаBasicStroke, getStroke()public abstract void setRenderingHint(RenderingHints.Key hintKey, Object hintValue)
RenderingHints class для определений некоторых общих ключей и значений.hintKey - ключ подсказки, которая будет установлена.hintValue - предпочтение указания значения указанной категории подсказки.getRenderingHint(RenderingHints.Key), RenderingHintspublic abstract Object getRenderingHint(RenderingHints.Key hintKey)
RenderingHints class для определений некоторых общих ключей и значений.hintKey - ключ, соответствующий подсказке, чтобы добраться.RenderingHints class.RenderingHints, setRenderingHint(RenderingHints.Key, Object)public abstract void setRenderingHints(Map<?,?> hints)
hints. Существующие значения для всех подсказок рендеринга отбрасываются и новый набор известных подсказок, и значения инициализируются от указанного Map объект. Категории подсказки включают средства управления для того, чтобы представить качество и полный компромисс времени/качества в процессе рендеринга. Обратитесь к RenderingHints class для определений некоторых общих ключей и значений.hints - рендеринг подсказывает, чтобы быть установленнымgetRenderingHints(), RenderingHintspublic abstract void addRenderingHints(Map<?,?> hints)
Map объект изменяется. Все другое предпочтение, не существующее в указанном объекте, оставляют неизмененным. Категории подсказки включают средства управления для того, чтобы представить качество и полный компромисс времени/качества в процессе рендеринга. Обратитесь к RenderingHints class для определений некоторых общих ключей и значений.hints - рендеринг подсказывает, чтобы быть установленнымRenderingHintspublic abstract RenderingHints getRenderingHints()
RenderingHints class для определений некоторых общих ключей и значений.RenderingHints это содержит текущее предпочтение.RenderingHints, setRenderingHints(Map)public abstract void translate(int x,
int y)
Graphics2D контекст к точке (x, y) в текущей системе координат. Изменяет Graphics2D контекст так, чтобы его новый источник соответствовал точке (x, y) в Graphics2D прежняя система координат контекста. Все координаты, используемые в последующих операциях рендеринга на этом графическом контексте, относительно этого нового источника.public abstract void translate(double tx,
double ty)
Graphics2D Transform с преобразованием преобразовывают. Последующий рендеринг преобразовывается указанным расстоянием относительно предыдущей позиции. Это эквивалентно вызову, преобразовывают (T), где T AffineTransform представленный следующей матрицей:
[ 1 0 tx ]
[ 0 1 ty ]
[ 0 0 1 ]
tx - расстояние, чтобы преобразовать вдоль оси Xty - расстояние, чтобы преобразовать вдоль оси Ypublic abstract void rotate(double theta)
Graphics2D
Transform с вращением преобразовывают. Последующий рендеринг поворачивается на указанные радианы относительно предыдущего источника. Это эквивалентно вызову transform(R), где R AffineTransform представленный следующей матрицей:
[ cos(theta) -sin(theta) 0 ]
[ sin(theta) cos(theta) 0 ]
[ 0 0 1 ]
Вращение с положительной угловой тетой поворачивает точки на положительной оси X к положительной оси Y.theta - угол вращения в радианахpublic abstract void rotate(double theta,
double x,
double y)
Graphics2D
Transform с преобразованным вращением преобразовывают. Последующий рендеринг преобразовывается преобразованием, которое создается, преобразовывая в указанное расположение, вращаясь указанными радианами, и преобразовывая назад тем же самым количеством как исходное преобразование. Это эквивалентно следующей последовательности вызовов:
translate(x, y);
rotate(theta);
translate(-x, -y);
Вращение с положительной угловой тетой поворачивает точки на положительной оси X к положительной оси Y.theta - угол вращения в радианахx - x координата источника вращенияy - y координата источника вращенияpublic abstract void scale(double sx,
double sy)
Graphics2D
Transform с преобразованием масштабирования Последующий рендеринг изменяется согласно указанным масштабным коэффициентам относительно предыдущего масштабирования. Это эквивалентно вызову transform(S), где S AffineTransform представленный следующей матрицей:
[ sx 0 0 ]
[ 0 sy 0 ]
[ 0 0 1 ]
sx - количество, на которое X координат в последующих операциях рендеринга умножаются относительно предыдущих операций рендеринга.sy - количество, на которое координаты Y в последующих операциях рендеринга умножаются относительно предыдущих операций рендеринга.public abstract void shear(double shx,
double shy)
Graphics2D
Transform со сдвигом преобразовывают. Последующий рендеринг сдвигает указанный множитель относительно предыдущей позиции. Это эквивалентно вызову transform(SH), где SH AffineTransform представленный следующей матрицей:
[ 1 shx 0 ]
[ shy 1 0 ]
[ 0 0 1 ]
shx - множитель, на который координаты смещаются в положительном X направлений оси как функция их координаты Yshy - множитель, на который координаты смещаются в положительном направлении Оси Y как функция их X координатpublic abstract void transform(AffineTransform Tx)
AffineTransform объект с Transform в этом Graphics2D согласно правилу, "последнему, определил сначала примененный". Если ток Transform Cx, результатом состава с Tx является новое Transform Cx'. Cx' становится током Transform для этого Graphics2D. Преобразование точки p обновленным Transform Cx' эквивалентен первому преобразованию p Tx и затем преобразованием результата оригиналом Transform Cx. Другими словами, Cx' (p) = Cx (Tx (p)). Копия Tx делается, в случае необходимости, таким образом, дальнейшие модификации к Tx не влияют на рендеринг.Tx - AffineTransform объект, который будет составлен с током TransformsetTransform(java.awt.geom.AffineTransform), AffineTransformpublic abstract void setTransform(AffineTransform Tx)
Graphics2D контекст. ПРЕДУПРЕЖДЕНИЕ: Этот метод никогда не должен использоваться, чтобы применить новое координатное преобразование сверху существующего преобразования потому что Graphics2D мог бы уже иметь преобразование, которое необходимо в других целях, таких как рендеринг компонентов Swing или применение преобразования масштабирования, чтобы корректироваться для разрешения принтера. Чтобы добавить координатное преобразование, используйте transform, rotate, scale, или shear методы. setTransform метод предназначается только для того, чтобы восстановить оригинал Graphics2D преобразуйте после рендеринга, как показано в этом примере:
// Get the current transform AffineTransform saveAT = g2.getTransform(); // Perform transformation g2d.transform(...); // Render g2d.draw(...); // Restore original transform g2d.setTransform(saveAT);
Tx - AffineTransform это было получено от getTransform методtransform(java.awt.geom.AffineTransform), getTransform(), AffineTransformpublic abstract AffineTransform getTransform()
Transform в Graphics2D контекст.AffineTransform в Graphics2D контекст.transform(java.awt.geom.AffineTransform), setTransform(java.awt.geom.AffineTransform)public abstract Paint getPaint()
Paint из Graphics2D контекст.Graphics2D Paint, который определяет цвет или образец.setPaint(java.awt.Paint), Graphics.setColor(java.awt.Color)public abstract Composite getComposite()
Composite в Graphics2D контекст.Graphics2D Composite, который определяет составляющий композит стиль.setComposite(java.awt.Composite)public abstract void setBackground(Color color)
Graphics2D контекст. Цвет фона используется для того, чтобы очистить область. Когда a Graphics2D создается для a Component, цвет фона наследован от Component. Установка цвета фона в Graphics2D контекст только влияет на последующее clearRect вызовы а не цвет фона Component. Изменить фон Component, используйте соответствующие методы Component.color - цвет фона, что isused в последующих звонках clearRectgetBackground(), Graphics.clearRect(int, int, int, int)public abstract Color getBackground()
Graphics2D Color, который определяет цвет фона.setBackground(java.awt.Color)public abstract Stroke getStroke()
Stroke в Graphics2D контекст.Graphics2D Stroke, который определяет стиль линии.setStroke(java.awt.Stroke)public abstract void clip(Shape s)
Clip с внутренней частью указанного Shape и наборы Clip к получающемуся пересечению. Указанное Shape преобразовывается с током Graphics2D
Transform прежде, чем быть пересеченным с током Clip. Этот метод используется, чтобы сделать ток Clip меньший. Сделать Clip больше, использовать setClip. Пользовательский клип, измененный этим методом, независим от отсечения, связанного с границами устройства и видимостью. Если никакой клип не был ранее установлен, или если клип был очищен, используя setClip с a null параметр, указанное Shape становится новым пользовательским клипом.s - Shape быть пересеченным с током Clip. Если s null, этот метод очищает ток Clip.public abstract FontRenderContext getFontRenderContext()
Font в пределах этого Graphics2D контекст. FontRenderContext инкапсулирует подсказки приложения, такие как сглаживание и дробные метрики, так же как целевое устройство определенная информация, такие как точки на дюйм. Эта информация должна быть предоставлена приложением при использовании объектов, которые выполняют типографское форматирование, такой как Font и TextLayout. Эта информация должна также быть предоставлена приложениями, которые выполняют их собственное расположение и нуждаются в точных измерениях различных характеристик глифов, таких как усовершенствование и строка height, когда различные подсказки рендеринга были применены к текстовому рендерингу.FontRenderContext, Font.createGlyphVector(java.awt.font.FontRenderContext, java.lang.String), TextLayout
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92