JavaTM 2 Platform
Standard Ed. 5.0

java.awt.font
Ŭ·¡½º TextLayout

java.lang.Object 
  »óÀ§¸¦ È®Àå java.awt.font.TextLayout
¸ðµç ±¸ÇöµÈ ÀÎÅÍÆäÀ̽º:
Cloneable

public final class TextLayout
extends Object
implements Cloneable

TextLayout´Â ¼­½Ä ÷ºÎ ¹®ÀÚ µ¥ÀÌÅÍÀÇ ºÒº¯ÀÇ ±×·¡ÇÈ Ç¥ÇöÀÔ´Ï´Ù.

ÀÌ Å¬·¡½º´Â ´ÙÀ½ÀÇ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù.

TextLayout°´Ã¼´Â draw ¸Þ¼­µå¸¦ »ç¿ëÇØ ·»´õ¸µ ÇÒ ¼ö ÀÖ½À´Ï´Ù.

TextLayout´Â Á÷Á¢ ¶Ç´Â LineBreakMeasurer¸¦ °³ÀÔ½ÃÄÑ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. Á÷Á¢ ÀÛ¼ºµÇ´Â °æ¿ì, ¼Ò½º ÅؽºÆ®´Â 1°³ÀÇ ´Ü¶ôÀ» ³ªÅ¸³À´Ï´Ù. LineBreakMeasurer¿¡ ¼­´Â ƯÁ¤ÀÇ Æø¿¡ µé¾î°¡´Â º¹¼öÀÇ Çà¿¡ ¼­½Ä ÷ºÎ ÅؽºÆ®¸¦ ºÐÇÒÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº LineBreakMeasurer ¹®¼­¸¦ ÂüÁ¶ÇϽʽÿÀ.

TextLayout ±¸ÃàÀº ³í¸®ÀûÀÌ°Ô´Â ´ÙÀ½ÀÇ ¼ø¼­·Î ÇàÇØÁý´Ï´Ù.

TextLayout °´Ã¼ÀÇ ¸Þ¼­µå·ÎºÎÅÍ ¸®ÅÏµÈ ¸ðµç ±×·¡ÇÈ Á¤º¸´Â TextLayout °´Ã¼ÀÇ baseline¿Í Á´ÜÀÇ ±³Á¡ÀÎ TextLayout ¿øÁ¡À» ±âÁØÀ¸·Î ÇÏ°í ÀÖ½À´Ï´Ù. ¶Ç, TextLayout °´Ã¼ÀÇ ¸Þ¼­µå¿¡°Ô °Ç³×Áö´Â ÁÂÇ¥´Â TextLayout °´Ã¼ÀÇ ¿øÁ¡À» ±âÁØÀ¸·Î ÇÏ°í ÀÖ´Â °ÍÀ̶ó°í º¸¿©Áý´Ï´Ù. º¸Åë, Ŭ¶óÀ̾ðÆ®´Â TextLayout °´Ã¼ÀÇ ÁÂÇ¥°è¿Í ´Ù¸¥ °´Ã¼ (Graphics °´Ã¼µî)ÀÇ ÁÂÇ¥°è¿ÍÀÇ »çÀÌ¿¡ º¯È¯ÀÌ ÇÊ¿äÇÏ°Ô µË´Ï´Ù.

TextLayout°´Ã¼´Â ¼­½Ä ÷ºÎ ÅؽºÆ®·ÎºÎÅÍ ±¸ÃàµË´Ï´Ù¸¸, ¼Ò½º ÅؽºÆ®¿¡ÀÇ ÂüÁ¶´Â º¸°ü À¯ÁöÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ¶§¹®¿¡ TextLayout¸¦ »ý¼ºÇϱâ À§Çؼ­ »ç¿ëµÈ ÅؽºÆ®¿¡ ±× ÈÄ º¯°æÀÌ ´õÇØÁ®µµ, TextLayout¿¡ ¿µÇâÀº ¾ø½À´Ï´Ù.

TextLayout °´Ã¼ÀÇ 3°³ÀÇ ¸Þ¼­µå (getNextRightHit, getNextLeftHit ¹× hitTestChar)´Â TextHitInfo ÀνºÅϽº¸¦ ¸®ÅÏÇÕ´Ï´Ù. ±×·¯ÇÑ TextHitInfo °´Ã¼¿¡ Æ÷ÇԵǴ ¿ÀÇÁ¼Â(offset)´Â TextLayout¸¦ ÀÛ¼ºÇϱâ À§Çؼ­ »ç¿ëµÈ ÅؽºÆ®°¡ ¾Æ´Ï°í, TextLayout ¼±µÎ¸¦ ±âÁØÀ¸·Î ÇÕ´Ï´Ù. ¶È°°ÀÌ, TextHitInfo ÀνºÅϽº¸¦ ÆĶó¹ÌÅͷμ­ ¹Þ´Â TextLayout ¸Þ¼­µåµµ, TextHitInfo °´Ã¼ÀÇ ¿ÀÇÁ¼Â(offset)ÀÇ ±âÁØÀº TextLayout À̸ç, ±âº»ÀÌ µÇ´Â ÅؽºÆ® ½ºÅ丮Áö ¸ðµ¨Àº ¾Æ´Ï¸é »óÁ¤ÇÕ´Ï´Ù.

¿¹:

TextLayout¿Í ±× °æ°èÀÇ ±¸ÇüÀÇ ÀÛ¼º ¹× ·»´õ¸µ

 Graphics2D g = ...;
 Point2D loc = ...;
 Font font = Font.getFont("Helvetica-bold-italic");
 FontRenderContext frc = g.getFontRenderContext();
 TextLayout layout = new TextLayout("This is a string", font, frc);
 layout.draw(g, (float) loc.getX(), (float) loc.getY());
Rectangle2D bounds = layout.getBounds(); bounds.setRect(bounds.getX() +loc.getX(), bounds.getY() +loc.getY(), bounds.getWidth(), bounds.getHeight()); g.draw(bounds); 

TextLayout·Î È÷Æ®¸¦ Å×½ºÆ®ÇÕ´Ï´Ù (ƯÁ¤ÀÇ ±×·¡ÇÈ À§Ä¡¿¡ ÀÖ´Â ¹®ÀÚ¸¦ ÆÇÁ¤ÇÑ´Ù).

 Point2D click = ...;
 TextHitInfo hit = layout.hitTestChar( (float) (click.getX() - loc.getX()), (float) (click.getY() - loc.getY()));
 

¿À¸¥ÂÊ Ä¿¼­ Å°°¡ ¹Ð·È´ø °Í¿¡ ¹ÝÀÀÇÕ´Ï´Ù.

 int insertionIndex = ...;
 TextHitInfo next = layout.getNextRightHit(insertionIndex);
 if (next ! = null) { // translate graphics to origin of layout on screen g.translate(loc.getX(), loc.getY());
 Shape[] carets = layout.getCaretShapes(next.getInsertionIndex());
 g.draw(carets[0]);
 if (carets[1] ! = null) { g.draw(carets[1]);
 } } 

¼Ò½º ÅؽºÆ®ÀÇ ºÎºÐ ij¸¯ÅÍ ¶óÀο¡ ´ëÀÀÇÏ´Â ¼±Åà ¹üÀ§¸¦ ·»´õ¸µ ÇÕ´Ï´Ù. ¼±ÅÃµÈ ¿µ¿ªÀº ½Ã°¢ÀûÀ¸·Î ¿¬¼ÓÇÏÁö ¾ÊÀº °æ¿ì°¡ ÀÖ½À´Ï´Ù.

 // selStart, selLimit should be relative to the layout, // not to the source text
int selStart = ..., selLimit = ...; Color selectionColor = ...; Shape selection = layout.getLogicalHighlightShape(selStart, selLimit); // selection may consist of disjoint areas // graphics is assumed to be tranlated to origin of layout g.setColor(selectionColor); g.fill(selection); 

½Ã°¢ÀûÀ¸·Î ¿¬¼ÓÇÑ ¼±Åà ¹üÀ§¸¦ ·»´õ¸µ ÇÕ´Ï´Ù. ¼±Åà ¹üÀ§´Â ¼Ò½º ÅؽºÆ®ÀÇ º¹¼öÀÇ ºÎºÐ ij¸¯ÅÍ ¶óÀο¡ ´ëÀÀÇÏ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ´ëÀÀÇÏ´Â ¼Ò½º ÅؽºÆ®ÀÇ ºÎºÐ ij¸¯ÅÍ ¶óÀÎÀÇ ¹üÀ§´Â getLogicalRangesForVisualSelection()¿¡ ÀÇÇØ ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù.

 TextHitInfo selStart = ..., selLimit = ...;
 Shape selection = layout.getVisualHighlightShape(selStart, selLimit);
 g.setColor(selectionColor);
 g.fill(selection);
 int[] ranges = getLogicalRangesForVisualSelection(selStart, selLimit);
 // ranges[0], ranges[1] is the first selection range, // ranges[2], ranges[3] is the second selection range, etc.  

°ü·Ã Ç׸ñ:
LineBreakMeasurer, TextAttribute, TextHitInfo

Áßø(Nested) Ŭ·¡½º °³¿ä
static class TextLayout.CaretPolicy
          °­ÇÑ caretÀÇ Àå¼Ò¸¦ °áÁ¤ÇÏ´Â Á¤Ã¥¸¦ Á¤ÀÇÇÕ´Ï´Ù.
 
