|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.awt.Graphics
java.awt.Graphics2D
public abstract class Graphics2D
Graphics2D
클래스는, Graphics
클래스를 확장해, 기하학적 도형, 좌표변화, 칼라 관리, 및 텍스트 배치에 대해 고도의 제어를 실시합니다. 이 클래스는, Java(TM) 플랫폼에서 2D 의 도형, 텍스트, 및 이미지를 draw하기 위한 기본 클래스입니다.
Graphics2D
객체에게 건네지는 모든 좌표는, 사용자 공간 (어플리케이션에 의해 사용된다)으로 불리는, 디바이스에 의존하지 않는 좌표계로 지정됩니다. Graphics2D
객체에는, 디바이스 공간에서 사용자 공간의 좌표를 디바이스에 의존하는 좌표로 변환하는 방법을 정의하는 AffineTransform
객체가, draw 상태의 일부로서 포함됩니다.
디바이스 공간의 좌표는, 일반적으로, 개별의 디바이스 픽셀을 나타내, 이러한 픽셀간에 무한하게 가는 간격에 늘어놓을 수 있고 있습니다. 일부의 Graphics2D
객체에서는, draw 조작을 수중에 넣을 수가 있습니다. 그래픽스 메타파일로서 수중에 넣는 것으로, 후에 물리적인 해상도가 불명한 구상 디바이스를 사용해 재생할 수가 있습니다. draw 조작을 수중에 넣으려면 해상도가 불명해서,Graphics2D
Transform
를 설정해 사용자 좌표를 가상 디바이스 공간으로 변환하도록(듯이) 합니다. 타겟 디바이스가 예상되는 해상도가 개산 됩니다만, 그 견적이 올바르지 않은 경우에는, 재생시에 한층 더 변환을 적용할 필요가 있습니다.
draw 속성 객체에 의해 실행되는 일부의 조작에는 디바이스 공간에서 처리되는 것도 있습니다만,Graphics2D
의 메소드는 모두 사용자 공간 좌표를 취급합니다.
모든 Graphics2D
객체는, draw가 행해지는 위치를 정의하는 타겟과 관련지을 수 있고 있습니다. GraphicsConfiguration
객체는, 픽셀 형식 및 해상도라고 하는 draw 타겟의 특성을 정의합니다. Graphics2D
객체에서는, 항상 같은 draw 타겟이 사용됩니다.
Graphics2D
객체가 작성될 때,GraphicsConfiguration
는,Graphics2D
(Component
또는 Image
)의 타겟으로서디폴트 변환을 지정합니다. 이 디폴트 변환에서는, 사용자 공간 좌표계를 화면과 프린터의 디바이스 좌표에 매핑 해, 원점을 디바이스의 타겟 영역의 좌상구석에, 우측으로 확장하려면 X 좌표를, 하부에 확장하려면 Y 좌표를 늘리는 것 같은 매핑을 실시합니다. 스크린 디바이스등의 72 dpi 에 가까운 디바이스의 경우, 디폴트 변환의 슬캘링은 그러한 디바이스의 식별 정보로 설정됩니다. 프린터등의 고해상도 디바이스의 경우, 디폴트 변환의 슬캘링은, 1 평방 인치 근처 약 72 사용자 공간 좌표로 설정됩니다. 이미지 버퍼에서는, 디폴트의 변환은 Identity
변환입니다.
Graphics2D
draw 속성에 의해 제어되는 4 개의 단계로 나눌 수가 있습니다. 렌더링에서는 이러한 스텝의 대부분을 최적화할 수 있습니다. 최적화는, 장래의 호출에 대비해 결과를 캐쉬에 포함해 두거나 복수의 가상 스텝을 실질적으로 1 개의 조작에 정리하거나 다양한 속성에 관한 단순한 공통의 문제점을, 조작외의 부분을 변경하는 것으로써 배제하거나 하는 것, 등에 의해 행해집니다. draw 프로세스의 순서를 다음에 설명합니다.
Clip
는 사용자 공간 Shape
에 의해 지정되어Graphics
및 Graphics2D
의 다양한 클립 조작 메소드를 사용해 프로그램에 의해 제어됩니다. 이 「사용자 클립」은, 현재의 Transform
에 의해 디바이스 공간에 변환되어 윈도우의 가시성 및 디바이스의 크기에 의해 정의되는 「디바이스 클립」이라고 결합됩니다. 사용자 클립과 디바이스 클립의 결합에 의해, 최종적인 클리핑 영역을 결정하는 「복합 클립」을 정의합니다. 렌더링 시스템은, 사용자 클립을 변경해 복합 클립의 결과를 반영할 수 없습니다.
Graphics2D
문맥의 현재 Composite
속성을 사용해, 목적지의 draw 표면으로 지정된 색을 바른다
Shape
의 조작
draw(Shape)
조작의 경우,Graphics2D
문맥의 현재 Stroke
속성으로 createStrokedShape
메소드를 사용해, 지정의 Shape
의 윤곽을 포함하는 새로운 Shape
객체가 구축됩니다.
Shape
는,Graphics2D
문맥의 현재의 Transform
를 사용해 사용자 공간으로부터 디바이스 공간에 변환됩니다.
Shape
의 윤곽은,Shape
의 getPathIterator
메소드를 사용해 추출됩니다. 이 메소드는,Shape
의 경계를 따라 반복 처리를 실시하는 PathIterator
객체를 돌려줍니다.
PathIterator
객체에 의해 반환되는 곡선 세그먼트(segment)를 Graphics2D
객체를 처리할 수 없는 경우는,Shape
의 평탄화를 실시하는 대체 메소드 getPathIterator
를 호출할 수가 있습니다.
Graphics2D
문맥의 현재 Paint
가, 디바이스 공간에서 draw 하는 색을 지정하는 PaintContext
를 취득하기 위해서 조회됩니다.
String
를 draw 하기 위해서 필요한 Glyph세트는, 이하의 순서로 지정됩니다.
String
의 경우, 폰트가 구현하는 기본 레이아웃 및 형상 결정 알고리즘에 관계없이 그것들을 이용해 표시하기 위해서,Graphics2D
문맥의 현재의 Font
는 String
의 Unicode 캐릭터 라인을 Glyph세트로 변환하도록(듯이) 요구됩니다.
AttributedCharacterIterator
의 경우, 반복자는, 매입 폰트 속성을 사용해, 그 자체를 TextLayout
로 변환하도록(듯이) 요구됩니다. TextLayout
는, 기입 방향이 다른 복수의 폰트를 위해서(때문에) 자동적으로 Unicode 의 쌍방향 레이아웃 조정을 실행하는, 보다 고성능인 Glyph레이아우트아르고리즘을 구현할 수 있습니다.
GlyphVector
의 경우,GlyphVector
객체는, 각 Glyph의 위치를 나타내는 명시적인 좌표를 가지는 폰트 독자적인 적절한 Glyph코드를 벌써 포함하고 있습니다.
Font
를 조회하면(자), 지정된 Glyph의 아우트라인을 취득할 수 있습니다. 이러한 아우트라인은, 순서 1 으로 지정된 각 Glyph의 위치를 기준으로 한 사용자 공간의 형상으로서 처리됩니다.
Shape
의 조작」으로 설명한 것처럼 전부 칠해집니다.
Paint
가, 디바이스 공간에서 draw 하는 색을 지정하는 PaintContext
를 취득하기 위해서 조회됩니다.
Image
의 조작
Image
의 바운딩 박스로 정의됩니다. 이 바운딩 박스는,Image
객체의 로컬인 좌표계인 이미지 공간에서 지정됩니다.
AffineTransform
이 drawImage(Image, AffineTransform, ImageObserver)
에게 건네지는 경우는, 이미지 공간으로부터 사용자 공간에 바운딩 박스를 변환하기 위해서, 그 AffineTransform
가 사용됩니다. AffineTransform
가 지정되지 않는 경우, 바운딩 박스는 벌써 사용자 공간에 있는 것으로서 다루어집니다.
Image
의 바운딩 박스는, 현재의 Transform
를 사용해 사용자 공간으로부터 디바이스 공간에 변환됩니다. 다만, 바운딩 박스를 변환한 결과가, 디바이스 공간에서 구형 영역이 된다고는 할 수 없습니다.
Image
객체는 draw 하는 색을 지정합니다. 색은, 현재의 Transform
와 옵션의 이미지 변환에 의해 지정된 소스로부터 목적지에의 매핑에 따라 샘플링 됩니다.
Graphics2D
draw 속성의 디폴트 값를 다음에 나타냅니다.
Paint
Component
의 색
Font
Component
의 Font
Stroke
Transform
Component
의 GraphicsConfiguration
용의 getDefaultTransform
Composite
AlphaComposite.SRC_OVER
규칙
Clip
Clip
이루어, 출력은 Component
에 클립 된다
Java 2D(TM) (Java(TM) 2 플랫폼) API 는, 평활화 렌더링을 지원하고 있습니다. 1 픽셀폭의 펜은, 픽셀 N+1 와 대비한 픽셀 N 에 완전하게 들어갈 필요는 없습니다. 펜은, 부분적으로 양쪽 모두의 픽셀에 걸릴 수가 있습니다. 이동하고 있는 펜의 인연이 양쪽 모두의 픽셀에 걸리면(자), 펜의 서브 픽셀 위치가 사용자에게 표시되기 (위해)때문에, 대폭 펜의 바이어스 방향을 선택할 필요는 없습니다. 한편,KEY_ANTIALIASING
힌트 키를 VALUE_ANTIALIAS_OFF
힌트치로 설정하는 것에 의해 평활화를 무효로 했을 경우는, 디바이스 공간에서 정수 좌표에 따라 draw 하고 있을 때 등, 펜이 픽셀 경계를 넘으려 하고 있을 때 어느 쪽의 픽셀을 수정할까 판단하기 위해서(때문에), 렌더링은 바이어스를 적용할 필요가 있습니다. 평활화 렌더링의 기능에 의해, draw 모델은 펜의 바이어스를 지정하는 필요성이 없어졌습니다만, 화면상에서 1 픽셀폭의 수평선 및 수직선을 draw 하는 공통의 케이스에서는, 평활화 렌더링과 비평활화 렌더링은 똑같이 동작할 필요가 있습니다. KEY_ANTIALIASING
힌트 키를 VALUE_ANTIALIAS_ON
로 설정해 평활화를 유효하게 했기 때문에, 이 선폭이 돌연 2 배가 되어 불투명도가 반이 되는 것을 막으려면 , 그러한 선의 윤곽선을 모델로 지정하는 것에 의해, 그 선이 특정의 픽셀세트를 완전하게 커버해 윤곽이 선명히 되도록(듯이) 합니다.
Java 2D API 는 JDK 1.1 의 draw 동작과의 호환성을 유지하고 있어, Java 2D API 에서는 종래부터의 조작이나 기존의 렌더링의 동작으로 변경은 없습니다. 일반적인 draw
메소드 및 fill
메소드에 매핑 되는 종래의 메소드가 정의되고 있기 (위해)때문에,Stroke
속성과 Transform
속성의 설정 및 draw 힌트에 근거해 Graphics2D
가 Graphics
를 어떻게 확장하고 있을지가 명확하게 나타나고 있습니다. 그 정의는, 디폴트의 속성 설정에서는 똑같이 실행됩니다. 예를 들어, 디폴트의 Stroke
는, 폭 1 및 파선 없음의 BasicStroke
이며, 화면 draw의 디폴트의 Transform 는 항등변환입니다.
다음의 2 개의 규칙은, 에일리어징 제거 또는 비에일리어징 제거의 어느 쪽이 사용되고 있어도, 예측 가능한 draw 동작을 제공합니다.
BasicStroke
객체를 사용해 stroke 한 선 및 도형의 윤곽을 「정규화」하는 것으로, draw 가능한 다양한 위치에서 비에일리어징 제거 draw 또는 에일리어징 제거 draw 할 경우에, 일관성이 있는 윤곽을 draw 할 수가 있습니다. 이 정규화 프로세스는,KEY_STROKE_CONTROL
힌트에 의해 제어됩니다. 정확한 정규화 알고리즘은 지정됩니다만, 이 정규화의 목표는, 픽셀 구라두에 선이 어떻게 들어가는 것에 관계없이, 시각적으로 일관성이 있는 선을 draw 할 수 있도록(듯이) 하는 것, 및 에일리어징 제거 모드에서의 수평선 및 수직선을 보다 치밀하게 해, 에일리어징 제거되어 있지 않은 경우의 선이 될 수 있도록 접근하는 것입니다. 일반적으로의 정규화의 스텝에서는, 부동 소수점의 선폭이 동등의 가능성으로 짝수 또는 홀수의 픽셀수에 사사오입 할 수 있도록(듯이), 에일리어징 제거 된 선의 끝을 보다 픽셀의 중심에 해 겹치는 양을 줄이든가, 혹은 에일리어징 제거되어 있지 않은 선의 서브 픽셀의 위치 결정을 조정합니다. 이 프로세스에서는, 끝을 픽셀의 반까지 이동해 (일반적으로은 양축으로 따라 정의 무한대 방향), 이러한 결과의 일관성을 높일 수가 있습니다.
다음에 나타내는 일반적인 종래의 메소드의 정의는, 디폴트 속성 설정에서는 이전으로 지정된 동작과 같이 실행됩니다.
fillRect
,fillRoundRect
,fillOval
,fillArc
,fillPolygon
,clearRect
등의 fill
조작의 경우는, 목적의 Shape
를 지정해 fill
를 호출할 수가 있습니다. 예를 들어 구형을 전부 칠하는 경우는,
fill(new Rectangle(x, y, w, h));(을)를 호출합니다.
drawLine
,drawRect
,drawRoundRect
,drawOval
,drawArc
,drawPolyline
,drawPolygon
등의 draw 조작의 경우는, 목적의 Shape
를 지정해 draw
를 호출할 수가 있습니다. 예를 들어 구형을 draw 하는 경우는,
draw(new Rectangle(x, y, w, h));(을)를 호출합니다.
draw3DRect
메소드와 fill3DRect
메소드는,Graphics
클래스에서는 drawLine
메소드와 fillRect
메소드를 사용해 구현되고 있습니다. 이러한 동작은,Graphics2D
문맥의 현재의 Stroke
객체와 Paint
객체에 근거해 예측할 수 있습니다. Graphics2D
클래스는, 현재의 Paint
를 오버라이드(override) 해, 이러한 2 개의 객체의 구현을 현재의 Color
를 배타적으로 사용하는 버젼으로 오버라이드(override) 합니다. 이 클래스는, 기존의 메소드와 완전하게 동일한 동작을 기술하기 위해서,Stroke
의 현재의 설정 (와)는 관계없는 것으로 fillRect
를 사용합니다.
Graphics
클래스는, 페인트 되는 색을 제어하기 위해서 setColor
메소드만을 정의합니다. Java 2D API 는,Color
객체를 확장해 새로운 Paint
인터페이스를 구현하므로, 기존의 setColor
메소드는 현재의 Paint
속성을 Color
객체로 설정하기 위한 편리한 메소드가 되어 있습니다. setColor(c)
는 setPaint(c)
에 상당합니다.
Graphics
클래스는, 색을 목적지에 적용하는 방법을 제어하기 위해서 2 개의 메소드를 정의합니다.
setPaintMode
메소드는,setComposite(new AlphaComposite.SrcOver)
에 상당하는 디폴트의 Composite
를 설정하는 편리한 메소드로서 구현됩니다.
setXORMode(Color xorcolor)
메소드는, 소스 칼라의 Alpha
컴퍼넌트를 무시해, 목적지 칼라를 그 값으로 설정하는 특수한 Composite
객체를 설정하기 위한 편리한 메소드로서 구현됩니다.
dstpixel = (PixelOf(srccolor) ^ PixelOf(xorcolor) ^ dstpixel);
RenderingHints
생성자 의 개요 | |
---|---|
protected |
Graphics2D ()
새로운 Graphics2D 객체를 구축합니다. |
메소드의 개요 | |
---|---|
abstract void |
addRenderingHints (Map <?,?> hints)
draw 알고리즘에 관한 임의의 수의 추천 설정의 값을 설정합니다. |
abstract void |
clip (Shape s)
현재의 Clip 가 지정된 Shape 의 내부와 교차시켜, 결과적으로 생긴 공통 부분에 그 Clip 를 설정합니다. |
abstract void |
draw (Shape s)
현재의 Graphics2D 문맥의 설정을 사용하는 것으로,Shape 의 윤곽을 stroke로 draw 합니다. |
void |
draw3DRect (int x,
int y,
int width,
int height,
boolean raised)
지정된 구형의 윤곽을 3D 로 강조 표시해 draw 합니다. |
abstract void |
drawGlyphVector (GlyphVector g,
float x,
float y)
Graphics2D 문맥의 draw 속성을 사용하는 것으로, 지정된 GlyphVector 의 텍스트를 draw 합니다. |
abstract void |
drawImage (BufferedImage img,
BufferedImageOp op,
int x,
int y)
BufferedImageOp 로 필터 처리되는 BufferedImage 를 draw 합니다. |
abstract boolean |
drawImage (Image img,
AffineTransform xform,
ImageObserver obs)
이미지 공간으로부터 사용자 공간에의 변환을 적용하고 나서, 이미지를 draw 합니다. |
abstract void |
drawRenderableImage (RenderableImage img,
AffineTransform xform)
이미지 공간으로부터 사용자 공간에의 변환을 적용하고 나서, RenderableImage 를 draw 합니다. |
abstract void |
drawRenderedImage (RenderedImage img,
AffineTransform xform)
이미지 공간으로부터 사용자 공간에의 변환을 적용하고 나서, RenderedImage 를 draw 합니다. |
abstract void |
drawString (AttributedCharacterIterator iterator,
float x,
float y)
지정된 반복자에 의해 텍스트를 그려, TextAttribute 클래스의 스펙에 근거해 속성을 적용합니다. |
abstract void |
drawString (AttributedCharacterIterator iterator,
int x,
int y)
지정된 반복자에 의해 텍스트를 그려, TextAttribute 클래스의 스펙에 근거해 속성을 적용합니다. |
abstract void |
drawString (String str,
float x,
float y)
Graphics2D 문맥의 현재의 텍스트 속성 상태를 사용하는 것으로, 특정의 String 에 의해 지정된 텍스트를 draw 합니다. |
abstract void |
drawString (String str,
int x,
int y)
Graphics2D 문맥의 현재의 텍스트 속성 상태를 사용하는 것으로, 지정된 String 의 텍스트를 draw 합니다. |
abstract void |
fill (Shape s)
Graphics2D 문맥의 설정을 사용하는 것으로,Shape 의 내부를 전부 칠합니다. |
void |
fill3DRect (int x,
int y,
int width,
int height,
boolean raised)
현재의 색으로 전부 칠해지고 있는, 3D 로 강조 표시된 구형을 그립니다. |
abstract Color |
getBackground ()
영역을 클리어 하는데 사용하는 백그라운드 칼라를 돌려줍니다. |
abstract Composite |
getComposite ()
Graphics2D 문맥에서의 현재의 Composite 를 돌려줍니다. |
abstract GraphicsConfiguration |
getDeviceConfiguration ()
이 Graphics2D 에 관련한 디바이스 구성을 돌려줍니다. |
abstract FontRenderContext |
getFontRenderContext ()
이 Graphics2D 문맥에서의 Font 의 draw 문맥을 돌려줍니다. |
abstract Paint |
getPaint ()
Graphics2D 문맥에서의 현재의 Paint 를 돌려줍니다. |
abstract Object |
getRenderingHint (RenderingHints.Key hintKey)
draw 알고리즘의 추천 설정의 값을 1 개 돌려줍니다. |
abstract RenderingHints |
getRenderingHints ()
draw 알고리즘의 추천 설정을 돌려줍니다. |
abstract Stroke |
getStroke ()
Graphics2D 문맥에서의 현재의 Stroke 를 돌려줍니다. |
abstract AffineTransform |
getTransform ()
Graphics2D 문맥에서의 현재의 Transform 의 카피를 돌려줍니다. |
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)
Graphics2D 문맥의 Composite 를 설정합니다. |
abstract void |
setPaint (Paint paint)
Graphics2D 문맥에 Paint 속성을 설정합니다. |
abstract void |
setRenderingHint (RenderingHints.Key hintKey,
Object hintValue)
draw 알고리즘의 추천 설정의 값을 1 개 설정합니다. |
abstract void |
setRenderingHints (Map <?,?> hints)
draw 알고리즘의 모든 추천 설정의 값을, 지정된 hints 에 옮겨놓습니다. |
abstract void |
setStroke (Stroke s)
Graphics2D 문맥의 Stroke 를 설정합니다. |
abstract void |
setTransform (AffineTransform Tx)
Graphics2D 문맥으로 Transform 를 덧쓰기합니다. |
abstract void |
shear (double shx,
double shy)
현재의 Graphics2D Transform 를 셔링 변환과 연결합니다. |
abstract void |
transform (AffineTransform Tx)
AffineTransform 객체를 이 Graphics2D 에서의 Transform 를 사용해, 후 지정 우선 적용이라고 하는 규칙에 따라 변환합니다. |
abstract void |
translate (double tx,
double ty)
현재의 Graphics2D Transform 를 이동 변환과 연결합니다. |
abstract void |
translate (int x,
int y)
Graphics2D 문맥의 원점을, 현재의 좌표계의 점 (x, y)으로 이동합니다. |
클래스 java.awt. Graphics 로부터 상속된 메소드 |
---|
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 , toString |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , getClass , hashCode , notify , notifyAll , wait , wait , wait |
생성자 의 상세 |
---|
protected Graphics2D()
Graphics2D
객체를 구축합니다. Graphics2D
는 abstract 클래스이며, 다양한 출력 디바이스를 위해서(때문에) 서브 클래스에서 커스터마이즈 되지 않으면 안 되기 때문에,Graphics2D
객체를 직접 작성할 수 없습니다. 대신에, 다른 Graphics2D
객체로부터 취득하는지,Component
에 의해 작성하든가, 혹은 BufferedImage
객체등의 이미지로부터 취득하지 않으면 안됩니다.
Component.getGraphics()
,
Graphics.create()
메소드의 상세 |
---|
public void draw3DRect(int x, int y, int width, int height, boolean raised)
강조 표시 효과에 사용되는 색은, 현재의 색에 근거해 지정됩니다. draw 된 구형은, 폭 width + 1
픽셀, 높이 height + 1
픽셀의 영역을 커버합니다. 이 메소드는 현재의 Color
만을 사용해, 현재의 Paint
는 무시합니다.
Graphics
내의 draw3DRect
x
- draw 되는 구형의 x 좌표y
- draw 되는 구형의 y 좌표width
- draw 되는 구형의 폭height
- draw 되는 구형의 높이raised
- 구형이 표면으로부터 떠오른 것처럼 보이는지,
표면에 조각해 붐비어진 것처럼 보이는지를 지정한다
boolean 치Graphics.fill3DRect(int, int, int, int, boolean)
public void fill3DRect(int x, int y, int width, int height, boolean raised)
Color
에 의해 지정됩니다. 이 메소드는 현재의 Color
만을 사용해, 현재의 Paint
는 무시합니다.
Graphics
내의 fill3DRect
x
- 전부 칠해지는 구형의 x 좌표y
- 전부 칠해지는 구형의 y 좌표width
- 전부 칠해지는 구형의 폭height
- 전부 칠해지는 구형의 높이raised
- 구형이 표면으로부터 떠오른 것처럼 보이는지,
표면에 조각해 붐비어진 것처럼 보이는지를 지정한다
boolean 치Graphics.draw3DRect(int, int, int, int, boolean)
public abstract void draw(Shape s)
Graphics2D
문맥의 설정을 사용하는 것으로,Shape
의 윤곽을 stroke로 draw 합니다. 적용되는 draw 속성에는,Clip
,Transform
,Paint
,Composite
, 및 Stroke
의 각 속성이 있습니다.
s
- draw 되는 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)
Graphics2D
에서의 현재의 Transform
에 의해 행해집니다. 지정된 변환은,Graphics2D
문맥의 변환 속성에 적용되기 전에 이미지에 적용됩니다. 적용되는 draw 속성에는,Clip
,Transform
, 및 Composite
의 각 속성이 있습니다. 다만, 지정된 변환이 역변환을 가지지 않는 경우, draw는 행해지지 않습니다.
img
- draw 되는 지정 이미지.
img
가 null 의 경우에는 아무것도 실시하지 않는xform
- 이미지 공간으로부터 사용자 공간에의 변환obs
- Image
의 것보다 많은 부분이
변환된다고 통지된다
ImageObserver
Image
가 모두 로드 되어
완전하게 draw 되었을 경우는 true
,
Image
가 아직 로드안의 경우는 false
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)
BufferedImageOp
로 필터 처리되는 BufferedImage
를 draw 합니다. 적용되는 draw 속성에는,Clip
,Transform
, 및 Composite
의 각 속성이 있습니다. 이것은, 다음의 조작에 상당합니다.
img1 = op.filter(img, null); drawImage(img1, new AffineTransform(1f, 0f, 0f, 1f, x, y), null);
op
- draw전에 이미지에 적용되는 필터img
- draw 되는 지정 BufferedImage
.
img
가 null 의 경우에는 아무것도 실시하지 않는x
- 이미지의 좌상구석이 draw 되는 사용자 공간의
위치의 x 좌표y
- 이미지의 좌상구석이 draw 되는 사용자 공간의
위치의 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
를 draw 합니다. 사용자 공간으로부터 디바이스 공간에의 변환은,Graphics2D
에서의 현재의 Transform
에 의해 행해집니다. 지정된 변환은,Graphics2D
문맥의 변환 속성에 적용되기 전에 이미지에 적용됩니다. 적용되는 draw 속성에는,Clip
,Transform
, 및 Composite
의 각 속성이 있습니다. 다만, 지정된 변환이 역변환을 가지지 않는 경우, draw는 행해지지 않습니다.
img
- draw 되는 이미지. img
가
null 의 경우에는 아무것도 실시하지 않는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
를 draw 합니다. 사용자 공간으로부터 디바이스 공간에의 변환은,Graphics2D
에서의 현재의 Transform
에 의해 행해집니다. 지정된 변환은,Graphics2D
문맥의 변환 속성에 적용되기 전에 이미지에 적용됩니다. 적용되는 draw 속성에는,Clip
,Transform
, 및 Composite
의 각 속성이 있습니다. 다만, 지정된 변환이 역변환을 가지지 않는 경우, draw는 행해지지 않습니다.
Graphics2D
객체로 설정된 draw 힌트는,RenderableImage
의 draw에 사용할 수 있습니다. 특정의 RenderableImage
에 의해 인식된 특정의 힌트에 명시적인 제어가 필요한 경우나, 어느 힌트가 사용될까를 알아 둘 필요가 있는 경우에는,RenderedImage
를 RenderableImage
로부터 직접 취득해,drawRenderedImage
를 사용해 draw 할 필요가 있습니다.
img
- draw 되는 이미지. img
가
null 의 경우에는 아무것도 실시하지 않는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)
Graphics2D
문맥의 현재의 텍스트 속성 상태를 사용하는 것으로, 지정된 String
의 텍스트를 draw 합니다. 최초의 문자의 baseline는, 사용자 공간의 것 (x, y)에 위치합니다. 적용되는 draw 속성에는,Clip
,Transform
,Paint
,Font
, 및 Composite
의 각 속성이 있습니다. 헤브라이어나 아라비아어등의 필기 시스템의 문자에서는, Glyph는 오른쪽에서 왼쪽으로 draw 됩니다. 이 경우에는, 지정된 좌표는 baseline의 좌단의 문자 위치에 있습니다.
Graphics
내의 drawString
str
- draw 되는 캐릭터 라인x
- String
가 draw 된다
위치의 x 좌표y
- String
가 draw 된다
위치의 y 좌표
NullPointerException
- str
가
null
의 경우Graphics.drawBytes(byte[], int, int, int, int)
,
Graphics.drawChars(char[], int, int, int, int)
public abstract void drawString(String str, float x, float y)
Graphics2D
문맥의 현재의 텍스트 속성 상태를 사용하는 것으로, 특정의 String
에 의해 지정된 텍스트를 draw 합니다. 최초의 문자의 baseline는, 사용자 공간의 것 (x, y)에 위치합니다. 적용되는 draw 속성에는,Clip
,Transform
,Paint
,Font
, 및 Composite
의 각 속성이 있습니다. 헤브라이어나 아라비아어등의 필기 시스템의 문자에서는, Glyph는 오른쪽에서 왼쪽으로 draw 됩니다. 이 경우에는, 지정된 좌표는 baseline의 좌단의 문자 위치에 있습니다.
str
- draw 되는 String
x
- String
가 draw 된다
위치의 x 좌표y
- String
가 draw 된다
위치의 y 좌표
NullPointerException
- str
가
null 의 경우setPaint(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
클래스의 스펙에 근거해 속성을 적용합니다. 최초의 문자의 baseline는, 사용자 공간의 것 (x, y)에 위치합니다. 헤브라이어나 아라비아어등의 필기 시스템의 문자에서는, Glyph는 오른쪽에서 왼쪽으로 draw 됩니다. 이 경우에는, 지정된 좌표는 baseline의 좌단의 문자 위치에 있습니다.
Graphics
내의 drawString
iterator
- draw 되는 텍스트를 가지는 반복자x
- 반복자의 텍스트가 draw 된다
x 좌표y
- 반복자의 텍스트가 draw 된다
y 좌표
NullPointerException
- iterator
가
null 의 경우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 drawString(AttributedCharacterIterator iterator, float x, float y)
TextAttribute
클래스의 스펙에 근거해 속성을 적용합니다. 최초의 문자의 baseline는, 사용자 공간의 것 (x, y)에 위치합니다. 헤브라이어나 아라비아어등의 필기 시스템의 문자에서는, Glyph는 오른쪽에서 왼쪽으로 draw 됩니다. 이 경우에는, 지정된 좌표는 baseline의 좌단의 문자 위치에 있습니다.
iterator
- draw 되는 텍스트를 가지는 반복자x
- 반복자의 텍스트가 draw 된다
x 좌표y
- 반복자의 텍스트가 draw 된다
y 좌표
NullPointerException
- iterator
가
null 의 경우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 drawGlyphVector(GlyphVector g, float x, float y)
Graphics2D
문맥의 draw 속성을 사용하는 것으로, 지정된 GlyphVector
의 텍스트를 draw 합니다. 적용되는 draw 속성에는,Clip
,Transform
,Paint
, 및 Composite
의 각 속성이 있습니다. GlyphVector
는, 개개의 Glyph를 Font
로부터 지정합니다. 또,GlyphVector
는, Glyph의 위치도 포함할 수 있습니다. 이 메소드를 사용하면(자), 화면에 일련의 캐릭터 라인을 가장 빠르게 draw 할 수 있습니다.
g
- draw 되는 GlyphVector
x
- Glyph가 draw 되는 사용자 공간의
x 위치y
- Glyph가 draw 되는 사용자 공간의
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)
Graphics2D
문맥의 설정을 사용하는 것으로,Shape
의 내부를 전부 칠합니다. 적용되는 draw 속성에는,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
가 false 의 경우, 이 메소드는 지정된 Shape
의 내부가 지정된 Rectangle
와 교차할지 어떨지를 조사합니다. onStroke
가 true
의 경우, 이 메소드는 지정된 Shape
의 윤곽의 Stroke
가 지정된 Rectangle
와 교차할지 어떨지를 조사합니다. 고려되는 draw 속성에는,Clip
,Transform
, 및 Stroke
의 각 속성이 있습니다.
rect
- 히트를 조사하는 디바이스 공간의 영역s
- 히트를 조사하는 Shape
onStroke
- stroke로 draw 된 형상을 조사할까
전부 칠해진 형상을 조사하는지를 선택하는 플래그. 플래그가 true
의 경우는,
Stroke
의 윤곽이 조사할 수 있다. 플래그가
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)
Graphics2D
문맥의 Composite
를 설정합니다. Composite
는,drawImage
,drawString
,draw
, 및 fill
등의 모든 draw 메소드로 사용됩니다. Composite
는, 그래픽스 디바이스에서의 draw 처리중에 새로운 픽셀이 기존의 픽셀과 어떻게 결합되는지를 지정합니다.
이 Graphics2D
문맥이 표시 화면의 Component
에 draw 되고 있는 경우,Composite
는 AlphaComposite
클래스의 인스턴스가 아닌 커스텀 객체입니다. 시큐리티 매니저가 있는 경우는, 시큐리티 매니저의 checkPermission
메소드가 액세스권 AWTPermission("readDisplayPixels")
를 지정해 불려 갑니다.
comp
- draw에 사용되는 Composite
객체
SecurityException
- 화면에 draw 하기 위해서 커스텀 Composite
객체가
사용되고 있어 시큐리티 매니저가 설정되어 있는 경우에,
시큐리티 매니저의 checkPermission
메소드가
이 조작을 허가하지 않을 때Graphics.setXORMode(java.awt.Color)
,
Graphics.setPaintMode()
,
getComposite()
,
AlphaComposite
,
SecurityManager.checkPermission(java.security.Permission)
,
AWTPermission
public abstract void setPaint(Paint paint)
Graphics2D
문맥에 Paint
속성을 설정합니다. 이 메소드를 null
Paint
객체로 호출해도, 이 Graphics2D
의 현재의 Paint
속성에는 영향을 주지 않습니다.
paint
- draw 프로세스로 색을 생성하기 위해서 사용된다
Paint
, 또는 null
Graphics.setColor(java.awt.Color)
,
getPaint()
,
GradientPaint
,
TexturePaint
public abstract void setStroke(Stroke s)
Graphics2D
문맥의 Stroke
를 설정합니다.
s
- draw 프로세스로 Shape
를 stroke로
draw 하기 위해서 사용되는 Stroke
객체BasicStroke
,
getStroke()
public abstract void setRenderingHint(RenderingHints.Key hintKey, Object hintValue)
RenderingHints
클래스에서, 공통의 키와 값의 정의의 일부를 참조할 수 있습니다.
hintKey
- 설정되는 힌트의 키hintValue
- 지정된 힌트 카테고리의 추천 설정을
가리키는 값getRenderingHint(RenderingHints.Key)
,
RenderingHints
public abstract Object getRenderingHint(RenderingHints.Key hintKey)
RenderingHints
클래스에서, 공통의 키와 값의 정의의 일부를 참조할 수 있습니다.
hintKey
- 취득하는 힌트에 대응하는 키
RenderingHints
클래스에서
정의되고 있는RenderingHints
,
setRenderingHint(RenderingHints.Key, Object)
public abstract void setRenderingHints(Map <?,?> hints)
hints
에 옮겨놓습니다. draw 힌트의 기존의 값은 모두 파기되어 기존의 힌트와 값의 새로운 세트가 지정된 Map
객체로부터 초기화됩니다. Hint 카테고리에는, draw 품질을 제어하는 것으로, draw 프로세스에서의 draw 속도와 draw 품질과의 전체적인 타협점을 제어하는 것이 포함됩니다. RenderingHints
클래스에서, 공통의 키와 값의 정의의 일부를 참조할 수 있습니다.
hints
- 설정되는 draw 힌트getRenderingHints()
,
RenderingHints
public abstract void addRenderingHints(Map <?,?> hints)
Map
객체에 있는 draw 힌트의 값만이 변경됩니다. 지정된 객체에 없는 추천 설정은 변경되지 않습니다. Hint 카테고리에는, draw 품질을 제어하는 것으로, draw 프로세스에서의 draw 속도와 draw 품질과의 전체적인 타협점을 제어하는 것이 포함됩니다. RenderingHints
클래스에서, 공통의 키와 값의 정의의 일부를 참조할 수 있습니다.
hints
- 설정되는 draw 힌트RenderingHints
public abstract RenderingHints getRenderingHints()
RenderingHints
클래스에서, 공통의 키와 값의 정의의 일부를 참조할 수 있습니다.
RenderingHints
의
인스턴스에의 참조RenderingHints
,
setRenderingHints(Map)
public abstract void translate(int x, int y)
Graphics2D
문맥의 원점을, 현재의 좌표계의 점 (x, y)으로 이동합니다. Graphics2D
문맥을 수정해, 새로운 원점이 Graphics2D
문맥의 원의 좌표계의 점 (x, y)에 대응하도록(듯이) 합니다. 이 그래픽스 문맥으로 그 이후의 draw 조작으로 사용되는 좌표는 모두, 이 새로운 원점을 기준으로 합니다.
Graphics
내의 translate
x
- 지정된 x 좌표y
- 지정된 y 좌표public abstract void translate(double tx, double ty)
Graphics2D
Transform
를 이동 변환과 연결합니다. 이후의 draw는, 이전의 위치를 기준으로 지정된 거리로 이동합니다. 이것은, transform(T)를 호출하는 것에 상당합니다. 다만, T 는 다음의 행렬에 의해 표현되는 AffineTransform
입니다.
[ 1 0 tx ] [ 0 1 ty ] [ 0 0 1 ]
tx
- x 축으로 따라 이동하는 거리ty
- y 축으로 따라 이동하는 거리public abstract void rotate(double theta)
Graphics2D
Transform
를 회전 변환과 연결합니다. 이후의 draw는, 이전의 원점을 기준으로 지정된 라디안으로 회전합니다. 이것은,transform(R)
를 호출하는 것에 상당합니다. 다만, R 는 다음의 행렬에 의해 표현되는 AffineTransform
입니다.
[ cos(theta) -sin(theta) 0 ] [ sin(theta) cos(theta) 0 ] [ 0 0 1 ]정의 각도 theta 로 회전하면(자), 정의 x 축의 점이 정의 y 축으로 향해 회전됩니다.
theta
- 라디안으로 나타낸 회전 각도public abstract void rotate(double theta, double x, double y)
Graphics2D
Transform
를 이동 후의 회전 변환과 연결합니다. 이후의 draw는, 지정된 위치로 이동해, 지정된 라디안으로 회전해, 원의 평행이동과 같은 양으로 평행이동 다시 하는 것으로 작성되는 변환에 의해 변환됩니다. 이것은, 다음의 calling sequence에 상당합니다.
translate(x, y); rotate(theta); translate(-x, -y);정의 각도 theta 로 회전하면(자), 정의 x 축의 점이 정의 y 축으로 향해 회전됩니다.
theta
- 라디안으로 나타낸 회전 각도x
- 회전의 원점의 x 좌표y
- 회전의 원점의 y 좌표public abstract void scale(double sx, double sy)
Graphics2D
Transform
를 슬캘링 변환과 연결합니다. 이후의 draw는, 이전의 슬캘링을 기준으로 지정된 슬캘링 계수에 따라 사이즈 변경됩니다. 이것은,transform(S)
를 호출하는 것에 상당합니다. 다만, S 는 다음의 행렬에 의해 표현되는 AffineTransform
입니다.
[ sx 0 0 ] [ 0 sy 0 ] [ 0 0 1 ]
sx
- 이후의 draw 조작의 X 좌표가
이전의 draw 조작을 기준에
곱셈되는 양sy
- 이후의 draw 조작의 Y 좌표가
이전의 draw 조작을 기준에
곱셈되는 양public abstract void shear(double shx, double shy)
Graphics2D
Transform
를 셔링 변환과 연결합니다. 이후의 draw는, 이전의 위치를 기준으로 지정된 승수로 셔링 됩니다. 이것은,transform(SH)
를 호출하는 것에 상당합니다. 다만, SH 는 다음의 행렬에 의해 표현되는 AffineTransform
입니다.
[ 1 shx 0 ] [ shy 1 0 ] [ 0 0 1 ]
shx
- Y 좌표의 함수로서 좌표를 정의
X 축방향으로 쉬프트하기 위한 승수shy
- X 좌표의 함수로서 좌표를 정의
Y 축방향으로 쉬프트하기 위한 승수public abstract void transform(AffineTransform Tx)
AffineTransform
객체를 이 Graphics2D
에서의 Transform
를 사용해, 후 지정 우선 적용이라고 하는 규칙에 따라 변환합니다. 현재의 Transform
가 Cx 인 경우, Tx 에 의한 변환의 결과는 새로운 Transform
Cx'가 됩니다. Cx'는, 이 Graphics2D
용의 현재의 Transform
가 됩니다. 갱신된 Transform
Cx'로 점 p 를 변환하는 것은, 최초로 Tx 로 p 를 변환하고 나서, 그 결과를 원의 Transform
Cx 로 변환하는 것에 상당합니다. 즉, Cx'(p) = Cx(Tx(p))입니다. 필요에 따라서 Tx 의 카피를 실시하면, Tx 를 그 이상 수정해도 draw에 영향을 주지 않습니다.
Tx
- 현재의 Transform
로 변환된다
AffineTransform
객체setTransform(java.awt.geom.AffineTransform)
,
AffineTransform
public abstract void setTransform(AffineTransform Tx)
Graphics2D
문맥으로 Transform 를 덧쓰기합니다. 경고:이 메소드는 새로운 좌표변화를 기존의 변환상에서 적용하는 목적에서는 사용하지 말아 주세요. 이것은,Graphics2D
에는, Swing 컴퍼넌트의 draw 또는 프린터의 해상도를 조정하기 위한 슬캘링 변환의 적용 등, 다른 목적을 위해서(때문에) 필요한 변환이 벌써 포함되어 있기 때문입니다.
좌표변화를 추가하기 위해서,transform
,rotate
,scale
, 또는shear
메소드를 사용합니다. setTransform
는, 이 예로 나타나고 있는 대로, draw 종료후에 원의 Graphics2D
변환을 복원하기 (위해)때문에인 만큼 사용됩니다.
// Get the current transform AffineTransform saveAT = g2.getTransform(); // Perform transformation g2d.transform(...); // Render g2d.draw(...); // Restore original transform g2d.setTransform(saveAT);
Tx
- getTransform
메소드로부터 취득되었다
AffineTransform
transform(java.awt.geom.AffineTransform)
,
getTransform()
,
AffineTransform
public abstract AffineTransform getTransform()
Graphics2D
문맥에서의 현재의 Transform
의 카피를 돌려줍니다.
Graphics2D
문맥에서의
현재의 AffineTransform
transform(java.awt.geom.AffineTransform)
,
setTransform(java.awt.geom.AffineTransform)
public abstract Paint getPaint()
Graphics2D
문맥에서의 현재의 Paint
를 돌려줍니다.
Graphics2D
Paint
setPaint(java.awt.Paint)
,
Graphics.setColor(java.awt.Color)
public abstract Composite getComposite()
Graphics2D
문맥에서의 현재의 Composite
를 돌려줍니다.
Graphics2D
Composite
setComposite(java.awt.Composite)
public abstract void setBackground(Color color)
Graphics2D
문맥의 백그라운드 칼라를 설정합니다. 백그라운드 칼라는, 영역을 클리어 하기 위해서 사용됩니다. Graphics2D
를 Component
용으로 작성하면(자), 백그라운드 칼라가 Component
로부터 상속됩니다. Graphics2D
문맥에서의 백그라운드 칼라를 설정해도, 그 이후의 clearRect()
호출해에 작용하는 것만으로,Component
의 백그라운드 칼라에는 영향을 미치지 않습니다. Component
의 백그라운드를 변경하려면 ,Component
의 적절한 메소드를 사용합니다.
color
- 이후의 clearRect
의 호출로
사용되는 백그라운드 칼라getBackground()
,
Graphics.clearRect(int, int, int, int)
public abstract Color getBackground()
Graphics2D
Color
setBackground(java.awt.Color)
public abstract Stroke getStroke()
Graphics2D
문맥에서의 현재의 Stroke
를 돌려줍니다.
Graphics2D
Stroke
setStroke(java.awt.Stroke)
public abstract void clip(Shape s)
Clip
가 지정된 Shape
의 내부와 교차시켜, 결과적으로 생긴 공통 부분에 그 Clip
를 설정합니다. 지정된 Shape
는, 현재의 Clip
와 교차하기 전에, 현재의 Graphics2D
Transform
를 사용해 변환됩니다. 이 메소드를 사용하면(자), 현재의 Clip
를 작게 할 수 있습니다. Clip
를 크게 하려면 ,setClip
메소드를 사용합니다. 이 메소드에 의해 변경된 사용자 클립은, 디바이스의 경계 및 가시성과 관련한 클리핑과는 무관계합니다. 지금까지 설정되어 있는 클립이 없는 경우, 또는 setClip
에 null
인수를 사용해 클립이 클리어 되고 있는 경우는, 지정된 Shape
가 새로운 사용자 클립이 됩니다.
- 파라미터:
s
- 현재의 Clip
와 교차한다
Shape
. s
가 null
의 경우,
이 메소드는 현재의 Clip
를 클리어 한다
public abstract FontRenderContext getFontRenderContext()
Graphics2D
문맥에서의 Font
의 draw 문맥을 돌려줍니다. FontRenderContext
는, 에일리어징 제거나 부분 메트릭스등의 어플리케이션 힌트외, 타겟 디바이스에 특유의 해상도 (dpi)등의 정보를 캡슐화합니다. 이러한 정보는,Font
나 TextLayout
등의 문자 체재의 포맷을 실행하는 객체의 사용시에 어플리케이션에 의해 제공됩니다. 이 정보는 또, 각종 draw 힌트가 텍스트 draw에 적용되었을 때에, 그 자체의 레이아웃을 실행해, 유효폭이나 행의 높이 등, Glyph의 각종 특성의 정확한 계측을 필요로 하는 어플리케이션에 의해 제공되지 않으면 안됩니다.
FontRenderContext
,
Font.createGlyphVector(java.awt.font.FontRenderContext, java.lang.String)
,
TextLayout
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.