ÇÊµå °³¿ä
static TextLayout.CaretPolicy DEFAULT_CARET_POLICY
          ÀÌ CaretPolicy´Â Á¤Ã¥°¡ Ŭ¶óÀ̾ðÆ®¿¡ ÀÇÇØ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì¿¡ »ç¿ëµË´Ï´Ù.
 
»ý¼ºÀÚ °³¿ä
TextLayout (AttributedCharacterIterator  text, FontRenderContext  frc)
          ¼­½Ä ÷ºÎ ÅؽºÆ®ÀÇ ¹Ýº¹ÀڷκÎÅÍ TextLayout¸¦ ±¸ÃàÇÕ´Ï´Ù.
TextLayout (String  string, Font  font, FontRenderContext  frc)
          String ¹× Font ·ÎºÎÅÍ TextLayout¸¦ ±¸ÃàÇÕ´Ï´Ù.
TextLayout (String  string, Map <? extends AttributedCharacterIterator.Attribute, ? > attributes, FontRenderContext  frc)
          String ¹× ¼Ó¼º ¼¼Æ®·ÎºÎÅÍ TextLayout¸¦ ±¸ÃàÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
protected  Object clone ()
          ÀÌ TextLayout º¹»çº»À» ÀÛ¼ºÇÕ´Ï´Ù.
 void draw (Graphics2D  g2, float x, float y)
          ÁöÁ¤µÈ Graphics2D ÄÁÅؽºÆ® ÀÇ ÁöÁ¤µÈ À§Ä¡¿¡ ÀÌ TextLayout¸¦ ·»´õ¸µ ÇÕ´Ï´Ù.
 boolean equals (Object  obj)
          ÁöÁ¤µÈ ObjectÀÌ TextLayout °´Ã¼·Î ÁöÁ¤µÈ ObjectÀÌ ÀÌ TextLayout¿Í µ¿ÀÏÇÑ °æ¿ì¿¡ true¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 boolean equals (TextLayout  rhs)
          2°³ÀÇ ·¹À̾ƿôÀÌ µ¿ÀÏÇÑ °æ¿ì¿¡ true¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 float getAdvance ()
          ÀÌ TextLayout À¯È¿³ÐÀ̸¦ ¸®ÅÏÇÕ´Ï´Ù.
 float getAscent ()
          ÀÌ TextLayout ¾Æ¼¾Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 byte getBaseline ()
          ÀÌ TextLayout baseline¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 float[] getBaselineOffsets ()
          ÀÌ TextLayout·Î »ç¿ëµÇ´Â baselineÀÇ ¿ÀÇÁ¼Â(offset) ¹è¿­À» ¸®ÅÏÇÕ´Ï´Ù.
 Shape getBlackBoxBounds (int firstEndpoint, int secondEndpoint)
          ÁöÁ¤µÈ ¹üÀ§¿¡ ÀÖ´Â ¸ðµç ¹®ÀÚÀÇ ºí·¢ ¹Ú½º °æ°è¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Rectangle2D getBounds ()
          ÀÌ TextLayout °æ°è¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 float[] getCaretInfo (TextHitInfo  hit)
          hit¿¡ ´ëÀÀÇÏ´Â caret¿¡ ´ëÇÑ Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 float[] getCaretInfo (TextHitInfo  hit, Rectangle2D  bounds)
          hit¿¡ ´ëÀÀÇÏ´Â caret¿¡ ´ëÇÑ Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getCaretShape (TextHitInfo  hit)
          ÀÌ TextLayout ÀÚ¿¬ °æ°è³»ÀÇ ÁöÁ¤µÈ È÷Æ®¿¡ ÀÖ´Â caret¸¦ ³ªÅ¸³»´Â Shape¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getCaretShape (TextHitInfo  hit, Rectangle2D  bounds)
          ÁöÁ¤µÈ °æ°è³»ÀÇ ÁöÁ¤µÈ È÷Æ®¿¡ ÀÖ´Â caret¸¦ ³ªÅ¸³»´Â Shape¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Shape [] getCaretShapes (int offset)
          °­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2°³ÀÇ À±°û¼±À» ¸®ÅÏÇÕ´Ï´Ù.
 Shape [] getCaretShapes (int offset, Rectangle2D  bounds)
          °­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2°³ÀÇ À±°û¼±À» ¸®ÅÏÇÕ´Ï´Ù.
 Shape [] getCaretShapes (int offset, Rectangle2D  bounds, TextLayout.CaretPolicy  policy)
          °­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2°³ÀÇ À±°û¼±À» ¸®ÅÏÇÕ´Ï´Ù.
 int getCharacterCount ()
          ÀÌ TextLayoutÀÌ ³ªÅ¸³»´Â ¹®ÀÚ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 byte getCharacterLevel (int index)
          index¿¡ ÀÖ´Â ¹®ÀÚÀÇ ·¹º§À» ¸®ÅÏÇÕ´Ï´Ù.
 float getDescent ()
          ÀÌ TextLayout µð ¼¾Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextLayout getJustifiedLayout (float justificationWidth)
          ÁöÁ¤µÈ Æø¿¡ Çà °¡Áö·±È÷ ÇÏ°í µÈ, ÀÌ TextLayout º¹»çº»À» ÀÛ¼ºÇÕ´Ï´Ù.
 float getLeading ()
          TextLayout leading¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getLogicalHighlightShape (int firstEndpoint, int secondEndpoint)
          ÁöÁ¤µÈ ¹üÀ§ÀÇ ³í¸®ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape¸¦, ÀÌ TextLayout ÀÚ¿¬ °æ°è±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getLogicalHighlightShape (int firstEndpoint, int secondEndpoint, Rectangle2D  bounds)
          ÁöÁ¤µÈ ¹üÀ§ÀÇ ³í¸®ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape¸¦, ÁöÁ¤µÈ bounds ±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù.
 int[] getLogicalRangesForVisualSelection (TextHitInfo  firstEndpoint, TextHitInfo  secondEndpoint)
          ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§¿¡ ´ëÀÀÇÏ´Â ÅؽºÆ®ÀÇ ³í¸®ÀûÀÎ ¹üÀ§¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getNextLeftHit (int offset)
          ¿ÞÂÊ (»ó) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getNextLeftHit (int offset, TextLayout.CaretPolicy  policy)
          ¿ÞÂÊ (»ó) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getNextLeftHit (TextHitInfo  hit)
          ¿ÞÂÊ (»ó) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getNextRightHit (int offset)
           ¿À¸¥ÂÊ (ÇÏ) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getNextRightHit (int offset, TextLayout.CaretPolicy  policy)
           ¿À¸¥ÂÊ (ÇÏ) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getNextRightHit (TextHitInfo  hit)
           ¿À¸¥ÂÊ (ÇÏ) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getOutline (AffineTransform  tx)
          ÀÌ TextLayout À±°ûÀ» ³ªÅ¸³»´Â Shape¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 float getVisibleAdvance ()
          ÀÌ TextLayout À¯È¿³ÐÀ̸¦ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getVisualHighlightShape (TextHitInfo  firstEndpoint, TextHitInfo  secondEndpoint)
          ÁöÁ¤µÈ ¹üÀ§ÀÇ ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape¸¦, °æ°è±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù.
 Shape getVisualHighlightShape (TextHitInfo  firstEndpoint, TextHitInfo  secondEndpoint, Rectangle2D  bounds)
          ÁöÁ¤µÈ ¹üÀ§ÀÇ ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â À±°û¼±À» bounds ±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo getVisualOtherHit (TextHitInfo  hit)
          ÁöÁ¤µÈ È÷Æ®ÀÇ caretÀÇ ¹Ý´ëÃøÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
protected  void handleJustify (float justificationWidth)
          ÀÌ ·¹À̾ƿôÀ» Çà °¡Áö·±È÷ ÇÕ´Ï´Ù.
 int hashCode ()
          ÀÌ TextLayout Çؽà Äڵ带 ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo hitTestChar (float x, float y)
          ÁöÁ¤µÈ Á¡¿¡ ´ëÀÀÇÏ´Â TextHitInfo¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextHitInfo hitTestChar (float x, float y, Rectangle2D  bounds)
          ÁöÁ¤µÈ Á¡¿¡ ´ëÀÀÇÏ´Â TextHitInfo¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 boolean isLeftToRight ()
          ÀÌ TextLayout º£À̽º°¡ µÉ ¹æÇâÀÌ ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀÇ °æ¿ì¿¡ true¸¦ µ¹·ÁÁÖ°í, ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ °æ¿ì¿¡ false¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 boolean isVertical ()
          ÀÌ TextLayoutÀÌ ¼öÁ÷ÀÇ °æ¿ì¿¡ true¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 String toString ()
          ÀÌ TextLayout µð¹ö±× Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
finalize, getClass, notify, notifyAll, wait, wait, wait
 

ÇʵåÀÇ »ó¼¼

DEFAULT_CARET_POLICY

public static final TextLayout.CaretPolicy  DEFAULT_CARET_POLICY
ÀÌ CaretPolicy´Â Á¤Ã¥°¡ Ŭ¶óÀ̾ðÆ®¿¡ ÀÇÇØ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì¿¡ »ç¿ëµË´Ï´Ù. ÀÌ Á¤Ã¥¿¡ ¼­´Â ¹æÇâÀÌ ÇàÀÇ ¹æÇâ°ú °°Àº ¹®ÀÚÀÇ È÷Æ®°¡ ¹Ý´ë ¹æÇâÀÇ ¹®ÀÚÀÇ È÷Æ®º¸´Ù °­ÇØÁý´Ï´Ù. ¹®ÀÚÀÇ ¹æÇâÀÌ °°Àº °æ¿ì, ¹®ÀÚÀÇ ¸®µù ¿§ÁöÀÇ È÷Æ®°¡ ¹®ÀÚÀÇ Æ®·¹ÀÌ ¸µ ¿§ÁöÀÇ È÷Æ®º¸´Ù °­ÇØÁý´Ï´Ù.

»ý¼ºÀÚ »ó¼¼

TextLayout

public TextLayout(String  string,
                  Font  font,
                  FontRenderContext  frc)
String ¹× Font ·ÎºÎÅÍ TextLayout¸¦ ±¸ÃàÇÕ´Ï´Ù. ¸ðµç ÅؽºÆ®´Â ÁöÁ¤µÈ Font¸¦ »ç¿ëÇØ ¼­½ÄÀÌ ¼³Á¤µË´Ï´Ù.

String¿¡´Â 1 ´Ü¶ôÀÇ ÅؽºÆ®¸¦ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ½Ö¹æÇâ ¾Ë°í¸®Áò¿¡¼­´Â ´Ü¶ô Àüü°¡ ¿ä±¸µÇ±â ¶§¹®ÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
string - Ç¥½ÃÇÏ´Â ÅؽºÆ®
font - ÅؽºÆ®ÀÇ ¼­½ÄÀ» ¼³Á¤Çϱâ À§Çؼ­ »ç¿ëµÇ´Â Font
frc - ÅؽºÆ®¸¦ Á¤È®ÇÏ°Ô ÃøÁ¤Çϱâ À§Çؼ­ ÇÊ¿äÇÑ ±×·¡ÇÈ µð¹ÙÀ̽º¿¡ °üÇÑ Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. ÅؽºÆ® ÃøÁ¤Àº µð¹ÙÀ̽ºÀÇ Çػ󵵿¡ ÀÇÇØ Á¶±Ý ´Þ¶ó, ¿¡Àϸ®¾î¡ Á¦°ÅµîÀÇ ¼Ó¼º¿¡ µû¶ó¼­ ´Ù¸£´Ù. ÀÌ ÆĶó¹ÌÅÍ´Â TextLayout¿Í »ç¿ëÀÚ °ø°£ÀÇ »çÀÌÀÇ À̵¿Àº ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù

TextLayout

public TextLayout(String  string,
                  Map <?  extends AttributedCharacterIterator.Attribute,
? > attributes,
                  FontRenderContext  frc)
String ¹× ¼Ó¼º ¼¼Æ®·ÎºÎÅÍ TextLayout¸¦ ±¸ÃàÇÕ´Ï´Ù.

¸ðµç ÅؽºÆ®´Â ÁöÁ¤µÈ ¼Ó¼º¿¡ ÀÇÇØ ¼­½ÄÀÌ ¼³Á¤µË´Ï´Ù.

string¿¡´Â 1 ´Ü¶ôÀÇ ÅؽºÆ®¸¦ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ½Ö¹æÇâ ¾Ë°í¸®Áò¿¡¼­´Â ´Ü¶ô Àüü°¡ ¿ä±¸µÇ±â ¶§¹®ÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
string - Ç¥½ÃÇÏ´Â ÅؽºÆ®
attributes - ÅؽºÆ®ÀÇ ¼­½ÄÀ» ¼³Á¤Çϱâ À§Çؼ­ »ç¿ëµÇ´Â ¼Ó¼º
frc - ÅؽºÆ®¸¦ Á¤È®ÇÏ°Ô ÃøÁ¤Çϱâ À§Çؼ­ ÇÊ¿äÇÑ ±×·¡ÇÈ µð¹ÙÀ̽º¿¡ °üÇÑ Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. ÅؽºÆ® ÃøÁ¤Àº µð¹ÙÀ̽ºÀÇ Çػ󵵿¡ ÀÇÇØ Á¶±Ý ´Þ¶ó, ¿¡Àϸ®¾î¡ Á¦°ÅµîÀÇ ¼Ó¼º¿¡ µû¶ó¼­ ´Ù¸£´Ù. ÀÌ ÆĶó¹ÌÅÍ´Â TextLayout¿Í »ç¿ëÀÚ °ø°£ÀÇ »çÀÌÀÇ À̵¿Àº ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù

TextLayout

public TextLayout(AttributedCharacterIterator  text,
                  FontRenderContext  frc)
¼­½Ä ÷ºÎ ÅؽºÆ®ÀÇ ¹Ýº¹ÀڷκÎÅÍ TextLayout¸¦ ±¸ÃàÇÕ´Ï´Ù.

¹Ýº¹ÀÚ´Â 1 ´Ü¶ôÀÇ ÅؽºÆ®¸¦ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ½Ö¹æÇâ ¾Ë°í¸®Áò¿¡¼­´Â ´Ü¶ô Àüü°¡ ¿ä±¸µÇ±â ¶§¹®ÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
text - Ç¥½ÃÇÏ´Â ¼­½Ä ÷ºÎ ÅؽºÆ®
frc - ÅؽºÆ®¸¦ Á¤È®ÇÏ°Ô ÃøÁ¤Çϱâ À§Çؼ­ ÇÊ¿äÇÑ ±×·¡ÇÈ µð¹ÙÀ̽º¿¡ °üÇÑ Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. ÅؽºÆ® ÃøÁ¤Àº µð¹ÙÀ̽ºÀÇ Çػ󵵿¡ ÀÇÇØ Á¶±Ý ´Þ¶ó, ¿¡Àϸ®¾î¡ Á¦°ÅµîÀÇ ¼Ó¼º¿¡ µû¶ó¼­ ´Ù¸£´Ù. ÀÌ ÆĶó¹ÌÅÍ´Â TextLayout¿Í »ç¿ëÀÚ °ø°£ÀÇ »çÀÌÀÇ À̵¿Àº ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù
¸Þ¼­µåÀÇ »ó¼¼

clone

protected Object  clone()
ÀÌ TextLayout º¹»çº»À» ÀÛ¼ºÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ clone
¹Ýȯ°ª:
ÀÌ ÀνºÅϽºÀÇ º¹Á¦
°ü·Ã Ç׸ñ:
Cloneable

getJustifiedLayout

public TextLayout  getJustifiedLayout(float justificationWidth)
ÁöÁ¤µÈ Æø¿¡ Çà °¡Áö·±È÷ ÇÏ°í µÈ, ÀÌ TextLayout º¹»çº»À» ÀÛ¼ºÇÕ´Ï´Ù.

ÀÌ TextLayoutÀÌ ÀÌ¹Ì Çà °¡Áö·±È÷ ÇÏ°í µÇ°í ÀÖ´Â °æ¿ì´Â ¿¹¿Ü°¡ ¹ß»ý µË´Ï´Ù. ÀÌ TextLayout °´Ã¼ÀÇ Çà °¡Áö·±È÷ ÇÏ°í ºñÀ²ÀÌ Á¦·ÎÀÇ °æ¿ì, ÀÌ TextLayout °ú µ¿ÀÏÇÑ TextLayoutÀÌ ¸®Åϵ˴ϴ٠.

ÆĶó¹ÌÅÍ:
justificationWidth - Çà °¡Áö·±È÷ ÇÏ°í Çϱâ À§Çؼ­ »ç¿ëÇÏ´Â Æø. ÃÖ¼±ÀÇ °á°ú¸¦ ¾ò±â À§Çؼ­´Â ÇàÀÇ ÇöÀçÀÇ À¯È¿Æø°úÀÇ Â÷ÀÌ´Â ÀÛÀº °ÍÀÌ ÁÁ´Ù
¹Ýȯ°ª:
ÁöÁ¤µÈ Æø¿¡ Çà °¡Áö·±È÷ ÇÏ°í µÈ TextLayout
¿¹¿Ü:
Error - ÀÌ ·¹À̾ƿôÀÌ ÀÌ¹Ì Çà °¡Áö·±È÷ ÇÏ°í µÇ°í ÀÖ´Â °æ¿ì, Error°¡ Throw µÈ´Ù

handleJustify

protected void handleJustify(float justificationWidth)
ÀÌ ·¹À̾ƿôÀ» Çà °¡Áö·±È÷ ÇÕ´Ï´Ù. Çà °¡Áö·±È÷ ÇÏ°í¸¦ Á¦¾îÇϱâ À§Çؼ­ »çºêÅ©¶ó»ç¿¡ ÀÇÇØ ¿À¹ö¶óÀ̵å(override) µË´Ï´Ù (»çºêÅ©¶ó»ç°¡ ÀÖ´Â °æ¿ì). ·¹À̾ƿôÀº ´Ü¶ôÀÇ ¼Ó¼º (¼Ò½º ÅؽºÆ®·ÎºÎÅÍ ÆÄ»ý. ·¹À̾ƿô ¼Ó¼º¿¡ ÀÇÇØ µðÆúÆ®·Î ¼³Á¤µÇ´Â °æ¿ì°¡ ÀÖ´Ù)°¡ Á¦·Î ÀÌ¿ÜÀÇ Çà °¡Áö·±È÷ ÇÏ°í ºñÀ²À» ³ªÅ¸³»´Â °æ¿ì¿¡¸¸ Çà °¡Áö·±È÷ ÇÏ°í¸¦ ½Ç½ÃÇÕ´Ï´Ù. ÅؽºÆ®´Â ÁöÁ¤µÈ Æø¿¡ Çà °¡Áö·±È÷ ÇÏ°í µË´Ï´Ù. ÇöÀçÀÇ ±¸ÇöÀº Çà °¡Áö·±È÷ ÇÏ°í ³ÐÀ̸¦ ä¿ì±â À§Çؼ­ ÇѱëÆÇÅ©Ãò¿¡À̼ÇÀ̳ª ¸»¹ÌÀÇ °ø¹éµµ Á¶Á¤ÇÕ´Ï´Ù. ·¹À̾ƿôÀº ÀÏ´Ü Çà °¡Áö·±È÷ ÇÏ°í µÈ µÚ´Â Çà °¡Áö·±È÷ ´Ù½Ã ÇÒ ¼ö°¡ ¾ø½À´Ï´Ù.

Äڵ忡 µû¶ó¼­´Â ·¹À̾ƿôÀÇ ºÒº¯¼º¿¡ ÀÇÁ¸µÈ °æ¿ì°¡ ÀÖ½À´Ï´Ù. »çºêÅ©¶ó»ç´Â ÀÌ ¸Þ¼­µå¸¦ Á÷Á¢ È£ÃâÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, getJustifiedLayout¸¦ È£ÃâÇÏ´Â °ÍÀÌ ÁÁÀ» °ÍÀÔ´Ï´Ù. getJustifiedLayout´Â ÀÌ ·¹À̾ƿôÀÇ º¹Á¦¿¡ ´ëÇؼ­ ÀÌ ¸Þ¼­µå¸¦ È£ÃâÇϹǷΠ¿øÀÇ ·¹À̾ƿôÀº º¸Á¸µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
justificationWidth - Çà °¡Áö·±È÷ ÇÏ°í Çϱâ À§Çؼ­ »ç¿ëÇÏ´Â Æø. ÃÖ¼±ÀÇ °á°ú¸¦ ¾ò±â À§Çؼ­´Â ÇàÀÇ ÇöÀçÀÇ À¯È¿Æø°úÀÇ Â÷ÀÌ´Â ÀÛÀº °ÍÀÌ ÁÁÀº
°ü·Ã Ç׸ñ:
getJustifiedLayout(float)

getBaseline

public byte getBaseline()
ÀÌ TextLayout baseline¸¦ ¸®ÅÏÇÕ´Ï´Ù. baseline´Â Font·Î Á¤ÀǵǴ °ª (roman, centered, hanging)ÀÇ 1°³ ÀÔ´Ï´Ù. ¾Æ¼¾Æ® ¹× µð ¼¾Æ®´Â ÀÌ baseline¸¦ ±âÁØÀ¸·Î ÇÕ´Ï´Ù. baselineOffsetsµµ ÀÌ baseline¸¦ ±âÁØÀ¸·Î ÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout baseline
°ü·Ã Ç׸ñ:
getBaselineOffsets(), Font

getBaselineOffsets

public float[] getBaselineOffsets()
ÀÌ TextLayout·Î »ç¿ëµÇ´Â baselineÀÇ ¿ÀÇÁ¼Â(offset) ¹è¿­À» ¸®ÅÏÇÕ´Ï´Ù.

ÀÌ ¹è¿­Àº, Font·Î Á¤ÀǵǴ °ª (roman, centered, hanging)ÀÇ 1°³ ·Î À妽º ºÙÀÌ°í µË´Ï´Ù. ÀÌ·¯ÇÑ °ªÀº ÀÌ TextLayout °´Ã¼ÀÇ baseline¸¦ ±âÁØÀ¸·Î ÇÕ´Ï´Ù. ±× ¶§¹®¿¡ getBaselineOffsets[getBaseline()] == 0 ÀÌ µË´Ï´Ù. ¿ÀÇÁ¼Â(offset)¸¦ TextLayout °´Ã¼ÀÇ baselineÀÇ À§Ä¡¿¡ °¡»êÇϸé, »õ·Î¿î baselineÀÇ À§Ä¡¸¦ ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout¿¡ »ç¿ëµÇ´Â baseline¸¦ Æ÷ÇÔÇÏ´Â ¿ÀÇÁ¼Â(offset) ¹è¿­
°ü·Ã Ç׸ñ:
getBaseline(), Font

getAdvance

public float getAdvance()
ÀÌ TextLayout À¯È¿³ÐÀ̸¦ ¸®ÅÏÇÕ´Ï´Ù. À¯È¿ÆøÀº ÇàÀÇ ¹æÇâÀ¸·Î ÃøÁ¤ÇÑ, ¿øÁ¡¿¡¼­ ¿ì´Ü (ÇÏ´Ü)ÀÇ ¹®ÀÚÀÇ À¯È¿Æø±îÁöÀÇ °Å¸®ÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout À¯È¿Æø

getVisibleAdvance

public float getVisibleAdvance()
ÀÌ TextLayout À¯È¿³ÐÀ̸¦ ¸®ÅÏÇÕ´Ï´Ù. ¸»¹ÌÀÇ °ø¹éÀº Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout ¸»¹ÌÀÇ °ø¹éÀ» Á¦¿ÜÇÑ À¯È¿Æø
°ü·Ã Ç׸ñ:
getAdvance()

getAscent

public float getAscent()
ÀÌ TextLayout ¾Æ¼¾Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¾Æ¼¾Æ®´Â TextLayout À§ ( ¿À¸¥ÂÊ)·ÎºÎÅÍ baseline±îÁöÀÇ °Å¸®ÀÔ´Ï´Ù. ÀÌ °Å¸®´Â Ç×»ó Á¤ÀÇ °ª ¶Ç´Â Á¦·ÎÀÔ´Ï´Ù. ¾Æ¼¾Æ®´Â »ó ÷ºÎ ÅؽºÆ®¸¦ Æ÷ÇÔÇϱâ À§Çؼ­ ÃæºÐÇÑ Å©±âÀ̸ç, °¢ ±×·¡ÇÁ ÀÇ ¾Æ¼¾Æ®, ¿ÀÇÁ¼Â(offset) ¹× baselineÀÇ ÇÕ°èÀÇ ÃÖ´ë°ª ÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout ¾Æ¼¾Æ®

getDescent

public float getDescent()
ÀÌ TextLayout µð ¼¾Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. µð ¼¾Æ®´Â baseline·ÎºÎÅÍ TextLayout ¾Æ·¡ (¿ÞÂÊ)±îÁöÀÇ °Å¸®ÀÔ´Ï´Ù. ÀÌ °Å¸®´Â Ç×»ó Á¤ÀÇ °ª ¶Ç´Â Á¦·ÎÀÔ´Ï´Ù. µð ¼¾Æ®´Â ÇϺγª¹« ÅؽºÆ®¸¦ Æ÷ÇÔÇϱâ À§Çؼ­ ÃæºÐÇÑ Å©±âÀ̸ç, °¢ ±×·¡ÇÁ ÀÇ µð ¼¾Æ®, ¿ÀÇÁ¼Â(offset) ¹× baselineÀÇ ÇÕ°èÀÇ ÃÖ´ë°ª ÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout µð ¼¾Æ®

getLeading

public float getLeading()
TextLayout leading¸¦ ¸®ÅÏÇÕ´Ï´Ù. leading´Â ÀÌ TextLayout ¿ëÀ¸·Î¼­ Ãßõ µÇ°í ÀÖ´Â Çà°£ ½ºÆäÀ̽ºÀÔ´Ï´Ù.

leading´Â TextLayout ¸ðµç ±×·¡ÇÁ º£Å©ÅçÀÇ leading, µð ¼¾Æ® ¹× baseline·ÎºÎÅÍ °è»êµË´Ï´Ù. ¾Ë°í¸®ÁòÀº ´ë·« ´ÙÀ½°ú °°½À´Ï´Ù.

 maxD = 0;
 maxDL = 0;
 for (GlyphVector g in all glyphvectors) { maxD = max(maxD, g.getDescent() + offsets[g.getBaseline()]);
 maxDL = max(maxDL, g.getDescent() + g.getLeading() + offsets[g.getBaseline()]);
 } return maxDL - maxD;
 

¹Ýȯ°ª:
ÀÌ TextLayout ¼±µÎ

getBounds

public Rectangle2D  getBounds()
ÀÌ TextLayout °æ°è¸¦ ¸®ÅÏÇÕ´Ï´Ù. °æ°è¿¡´Â TextLayout¸¦ ·»´õ¸µ ÇÒ ¼ö ÀÖ´Â ¸ðµç Çȼ¿ÀÌ Æ÷ÇԵ˴ϴÙ. TextLayout ¾Æ¼¾Æ®, µð ¼¾Æ®, ¿øÁ¡, ¶Ç´Â À¯È¿Æø°ú ¿ÏÀüÇÏ°Ô´Â ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout °æ°èÀÎ Rectangle2D

isLeftToRight

public boolean isLeftToRight()
ÀÌ TextLayout º£À̽º°¡ µÉ ¹æÇâÀÌ ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀÇ °æ¿ì¿¡ true¸¦ µ¹·ÁÁÖ°í, ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ °æ¿ì¿¡ false¸¦ ¸®ÅÏÇÕ´Ï´Ù. TextLayout¿¡´Â ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊ (LTR) ¶Ç´Â ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊ (RTL)ÀÇ ¾î´À ÂÊÀΰ¡ÀÇ º£À̽º°¡ µÉ ¹æÇâÀÌ ÀÖ½À´Ï´Ù. º£À̽º°¡ µÉ ¹æÇâÀº ÇàÀÇ ÅؽºÆ®ÀÇ ½ÇÁ¦ÀÇ ¹æÇâ (LTR, RTL, ¶Ç´Â È¥ÇÕ)¿¡´Â Á¸ÇÏÁö ¾Ê½À´Ï´Ù. ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀÇ ·¹À̾ƿôÀº µðÆúÆ®¿¡¼­´Â Á嫆 °¡Áö·±È÷ ÇÏ°¡ µË´Ï´Ù. ·¹À̾ƿôÀÌ ÅÇ Ã·ºÎÀÇ Çà¿¡ ³õ¿©Á³À» °æ¿ì, ÅÇÀº ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀÌ µÇ¹Ç·Î ³í¸®ÀûÀ¸·Î ¿¬¼ÓÇÏ´Â ·¹À̾ƿôÀº ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀ¸·Î ¹èÄ¡µË´Ï´Ù. RTL ·¹À̾ƿôÀÇ °æ¿ì´Â ÀÌ ¹Ý´ëÀÔ´Ï´Ù. ÀÌ °æ¿ì µðÆúÆ®¿¡¼­´Â ¿ì´Ü °¡Áö·±È÷ÀÇÇØ ÅÇÀº ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÌ µË´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout º£À̽º°¡ µÉ ¹æÇâÀÌ ¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀÇ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

isVertical

public boolean isVertical()
ÀÌ TextLayoutÀÌ ¼öÁ÷ÀÇ °æ¿ì¿¡ true¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayoutÀÌ ¼öÁ÷ÀÇ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false

getCharacterCount

public int getCharacterCount()
ÀÌ TextLayoutÀÌ ³ªÅ¸³»´Â ¹®ÀÚ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ TextLayout ¹®ÀÚ¼ö

getCaretInfo

public float[] getCaretInfo(TextHitInfo  hit,
                            Rectangle2D  bounds)
hit¿¡ ´ëÀÀÇÏ´Â caret¿¡ ´ëÇÑ Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¹è¿­ÀÇ ÃÖÃÊÀÇ ¿ä¼Ò´Â caret¿Í baselineÀÇ ±³Á¡ÀÔ´Ï´Ù. ¹è¿­ÀÇ 2¹ø°ÀÇ ¿ä¼Ò´Â caretÀÇ ¿ª±â¿ï±â (·±/¶óÀÌÁî)ÀÔ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â Á¤º¸ À§Çؼ­¸¸ »ç¿ëµË´Ï´Ù. caret¸¦ Ç¥½ÃÇÏ·Á¸é, getCaretShapes¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä.

ÆĶó¹ÌÅÍ:
hit - ÀÌ TextLayout ¹®ÀÚÀÇ È÷Æ®
bounds - caret Á¤º¸°¡ ±¸ÃàµÇ´Â °æ°è
¹Ýȯ°ª:
caretÀÇ À§Ä¡¿Í ±â¿ï±â°¡ Æ÷ÇԵǰí ÀÖ´Â 2 ¿ä¼Ò ¹è¿­
°ü·Ã Ç׸ñ:
getCaretShapes(int, Rectangle2D, TextLayout.CaretPolicy), Font.getItalicAngle()

getCaretInfo

public float[] getCaretInfo(TextHitInfo  hit)
hit¿¡ ´ëÀÀÇÏ´Â caret¿¡ ´ëÇÑ Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â getCaretInfo °£ÀÌ overloadÀ̸ç, ÀÌ TextLayout ÀÚ¿¬ °æ°è¸¦ »ç¿ëÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
hit - ÀÌ TextLayout ¹®ÀÚÀÇ È÷Æ®
¹Ýȯ°ª:
È÷Æ®¿¡ ´ëÀÀÇÏ´Â caret¿¡ ´ëÇÑ Á¤º¸

getNextRightHit

public TextHitInfo  getNextRightHit(TextHitInfo  hit)
¿À¸¥ÂÊ (ÇÏ) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¹æÇâÀ¸·Î È÷Æ®°¡ ¾ø´Â °æ¿ì´Â nullÀ» ¸®ÅÏÇÕ´Ï´Ù. È÷Æ® ¹®ÀÚÀÇ À妽º°¡ °æ°è³»¿¡ ¾ø´Â °æ¿ì´Â IllegalArgumentExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

ÆĶó¹ÌÅÍ:
hit - ÀÌ ·¹À̾ƿôÀÇ ¹®ÀÚÀÇ È÷Æ®
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caret¿¡ ´ëÇؼ­ ¿À¸¥ÂÊ (ÇÏ) ¹æÇâ¿¡ À§Ä¡ÇÏ´Â ´ÙÀ½ÀÇ caretÀÇ È÷Æ®, ¶Ç´Â null

getNextRightHit

public TextHitInfo  getNextRightHit(int offset,
                                   TextLayout.CaretPolicy  policy)
¿À¸¥ÂÊ (ÇÏ) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¹æÇâÀ¸·Î È÷Æ®°¡ ¾ø´Â °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴ٠. È÷Æ®´Â ÁöÁ¤µÈ Á¤Ã¥¿¡ ÇÑ, ÁöÁ¤µÈ ¿ÀÇÁ¼Â(offset) À§Ä¡ÀÇ °­ÇÑ caretÀÇ ¿ìÃø¿¡ ÀÖ½À´Ï´Ù. ¸®ÅÏµÈ È÷Æ®´Â ÁöÁ¤µÈ Á¤Ã¥¿¡ ÇÑ, 2°³ÀÇ È÷Æ®ÀÇ °­ÇÑ (ºÐ)ºôÆ®ÀδϴÙ.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout »ðÀÔ ¿ÀÇÁ¼Â(offset). 0 º¸´Ù ÀÛÀº °ªÀ̳ª TextLayout °´Ã¼ÀÇ ¹®ÀÚ Ä«¿îÆ®º¸´Ù Å« °ªÀº ºÒ°¡
policy - °­ÇÑ caret¸¦ ¼±ÅÃÇϱâ À§Çؼ­ »ç¿ëµÇ´Â Á¤Ã¥
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caret¿¡ ´ëÇؼ­ ¿À¸¥ÂÊ (ÇÏ) ¹æÇâ¿¡ À§Ä¡ÇÏ´Â ´ÙÀ½ÀÇ caretÀÇ È÷Æ®, ¶Ç´Â null

getNextRightHit

public TextHitInfo  getNextRightHit(int offset)
¿À¸¥ÂÊ (ÇÏ) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¹æÇâÀ¸·Î È÷Æ®°¡ ¾ø´Â °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴ٠. È÷Æ®´Â µðÆúÆ®ÀÇ Á¤Ã¥¿¡ ÇÑ, ÁöÁ¤µÈ ¿ÀÇÁ¼Â(offset) À§Ä¡ÀÇ °­ÇÑ caretÀÇ ¿À¸¥ÂÊ¿¡ ÀÖ½À´Ï´Ù. ¸®ÅÏµÈ È÷Æ®´Â µðÆúÆ®ÀÇ Á¤Ã¥¿¡ ÇÑ, 2°³ÀÇ È÷Æ®ÀÇ °­ÇÑ (ºÐ)ºôÆ®ÀδϴÙ.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout »ðÀÔ ¿ÀÇÁ¼Â(offset). 0 º¸´Ù ÀÛÀº °ªÀ̳ª TextLayout °´Ã¼ÀÇ ¹®ÀÚ Ä«¿îÆ®º¸´Ù Å« °ªÀº ºÒ°¡
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caret¿¡ ´ëÇؼ­ ¿À¸¥ÂÊ (ÇÏ) ¹æÇâ¿¡ À§Ä¡ÇÏ´Â ´ÙÀ½ÀÇ caretÀÇ È÷Æ®, ¶Ç´Â null

getNextLeftHit

public TextHitInfo  getNextLeftHit(TextHitInfo  hit)
¿ÞÂÊ (»ó) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¹æÇâÀ¸·Î È÷Æ®°¡ ¾ø´Â °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴ٠. È÷Æ® ¹®ÀÚÀÇ À妽º°¡ °æ°è³»¿¡ ¾ø´Â °æ¿ì´Â IllegalArgumentException°¡ ¹ß»ý µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
hit - ÀÌ TextLayout ¹®ÀÚÀÇ È÷Æ®
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caret¿¡ ´ëÇؼ­ ¿ÞÂÊ (»ó) ¹æÇâ¿¡ À§Ä¡ÇÏ´Â ´ÙÀ½ÀÇ caretÀÇ È÷Æ®, ¶Ç´Â null

getNextLeftHit

public TextHitInfo  getNextLeftHit(int offset,
                                  TextLayout.CaretPolicy  policy)
¿ÞÂÊ (»ó) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¹æÇâÀ¸·Î È÷Æ®°¡ ¾ø´Â °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴ٠. È÷Æ®´Â ÁöÁ¤µÈ Á¤Ã¥¿¡ ÇÑ, ÁöÁ¤µÈ ¿ÀÇÁ¼Â(offset) À§Ä¡ÀÇ °­ÇÑ caretÀÇ ¿ÞÂÊ¿¡ ÀÖ½À´Ï´Ù. ¸®ÅÏµÈ È÷Æ®´Â ÁöÁ¤µÈ Á¤Ã¥¿¡ ÇÑ, 2°³ÀÇ È÷Æ®ÀÇ °­ÇÑ (ºÐ)ºôÆ®ÀδϴÙ.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout »ðÀÔ ¿ÀÇÁ¼Â(offset). 0 º¸´Ù ÀÛÀº °ªÀ̳ª TextLayout °´Ã¼ÀÇ ¹®ÀÚ Ä«¿îÆ®º¸´Ù Å« °ªÀº ºÒ°¡
policy - °­ÇÑ caret¸¦ ¼±ÅÃÇϱâ À§Çؼ­ »ç¿ëµÇ´Â Á¤Ã¥
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caret¿¡ ´ëÇؼ­ ¿ÞÂÊ (»ó) ¹æÇâ¿¡ À§Ä¡ÇÏ´Â ´ÙÀ½ÀÇ caretÀÇ È÷Æ®, ¶Ç´Â null

getNextLeftHit

public TextHitInfo  getNextLeftHit(int offset)
¿ÞÂÊ (»ó) ¹æÇâÀÇ ´ÙÀ½ÀÇ caretÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¹æÇâÀ¸·Î È÷Æ®°¡ ¾ø´Â °æ¿ì´Â nullÀÌ ¸®Åϵ˴ϴ٠. È÷Æ®´Â µðÆúÆ®ÀÇ Á¤Ã¥¿¡ ÇÑ, ÁöÁ¤µÈ ¿ÀÇÁ¼Â(offset) À§Ä¡ÀÇ °­ÇÑ caretÀÇ ¿ÞÂÊÀÔ´Ï´Ù. ¸®ÅÏµÈ È÷Æ®´Â µðÆúÆ®ÀÇ Á¤Ã¥¿¡ ÇÑ, 2°³ÀÇ È÷Æ®ÀÇ °­ÇÑ (ºÐ)ºôÆ®ÀδϴÙ.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout »ðÀÔ ¿ÀÇÁ¼Â(offset). 0 º¸´Ù ÀÛÀº °ªÀ̳ª TextLayout °´Ã¼ÀÇ ¹®ÀÚ Ä«¿îÆ®º¸´Ù Å« °ªÀº ºÒ°¡
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caret¿¡ ´ëÇؼ­ ¿ÞÂÊ (»ó) ¹æÇâ¿¡ À§Ä¡ÇÏ´Â ´ÙÀ½ÀÇ caretÀÇ È÷Æ®, ¶Ç´Â null

getVisualOtherHit

public TextHitInfo  getVisualOtherHit(TextHitInfo  hit)
ÁöÁ¤µÈ È÷Æ®ÀÇ caretÀÇ ¹Ý´ëÃøÀÇ È÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
hit - ÁöÁ¤µÈ È÷Æ®
¹Ýȯ°ª:
ÁöÁ¤µÈ È÷Æ®ÀÇ caretÀÇ ¹Ý´ë Ãø¿¡ ÀÖ´Â È÷Æ®

getCaretShape

public Shape  getCaretShape(TextHitInfo  hit,
                           Rectangle2D  bounds)
ÁöÁ¤µÈ °æ°è³»ÀÇ ÁöÁ¤µÈ È÷Æ®¿¡ ÀÖ´Â caret¸¦ ³ªÅ¸³»´Â Shape¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
hit - caret¸¦ »ý¼ºÇÏ´Â È÷Æ®
bounds - caretÀÇ »ý¼ºÀ¸·Î »ç¿ëÇÏ´Â TextLayout °æ°è
¹Ýȯ°ª:
caret¸¦ ³ªÅ¸³»´Â Shape

getCaretShape

public Shape  getCaretShape(TextHitInfo  hit)
ÀÌ TextLayout ÀÚ¿¬ °æ°è³»ÀÇ ÁöÁ¤µÈ È÷Æ®¿¡ ÀÖ´Â caret¸¦ ³ªÅ¸³»´Â Shape¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
hit - caret¸¦ »ý¼ºÇÏ´Â È÷Æ®
¹Ýȯ°ª:
caret¸¦ ³ªÅ¸³»´Â Shape

getCharacterLevel

public byte getCharacterLevel(int index)
index¿¡ ÀÖ´Â ¹®ÀÚÀÇ ·¹º§À» ¸®ÅÏÇÕ´Ï´Ù. À妽º -1 ¹× characterCount¿¡´Â ÀÌ TextLayout ±âÀú ·¹º§À» ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
index - ·¹º§À» ¾ò´Â ¹®ÀÚÀÇ À妽º
¹Ýȯ°ª:
ÁöÁ¤µÈ À妽º¿¡ ÀÖ´Â ¹®ÀÚÀÇ ·¹º§

getCaretShapes

public Shape [] getCaretShapes(int offset,
                              Rectangle2D  bounds,
                              TextLayout.CaretPolicy  policy)
°­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2°³ÀÇ À±°û¼±À» ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout ¿ÀÇÁ¼Â(offset)
bounds - caret¸¦ È®ÀåÇÏ´Â °æ°è
policy - ÁöÁ¤ÇÑ CaretPolicy
¹Ýȯ°ª:
2 »ìÀÇ ÆнºÀÇ ¹è¿­. ¿ä¼Ò 0 Àº °­ÇÑ caret. 2°³ÀÇ caret°¡ ÀÖ´Â °æ¿ì, ¿ä¼Ò 1 Àº ¾àÇÑ caret. ±×·¸Áö ¾ÊÀº °æ¿ì, ¿ä¼Ò 1 Àº null

getCaretShapes

public Shape [] getCaretShapes(int offset,
                              Rectangle2D  bounds)
°­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2°³ÀÇ À±°û¼±À» ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â getCaretShapes °£ÀÌ overloadÀ̸ç, µðÆúÆ®ÀÇ caret Á¤Ã¥¸¦ »ç¿ëÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout ¿ÀÇÁ¼Â(offset)
bounds - caret¸¦ È®ÀåÇÏ´Â °æ°è
¹Ýȯ°ª:
DEFAULT_CARET_POLICY¿¡ ¼­ÀÇ Á¤ÀÇ¿¡ ÇÑ, °­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2 »ìÀÇ Æнº

getCaretShapes

public Shape [] getCaretShapes(int offset)
°­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2°³ÀÇ À±°û¼±À» ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â getCaretShapes °£ÀÌ overloadÀ̸ç, µðÆúÆ®ÀÇ caret Á¤Ã¥ ¹× ÀÌ TextLayout °´Ã¼ÀÇ ÀÚ¿¬ °æ°è¸¦ »ç¿ëÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
offset - ÀÌ TextLayout ¿ÀÇÁ¼Â(offset)
¹Ýȯ°ª:
DEFAULT_CARET_POLICY¿¡ ¼­ÀÇ Á¤ÀÇ¿¡ ÇÑ, °­ÇÑ caret¿Í ¾àÇÑ caret¿¡ ´ëÀÀÇÏ´Â 2 »ìÀÇ Æнº

getLogicalRangesForVisualSelection

public int[] getLogicalRangesForVisualSelection(TextHitInfo  firstEndpoint,
                                                TextHitInfo  secondEndpoint)
½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§¿¡ ´ëÀÀÇÏ´Â ÅؽºÆ®ÀÇ ³í¸®ÀûÀÎ ¹üÀ§¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
firstEndpoint - ½Ã°¢ÀûÀÎ ¹üÀ§ÀÇ ÇÑÆíÀÇ ´Ü Á¡
secondEndpoint - ½Ã°¢ÀûÀÎ ¹üÀ§ÀÇ ÀÌÁ¦(ÀÌ¹Ì ) ÇÑÆíÀÇ ´Ü Á¡ firstEndpoint º¸´Ù À۾Ƶµ °¡´É
¹Ýȯ°ª:
¼±ÅÃµÈ ¹üÀ§ÀÇ °³½Ã/¸®¹ÔÆ®ÀÇ Æä¾î¸¦ ³ªÅ¸³»´Â Á¤¼öÀÇ ¹è¿­
°ü·Ã Ç׸ñ:
getVisualHighlightShape(TextHitInfo, TextHitInfo, Rectangle2D)

getVisualHighlightShape

public Shape  getVisualHighlightShape(TextHitInfo  firstEndpoint,
                                     TextHitInfo  secondEndpoint,
                                     Rectangle2D  bounds)
ÁöÁ¤µÈ ¹üÀ§ÀÇ ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â À±°û¼±À» bounds ±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù.

¼±Åà ¹üÀ§¿¡ Á嫆 (»ó´Ü)ÀÇ À§°ªÀÌ Æ÷ÇԵǴ °æ¿ì, ±× ¼±Åà ¹üÀ§´Â bounds ¿ÞÂÊ (À§)±îÁö È®ÀåµË´Ï´Ù. ±× ¼±Åà ¹üÀ§¿¡ ¿ì´Ü (ÇÏ´Ü)ÀÇ À§°ªÀÌ Æ÷ÇԵǴ °æ¿ì, ¼±Åà ¹üÀ§´Â °æ°èÀÇ ¿À¸¥ÂÊ (¾Æ·¡)±îÁö È®ÀåµË´Ï´Ù. ¼±Åà ¹üÀ§ÀÇ ³ôÀÌ (¼öÁ÷¼±»óÀÇ Æø)´Â Ç×»ó bounds ±îÁö È®ÀåµË´Ï´Ù.

¼±Åà ¹üÀ§´Â Ç×»ó ¿¬¼ÓÇÏ°í ÀÖ½À´Ï´Ù¸¸, È¥ÇÕ ¹æÇâ ÅؽºÆ®ÀÇ ÇàÀÇ °æ¿ì, ³í¸®ÀûÀ¸·Î ¼±ÅÃµÈ ÅؽºÆ®´Â ºÒ¿¬¼ÓÀÌ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ¼±ÅÃµÈ ÅؽºÆ®ÀÇ ³í¸®ÀûÀÎ ¹üÀ§´Â getLogicalRangesForVisualSelectionÀ» »ç¿ëÇØ ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ¡¸ABCdef¡¹¶ó°í ÇÏ´Â ÅؽºÆ®¸¦ ¿¹¿¡ »ý°¢ÇØ º¸°Ú½À´Ï´Ù. ´ë¹®ÀÚ´Â ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ ÅؽºÆ®¸¦ ³ªÅ¸³», ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ ÇàÀ¸·Î ·»´õ¸µ µÇ¾î ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§´Â 0L ( ¡¸A¡¹ÀÇ ¸®µù ¿§Áö)¿¡¼­ 3T ( ¡¸d¡¹ÀÇ Æ®·¹ÀÌ ¸µ ¿§Áö)ÀÔ´Ï´Ù. ÀÌ ÅؽºÆ®´Â ´ÙÀ½°ú °°ÀÌ Ç¥½ÃµË´Ï´Ù. ¹ØÁ٠÷ºÎ º¼µåÀÇ ¿µ¿ªÀº ¼±Åà ¹üÀ§¸¦ ³ªÅ¸³»°í ÀÖ½À´Ï´Ù.

 defCBA  
³í¸®ÀûÀÎ ¼±Åà ¹üÀ§´Â 0 ~ 3, 4 ~ 6 (ABC, ef)ÀÔ´Ï´Ù. ¿Ö³ÄÇϸé, ½Ã°¢ÀûÀ¸·Î ¿¬¼ÓÇÑ ÅؽºÆ®´Â ³í¸®ÀûÀÌ°Ô´Â ºÒ¿¬¼ÓÀ̱⠶§¹®ÀÔ´Ï´Ù. ¶Ç, ·¹À̾ƿôÀÇ ¿ì´ÜÀÇ À§Ä¡ ( ¡¸A¡¹ÀÇ ¿ìÃø)°¡ ¼±Åõǰí ÀÖÀ¸¹Ç·Î ¼±Åà ¹üÀ§´Â °æ°èÀÇ ¿À¸¥ÂʱîÁö È®ÀåµË´Ï´Ù.

ÆĶó¹ÌÅÍ:
firstEndpoint - ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§ÀÇ ÇÑÆíÀÇ ´Ü Á¡
secondEndpoint - ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§ÀÇ ÀÌÁ¦(ÀÌ¹Ì ) ÇÑÆíÀÇ ´Ü Á¡
bounds - ¼±Åà ¹üÀ§°¡ È®ÀåµÇ´Â °æ°èÀÇ ±¸Çü
¹Ýȯ°ª:
¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape
°ü·Ã Ç׸ñ:
getLogicalRangesForVisualSelection(TextHitInfo, TextHitInfo), getLogicalHighlightShape(int, int, Rectangle2D)

getVisualHighlightShape

public Shape  getVisualHighlightShape(TextHitInfo  firstEndpoint,
                                     TextHitInfo  secondEndpoint)
ÁöÁ¤µÈ ¹üÀ§ÀÇ ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape¸¦, °æ°è±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â getVisualHighlightShape °£ÀÌ overloadÀ̸ç, ÀÌ TextLayout ÀÚ¿¬ °æ°è¸¦ »ç¿ëÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
firstEndpoint - ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§ÀÇ ÇÑÆíÀÇ ´Ü Á¡
secondEndpoint - ½Ã°¢ÀûÀÎ ¼±Åà ¹üÀ§ÀÇ ÀÌÁ¦(ÀÌ¹Ì ) ÇÑÆíÀÇ ´Ü Á¡
¹Ýȯ°ª:
¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape

getLogicalHighlightShape

public Shape  getLogicalHighlightShape(int firstEndpoint,
                                      int secondEndpoint,
                                      Rectangle2D  bounds)
ÁöÁ¤µÈ ¹üÀ§ÀÇ ³í¸®ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape¸¦, ÁöÁ¤µÈ bounds ±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù.

¼±Åà ¹üÀ§¿¡ ÃÖÃÊÀÇ ³í¸® ¹®ÀÚ°¡ Æ÷ÇԵǾî ÀÖ´Â °æ¿ì, ±× ¼±Åà ¹üÀ§´Â ÀÌ TextLayout ¼±µÎÀÇ ¾ÕÀÇ bounds ºÎºÐ±îÁö È®ÀåµË´Ï´Ù. ¼±Åà ¹üÀ§¿¡ ¸¶Áö¸· ³í¸® ¹®ÀÚ°¡ Æ÷ÇԵǾî ÀÖ´Â °æ¿ì, ±× ¼±Åà ¹üÀ§´Â ÀÌ TextLayout ¸¶Áö¸· ³ª¸ÓÁöÀÇ bounds ºÎºÐ±îÁö È®ÀåµË´Ï´Ù. ¼±Åà ¹üÀ§ÀÇ ³ôÀÌ (¼öÁ÷¼±»óÀÇ Æø)´Â Ç×»ó bounds ±îÁö È®ÀåµË´Ï´Ù.

È¥ÇÕ ¹æÇâ ÅؽºÆ®ÀÇ ÇàÀÇ °æ¿ì, ¼±Åà ¹üÀ§°¡ ºÒ¿¬¼ÓÀÌ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. ¼±µÎ¿Í ¸®¹ÔÆ®ÀÇ »çÀÌÀÇ ³í¸®ÀûÀÎ ¹üÀ§¿¡ À§Ä¡ÇÏ´Â ¹®ÀÚ¸¸ÀÌ ¼±ÅõǾî ÀÖ´Â °Íó·³ º¸ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î ¡¸ABCdef¡¹¶ó°í ÇÏ´Â ÅؽºÆ®¸¦ ¿¹¿¡ »ý°¢ÇØ º¸°Ú½À´Ï´Ù. ´ë¹®ÀÚ´Â ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ ÅؽºÆ®¸¦ ³ªÅ¸³», ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ ÇàÀ¸·Î ·»´õ¸µ µÇ¾î ³í¸®ÀûÀÎ ¼±Åà ¹üÀ§´Â 0 ~ 4 (ABCd)ÀÔ´Ï´Ù. ÅؽºÆ®´Â ´ÙÀ½°ú °°ÀÌ Ç¥½ÃµË´Ï´Ù. ¼±Åà ¹üÀ§´Â º¼µå·Î Ç¥½ÃµÇ¾î È®Àå ºÎºÐÀº ¹ØÁٷΠǥ½ÃµË´Ï´Ù.

 defCBA  
¼±Åà ¹üÀ§´Â ºÒ¿¬¼ÓÀÔ´Ï´Ù. ±× ÀÌÀ¯´Â ¼±ÅÃµÈ ¹®ÀÚ°¡ ½Ã°¢ÀûÀ¸·Î ºÒ¿¬¼ÓÀ̱⠶§¹®ÀÔ´Ï´Ù. ¶Ç, ¼±Åà ¹üÀ§¿¡ ÃÖÃÊÀÇ ³í¸® ¹®ÀÚ (A)°¡ Æ÷ÇԵDZ⠶§¹®¿¡ ¼±Åà ¹üÀ§´Â ·¹À̾ƿôÀÇ ¼±µÎº¸´Ù ÀüÀÇ bounds ºÎºÐ±îÁö È®ÀåµË´Ï´Ù. ÀÌ °æ¿ì ( ¿À¸¥ÂÊ¿¡¼­ ¿ÞÂÊÀÇ Çà)´Â bounds ¿À¸¥ÂÊÀÇ ºÎºÐÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
firstEndpoint - ¼±ÅÃÇÏ´Â ¹®ÀÚÀÇ ¹üÀ§ÀÇ ´Ü Á¡
secondEndpoint - ¼±ÅÃÇÏ´Â ¹®ÀÚÀÇ ¹üÀ§ÀÇ ÀÌÁ¦(ÀÌ¹Ì ) ÇÑÆíÀÇ ´Ü Á¡ firstEndpoint º¸´Ù À۾Ƶµ °¡´É. min(firstEndpoint, secondEndpoint)ÀÇ ¹®ÀÚ´Â ¹üÀ§¿¡ Æ÷ÇÔµÇÁö¸¸, max(firstEndpoint, secondEndpoint)´Â ¹üÀ§·ÎºÎÅÍ Á¦¿ÜµÇ´Â
bounds - ¼±Åà ¹üÀ§°¡ È®ÀåµÇ´Â °æ°èÀÇ ±¸Çü
¹Ýȯ°ª:
¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â ¿µ¿ª
°ü·Ã Ç׸ñ:
getVisualHighlightShape(TextHitInfo, TextHitInfo, Rectangle2D)

getLogicalHighlightShape

public Shape  getLogicalHighlightShape(int firstEndpoint,
                                      int secondEndpoint)
ÁöÁ¤µÈ ¹üÀ§ÀÇ ³í¸®ÀûÀÎ ¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape¸¦, ÀÌ TextLayout ÀÚ¿¬ °æ°è±îÁö È®ÀåÇØ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â getLogicalHighlightShape °£ÀÌ overloadÀ̸ç, ÀÌ TextLayout ÀÚ¿¬ °æ°è¸¦ »ç¿ëÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
firstEndpoint - ¼±ÅÃÇÏ´Â ¹®ÀÚÀÇ ¹üÀ§ÀÇ ´Ü Á¡
secondEndpoint - ¼±ÅÃÇÏ´Â ¹®ÀÚÀÇ ¹üÀ§ÀÇ ÀÌÁ¦(ÀÌ¹Ì ) ÇÑÆíÀÇ ´Ü Á¡ firstEndpoint º¸´Ù À۾Ƶµ °¡´É. min(firstEndpoint, secondEndpoint)ÀÇ ¹®ÀÚ´Â ¹üÀ§¿¡ Æ÷ÇÔµÇÁö¸¸, max(firstEndpoint, secondEndpoint)´Â ¹üÀ§·ÎºÎÅÍ Á¦¿ÜµÈ´Ù
¹Ýȯ°ª:
¼±Åà ¹üÀ§¸¦ µÑ·¯½Î´Â Shape

getBlackBoxBounds

public Shape  getBlackBoxBounds(int firstEndpoint,
                               int secondEndpoint)
ÁöÁ¤µÈ ¹üÀ§¿¡ ÀÖ´Â ¸ðµç ¹®ÀÚÀÇ ºí·¢ ¹Ú½º °æ°è¸¦ ¸®ÅÏÇÕ´Ï´Ù. ºí·¢ ¹Ú½º °æ°è¶õ °³½Ã¿Í ¸®¹ÔÆ®ÀÇ »çÀÌÀÇ ¸ðµç ¹®ÀÚ¿¡ ´ëÀÀÇÏ´Â ¸ðµç ±×·¡ÇÁ ÀÇ ¹Ù¿îµù¹Ú½º ÀÇ °áÇÕÀ¸·Î ±¸¼ºµÇ´Â ¿µ¿ªÀÔ´Ï´Ù. ÀÌ À±°û¼±Àº ºÐ¸®ÇÏ°í ÀÖ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
firstEndpoint - ¹®ÀÚÀÇ ¹üÀ§ÀÇ ÇÑÆíÀÇ ´Ü Á¡
secondEndpoint - ¹®ÀÚÀÇ ¹üÀ§ÀÇ ÀÌÁ¦(ÀÌ¹Ì ) ÇÑÆíÀÇ ´Ü Á¡ firstEndpoint º¸´Ù À۾Ƶµ °¡´É
¹Ýȯ°ª:
ºí·¢ ¹Ú½º °æ°è¸¦ µÑ·¯½Î´ÂÆнº

hitTestChar

public TextHitInfo  hitTestChar(float x,
                               float y,
                               Rectangle2D  bounds)
ÁöÁ¤µÈ Á¡¿¡ ´ëÀÀÇÏ´Â TextHitInfo¸¦ ¸®ÅÏÇÕ´Ï´Ù. TextLayout °æ°èÀÇ ¿ÜÃøÀÇ ÁÂÇ¥´Â ÇàÀÇ ¹®ÀÚÀÇ À§Ä¡¿¡ °ü°è¾øÀÌ, ÃÖÃÊÀÇ ³í¸® ¹®ÀÚÀÇ ¸®µù ¿§Áö, ¶Ç´Â ¸¶Áö¸· ³í¸® ¹®ÀÚÀÇ Æ®·¹ÀÌ ¸µ ¿§ÁöÀÇ ¾î´À ÂÊÀÎÁö ÀûÀýÇÑ (ºÐ)ÆíÀÇ È÷Æ®¿¡ ´ëÀÀÇÕ´Ï´Ù. baseline¿¡ µû¸¥ ¹æÇ⸸ÀÌ, ÀÌ Æò°¡¿¡ »ç¿ëµË´Ï´Ù.

ÆĶó¹ÌÅÍ:
x - ÀÌ TextLayout ¿øÁ¡À¸·ÎºÎÅÍÀÇ x ¿ÀÇÁ¼Â(offset)
y - ÀÌ TextLayout ¿øÁ¡À¸·ÎºÎÅÍÀÇ y ¿ÀÇÁ¼Â(offset)
bounds - TextLayout °æ°è
¹Ýȯ°ª:
ÁöÁ¤µÈ Á¡º¸´Ù ¾Æ·¡ÀÇ ¹®ÀÚ ¹× ¿§Áö (¼±µÎ ¶Ç´Â ¸»¹Ì)¸¦ ±â¼úÇÏ´Â È÷Æ®

hitTestChar

public TextHitInfo  hitTestChar(float x,
                               float y)
ÁöÁ¤µÈ Á¡¿¡ ´ëÀÀÇÏ´Â TextHitInfo¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â hitTestChar °£ÀÌ overloadÀ̸ç, ÀÌ TextLayout ÀÚ¿¬½º·¯¿î °æ°è¸¦ »ç¿ëÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
x - ÀÌ TextLayout ¿øÁ¡À¸·ÎºÎÅÍÀÇ x ¿ÀÇÁ¼Â(offset)
y - ÀÌ TextLayout ¿øÁ¡À¸·ÎºÎÅÍÀÇ y ¿ÀÇÁ¼Â(offset)
¹Ýȯ°ª:
ÁöÁ¤µÈ Á¡º¸´Ù ¾Æ·¡ÀÇ ¹®ÀÚ ¹× ¿§Áö (¼±µÎ ¶Ç´Â ¸»¹Ì)¸¦ ±â¼úÇÏ´Â È÷Æ®

hashCode

public int hashCode()
ÀÌ TextLayout Çؽà Äڵ带 ¸®ÅÏÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ hashCode
¹Ýȯ°ª:
ÀÌ TextLayout Çؽà ÄÚµå
°ü·Ã Ç׸ñ:
Object.equals(java.lang.Object), Hashtable

equals

public boolean equals(Object  obj)
ÁöÁ¤µÈ ObjectÀÌ TextLayout °´Ã¼·Î ÁöÁ¤µÈ ObjectÀÌ ÀÌ TextLayout¿Í µ¿ÀÏÇÑ °æ¿ì¿¡ true¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ equals
ÆĶó¹ÌÅÍ:
obj - µ¿ÀÏÇÑÁö ¾î¶²Áö°¡ ÆÇÁ¤µÇ´Â Object
¹Ýȯ°ª:
ÁöÁ¤µÈ ObjectÀÌ ÀÌ TextLayout¿Í µ¿ÀÏÇÑ °æ¿ì´Â true, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
°ü·Ã Ç׸ñ:
Object.hashCode(), Hashtable

equals

public boolean equals(TextLayout  rhs)
2°³ÀÇ ·¹À̾ƿôÀÌ µ¿ÀÏÇÑ °æ¿ì¿¡ true¸¦ ¸®ÅÏÇÕ´Ï´Ù. 2°³ÀÇ ·¹À̾ƿôÀº ±×°ÍµéÀÌ °°Àº ¼ø¼­·Î °°Àº ±×·¡ÇÁ º£Å©ÅçÀ» Æ÷ÇÔÇÏ°í ÀÖ´Â °æ¿ì¿¡ µ¿ÀÏÇØÁý´Ï´Ù.

ÆĶó¹ÌÅÍ:
rhs - ÀÌ TextLayout¿Í ºñ±³ÇÏ´Â TextLayout
¹Ýȯ°ª:
ÁöÁ¤µÈ TextLayout ÀÌ ÀÌ TextLayout¿Í µ¿ÀÏÇÑ °æ¿ì´Â true

toString

public String  toString()
ÀÌ TextLayout µð¹ö±× Á¤º¸¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ TextLayout textLine¸¦ ³ªÅ¸³»´Â String

draw

public void draw(Graphics2D  g2,
                 float x,
                 float y)
ÁöÁ¤µÈ Graphics2D ÄÁÅؽºÆ® ÀÇ ÁöÁ¤µÈ À§Ä¡¿¡ ÀÌ TextLayout¸¦ ·»´õ¸µ ÇÕ´Ï´Ù. ·¹À̾ƿôÀÇ ¿øÁ¡Àº x,  y ÀÔ´Ï´Ù. ·»´õ¸µ´Â ÀÌ Á¤µµÄ¡ÀÇ getBounds() ³»ÀÇ ÀÓÀÇÀÇ Á¡¿¡ Á¢ÇÕ´Ï´Ù. g2´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
g2 - ·¹À̾ƿôÀÇ ·»´õ¸µÃ³ÀÇ Graphics2D ÄÁÅؽºÆ®
x,  y - ÀÌ TextLayout ¿øÁ¡ÀÇ ÁÂÇ¥
°ü·Ã Ç׸ñ:
getBounds()

getOutline

public Shape  getOutline(AffineTransform  tx)
ÀÌ TextLayout À±°ûÀ» ³ªÅ¸³»´Â Shape¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
tx - ÀÌ TextLayout À±°û¿¡ Àû¿ëÇÏ´Â ÀÓÀÇ ÁöÁ¤ AffineTransform
¹Ýȯ°ª:
ÀÌ TextLayout À±°ûÀÎ Shape

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.