JavaTM 2 Platform
Standard Ed. 5.0

java.awt.font
Ŭ·¡½º TextMeasurer

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

public final class TextMeasurer
extends Object
implements Cloneable

TextMeasurer Ŭ·¡½º´Â À¯È¿ÆøÀÇ ÃøÁ¤, ¹®ÀÚ ¹üÀ§ÀÇ À¯È¿ÆøÀÇ ÁöÁ¤, ¹®ÀÚ ¹üÀ§ÀÇ TextLayout ÀÛ¼º µî, °³Çà¿¡ ÇÊ¿äÇÑ ±âº» Á¶ÀÛÀ» Á¦°øÇÕ´Ï´Ù. Æз¯±×·¡ÇÁ°¡ Áõ°¡ÇßÀ» °æ¿ìÀÇ ÆíÁý ¸Þ¼­µåµµ Á¦°øÇÕ´Ï´Ù.

TextMeasurer°´Ã¼´Â ÅؽºÆ®ÀÇ 1°³ÀÇ Æз¯±×·¡ÇÁ¸¦ ³ªÅ¸³»´Â AttributedCharacterIterator ·Î ±¸ÃàÇÕ´Ï´Ù. AttributedCharacterIterator getBeginIndex ¸Þ¼­µå°¡ µ¹·ÁÁÖ´Â °ªÀº ÃÖÃÊÀÇ ¹®ÀÚÀÇ Àý´ë À妽º¸¦ Á¤ÀÇÇÕ´Ï´Ù. AttributedCharacterIterator getEndIndex ¸Þ¼­µå°¡ µ¹·ÁÁÖ´Â °ªÀº ¸¶Áö¸· ¹®ÀÚÀÇ ´ÙÀ½ÀÇ À妽º¸¦ Á¤ÀÇÇÕ´Ï´Ù. ÀÌ·¯ÇÑ °ª¿¡ÀÇÇØ TextMeasurer¸¦ È£ÃâÇÒ ¶§ »ç¿ëÇÏ´Â À妽ºÀÇ ¹üÀ§°¡ Á¤Àǵ˴ϴÙ. ¿¹¸¦ µé¾î ÅؽºÆ®ÀÇ ¹üÀ§ÀÇ À¯È¿Æø, Áï ÅؽºÆ®ÀÇ ¹üÀ§ÀÇ °³ÇàÀ» ÃëµæÇϱâ À§ÇÑ È£Ãâ¿¡¼­´Â °³½Ã À妽ºÄ¡¿Í Á¾·á À妽ºÄ¡ÀÇ »çÀÌÀÇ À妽º¸¦ »ç¿ëÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. insertChar ¹× deleteChar¸¦ È£ÃâÇϸé, TextMeasurer°¡ ¸®¼Â µÇ¾î ÀÌ·¯ÇÑ È£Ãâ·Î °Ç³×¹ÞÀº AttributedCharacterIterator °³½Ã À妽º¿Í Á¾·á À妽º°¡ »ç¿ëµË´Ï´Ù.

´ëºÎºÐÀÇ Å¬¶óÀ̾ðÆ®´Â Ç¥ÁØ °³Çà (°¢ Çà¿¡ ¹èÄ¡ °¡´ÉÇÑ ÇÑÀÇ ¹®ÀÚ¸¦ ¹èÄ¡)À» ±¸ÇöÇÏ´Â Æí¸®ÇÑ LineBreakMeasurer¸¦ »ç¿ëÇÕ´Ï´Ù.

µµÀÔµÈ ¹öÀü :
1.3
°ü·Ã Ç׸ñ:
LineBreakMeasurer

»ý¼ºÀÚ °³¿ä
TextMeasurer (AttributedCharacterIterator  text, FontRenderContext  frc)
          ¼Ò½º ÅؽºÆ®·ÎºÎÅÍ TextMeasurer¸¦ ±¸ÃàÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
protected  Object clone ()
          ÀÌ °´Ã¼ÀÇ º¹»çº»À» ÀÛ¼ºÇØ ¸®ÅÏÇÕ´Ï´Ù.
 void deleteChar (AttributedCharacterIterator  newParagraph, int deletePos)
          ÀÌ TextMeasurer°¡ ÇöÀç ³ªÅ¸³»´Â Æз¯±×·¡ÇÁ·Î 1 ¹®ÀÚ¸¦ »èÁ¦ÇÏ°í ³ª¼­ TextMeasurer¸¦ °»½ÅÇÕ´Ï´Ù.
 float getAdvanceBetween (int start, int limit)
          start·Î ½ÃÀ۵Ǿî, limit ±îÁöÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÑ ÇàÀÇ ±×·¡ÇȳÐÀ̸¦ ¸®ÅÏÇÕ´Ï´Ù.
 TextLayout getLayout (int start, int limit)
          ÁöÁ¤µÈ ¹®ÀÚ ¹üÀ§ÀÇ TextLayout¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 int getLineBreakIndex (int start, float maxAdvance)
          start·Î ½ÃÀ۵Ǿî, ±×·¡ÇÈÆøÀÌ maxAdvance Çà¿¡ ¹èÄ¡ÇÒ ¼ö ¾ø´Â ÃÖÃÊÀÇ ¹®ÀÚÀÇ À妽º¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 void insertChar (AttributedCharacterIterator  newParagraph, int insertPos)
          ÀÌ TextMeasurer°¡ ÇöÀç ³ªÅ¸³»´Â Æз¯±×·¡ÇÁ¿¡ 1 ¹®ÀÚ¸¦ »ðÀÔÇÏ°í ³ª¼­ TextMeasurer¸¦ °»½ÅÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

TextMeasurer

public TextMeasurer(AttributedCharacterIterator  text,
                    FontRenderContext  frc)
¼Ò½º ÅؽºÆ®·ÎºÎÅÍ TextMeasurer¸¦ ±¸ÃàÇÕ´Ï´Ù. ¼Ò½º ÅؽºÆ®´Â 1 ´Ü¶ô Àüü°¡ µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
text - ¼Ò½º ´Ü¶ô. nullÀº ºÒ°¡
frc - ÅؽºÆ®¸¦ Á¤È®ÇÏ°Ô ÃøÁ¤ÇÏ´Â °æ¿ì¿¡ ÇÊ¿äÇÑ ±×·¡ÇÈ µð¹ÙÀ̽º¿¡ °üÇÑ Á¤º¸. nullÀº ºÒ°¡
¸Þ¼­µåÀÇ »ó¼¼

clone

protected Object  clone()
Ŭ·¡½º Object ±â¼ú:
ÀÌ °´Ã¼ÀÇ º¹»çº»À» ÀÛ¼ºÇØ ¸®ÅÏÇÕ´Ï´Ù. ¡¸Ä«ÇÇ¡¹ÀÇ Á¤È®ÇÑ ÀÌÀ¯´Â °´Ã¼ÀÇ Å¬·¡½º¿¡ ÀÇÇØ ´Ù¸¨´Ï´Ù. ÀϹÝÀûÀ¸·Î´Â ÀÓÀÇÀÇ °´Ã¼ x¿¡ ´ëÇØ, ´ÙÀ½ÀÇ ½Ä

 x.clone() ! = x
ÇÏÁö¸¸ true À̸ç, ´ÙÀ½ÀÇ ½Ä

 x.clone(). getClass() == x.getClass()
µµ true ÀÎ °ÍÀÔ´Ï´Ù¸¸, À̰͵鵵 Àý´ëÀûÀÎ ¿ä°ÇÀÌ ¾Æ´Õ´Ï´Ù. ¶Ç ´ÙÀ½ÀÇ ½Ä

 x.clone(). equals(x)
µµ º¸Åë true°¡ µË´Ï´Ù¸¸, À̰͵µ Àý´ëÀûÀÎ ¿ä°ÇÀÌ ¾Æ´Õ´Ï´Ù.

º¸Åë, super.clone¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ¸®ÅÏµÈ °´Ã¼¸¦ ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù. Ŭ·¡½º ¹× ±× ½´ÆÛ Å¬·¡½º ¸ðµç °Í (Object¸¦ Á¦¿ÜÇÑ´Ù)ÀÌ ÀÌ ±ÔÄ¢¿¡ µû¸£´Â °æ¿ì, x.clone(). getClass() == x.getClass()°¡ ¼º¸³ÇÕ´Ï´Ù.

º¸Åë, ÀÌ ¸Þ¼­µå¿¡ ÀÇÇØ ¸®ÅÏµÈ °´Ã¼´Â ÀÌ °´Ã¼ (º¹Á¦µÇ°í ÀÖ´Ù)·ÎºÎÅÍ µ¶¸³ÇÏ°í ÀÖÀ» ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ÀÌ µ¶¸³¼ºÀ» ´Þ¼ºÇϱâ À§ÇØ, super.clone°¡ µ¹·ÁÁÖ´Â °´Ã¼ÀÇ Çʵ带 1°³ ÀÌ»ó (°´Ã¼°¡ µ¹·ÁÁÖ±â Àü¿¡) º¯°æÇÏ´Â °ÍÀÌ ÇÊ¿äÇÏ°Ô µÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº º¸Åë, º¹Á¦ÇÏ´Â °´Ã¼ÀÇ ³»ºÎ ¡¸½ÉÃþ ±¸Á¶¡¹¸¦ ±¸¼ºÇÏ´Â °¡º¯ °´Ã¼ÀÇ Ä«ÇÇ ¹× ÀÌ·¯ÇÑ °´Ã¼¿¡ÀÇ ÂüÁ¶¸¦ Ä«ÇÇ¿¡ÀÇ ÂüÁ¶¿¡ ¿Å°Ü³õ´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù. Ŭ·¡½º¿¡ ¿ø½ÃÀû ÇÊµå ¶Ç´Â ºÒº¯ °´Ã¼¿¡ÀÇ ÂüÁ¶¸¸ÀÌ Æ÷ÇԵǴ °æ¿ì, º¸Åë, super.clone¿¡ ÀÇÇØ ¸®ÅÏµÈ °´Ã¼³»ÀÇ Çʵ带 º¯°æÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

Object Ŭ·¡½ºÀÇ clone ¸Þ¼­µå´Â ƯÁ¤ÀÇ º¹Á¦ 󸮸¦ ½ÇÇàÇÕ´Ï´Ù. ¿ì¼±, ÀÌ °´Ã¼ÀÇ Å¬·¡½º°¡ Cloneable ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì´Â CloneNotSupportedExceptionÀÌ ¹ß»ý µË´Ï´Ù. ¹è¿­Àº ¸ðµÎ, ÀÎÅÍÆäÀ̽º Cloneable¸¦ ±¸ÇöÇÏ°í ÀÖ´Â °ÍÀ̶ó°í º¸¿©Áö´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. ±¸ÇöÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì, ÀÌ ¸Þ¼­µå´Â ÀÌ °´Ã¼ÀÇ Å¬·¡½ºÀÇ »õ·Î¿î ÀνºÅϽº¸¦ »ý¼ºÇØ, ±× Çʵ带 ¸ðµÎ, ÀÌ °´Ã¼ÀÇ ´ëÀÀÇÏ´Â °¢ ÇʵåÀÇ ³»¿ëÀ¸·Î ÃʱâÈ­ÇÕ´Ï´Ù. ÀÌ°ÍÀº ´ëÀÔ°ú °°¾Æ, ÇʵåÀÇ ³»¿ë ÀÚ½ÅÀÌ º¹Á¦µÇ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. Áï ÀÌ ¸Þ¼­µå´Â °´Ã¼ÀÇ ¡¸»þ·ÎÄÚÇÇ¡¹¸¦ »ý¼ºÇÕ´Ï´Ù¸¸, ¡¸µö Ä«ÇÇ¡¹´Â »ý¼ºÇÏÁö ¾Ê½À´Ï´Ù.

Ŭ·¡½º Object ÀÚü´Â Cloneable ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏÁö ¾Ê±â ¶§¹®¿¡ Ŭ·¡½º°¡ Object ÀÎ clone ¸Þ¼­µå¸¦ È£ÃâÇϸé, ½ÇÇà½Ã¿¡ ¿¹¿Ü°¡ ¹ß»ý µË´Ï´Ù.

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

getLineBreakIndex

public int getLineBreakIndex(int start,
                             float maxAdvance)
start·Î ½ÃÀ۵Ǿî, ±×·¡ÇÈÆøÀÌ maxAdvance Çà¿¡ ¹èÄ¡ÇÒ ¼ö ¾ø´Â ÃÖÃÊÀÇ ¹®ÀÚÀÇ À妽º¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
start - ÃøÁ¤À» °³½ÃÇÏ´Â À§Ä¡ÀÇ ¹®ÀÚ À妽º. start´Â Àý´ë À妽º·Î Æз¯±×·¡ÇÁÀÇ ½ºÅ¸Æ®¿¡ °üÇÑ °ÍÀÌ ¾Æ´Ñ
maxAdvance - ÇàÀ» ¹èÄ¡ÇÏ´Â ±×·¡ÇÈÆø
¹Ýȯ°ª:
start·Î ½ÃÀ۵Ǿî, ±×·¡ÇÈÆøÀÌ maxAdvance À̳»ÀÇ Çà¿¡ ¹èÄ¡ÇÒ ¼ö ÀÖ´Â ¸¶Áö¸· ¹®ÀÚÀÇ µÚÀÇ À妽º
¿¹¿Ü:
IllegalArgumentException - startÀÌ Æз¯±×·¡ÇÁÀÇ °³½Ã À§Ä¡º¸´Ù ÀüÀÇ °æ¿ì

getAdvanceBetween

public float getAdvanceBetween(int start,
                               int limit)
start·Î ½ÃÀ۵Ǿî, limit ±îÁöÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÑ ÇàÀÇ ±×·¡ÇȳÐÀ̸¦ ¸®ÅÏÇÕ´Ï´Ù. start¿Í limit´Â Àý´ë À妽º·Î Æз¯±×·¡ÇÁÀÇ ½ºÅ¸Æ®¿¡´Â °ü·ÃÇÏÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
start - ÃøÁ¤À» °³½ÃÇÏ´Â Àå¼ÒÀÇ ¹®ÀÚ À妽º
limit - ÃøÁ¤À» Á¾·áÇÏ´Â Àå¼ÒÀÇ ¹®ÀÚ À妽º
¹Ýȯ°ª:
start·Î ºÎÅÍ ½ÃÀ۵Ǿî, limit ±îÁöÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÑ ÇàÀÇ ±×·¡ÇÈÆø
¿¹¿Ü:
IndexOutOfBoundsException - limitÀÌ start º¸´Ù ÀüÀÇ °æ¿ì
IllegalArgumentException - start ¶Ç´Â limitÀÌ Æз¯±×·¡ÇÁÀÇ °³½Ã À§Ä¡¿Í Á¾·á À§Ä¡µ¿¾È¿¡ ¾ø´Â °æ¿ì

getLayout

public TextLayout  getLayout(int start,
                            int limit)
ÁöÁ¤µÈ ¹®ÀÚ ¹üÀ§ÀÇ TextLayout¸¦ ¸®ÅÏÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
start - ÃÖÃÊÀÇ ¹®ÀÚÀÇ À妽º
limit - ÅؽºÆ®³»ÀÇ ¸¶Áö¸· ¹®ÀÚÀÇ ´ÙÀ½ÀÇ À妽º. start º¸´Ù Å©Áö ¾ÊÀ¸¸é ¾È µÈ´Ù
¹Ýȯ°ª:
start·Î ºÎÅÍ ½ÃÀ۵Ǿî, limit º¸´Ù ÀÛÀº ¹®ÀÚÀÇ TextLayout
¿¹¿Ü:
IndexOutOfBoundsException - limitÀÌ start º¸´Ù ÀüÀÇ °æ¿ì
IllegalArgumentException - start ¶Ç´Â limitÀÌ Æз¯±×·¡ÇÁÀÇ °³½Ã À§Ä¡¿Í Á¾·á À§Ä¡µ¿¾È¿¡ ¾ø´Â °æ¿ì

insertChar

public void insertChar(AttributedCharacterIterator  newParagraph,
                       int insertPos)
ÀÌ TextMeasurer°¡ ÇöÀç ³ªÅ¸³»´Â Æз¯±×·¡ÇÁ¿¡ 1 ¹®ÀÚ¸¦ »ðÀÔÇÏ°í ³ª¼­ TextMeasurer¸¦ °»½ÅÇÕ´Ï´Ù. ÀÌ È£ÃâµÚ, TextMeasurer´Â ÅؽºÆ®·ÎºÎÅÍ ÀÛ¼ºµÈ »õ·Î¿î TextMeasurer¿Í µ¿µîÇÏ°Ô µË´Ï´Ù. ±×·¯³ª, ÀϹÝÀûÀ¸·Î ¿ÏÀüÈ÷ Á¦·Î·ÎºÎÅÍ »õ·Î¿î °ÍÀ» ÀÛ¼ºÇÏ´Â °Íº¸´Ù ±âÁ¸ÀÇ TextMeasurer¸¦ °»½ÅÇÑ (ºÐ)ÆíÀÌ È¿À²ÀûÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
newParagraph - »ðÀÔÀ» ÇÑ ÈÄÀÇ Æз¯±×·¡ÇÁÀÇ ÅؽºÆ®. nullÀº ºÒ°¡
insertPos - ¹®ÀÚ¸¦ »ðÀÔÇÑ ÅؽºÆ®ÀÇ À§Ä¡. newParagraph °³½Ã À§Ä¡¿¡¼­(º¸´Ù) ³ªÁß¿¡ newParagraph Á¾·á À§Ä¡º¸´Ù Àü
¿¹¿Ü:
IndexOutOfBoundsException - insertPos°¡ newParagraph °³½Ã À§Ä¡º¸´Ù Àü, ¶Ç´Â newParagraph Á¾·á À§Ä¡¿Í °°Àº°¡ ±× ÀÌÈÄÀÎ °æ¿ì
NullPointerException - newParagraph°¡ nullÀÎ °æ¿ì

deleteChar

public void deleteChar(AttributedCharacterIterator  newParagraph,
                       int deletePos)
ÀÌ TextMeasurer°¡ ÇöÀç ³ªÅ¸³»´Â Æз¯±×·¡ÇÁ·Î 1 ¹®ÀÚ¸¦ »èÁ¦ÇÏ°í ³ª¼­ TextMeasurer¸¦ °»½ÅÇÕ´Ï´Ù. ÀÌ È£ÃâµÚ, TextMeasurer´Â ÅؽºÆ®·ÎºÎÅÍ ÀÛ¼ºµÈ »õ·Î¿î TextMeasurer¿Í µ¿µîÇÏ°Ô µË´Ï´Ù. ±×·¯³ª, ÀϹÝÀûÀ¸·Î ¿ÏÀüÈ÷ Á¦·Î·ÎºÎÅÍ »õ·Î¿î °ÍÀ» ÀÛ¼ºÇÏ´Â °Íº¸´Ù ±âÁ¸ÀÇ TextMeasurer¸¦ °»½ÅÇÑ (ºÐ)ÆíÀÌ È¿À²ÀûÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
newParagraph - »èÁ¦¸¦ ÇÑ ÈÄÀÇ Æз¯±×·¡ÇÁÀÇ ÅؽºÆ®. nullÀº ºÒ°¡
deletePos - ¹®ÀÚ¸¦ »èÁ¦ÇÑ ÅؽºÆ®ÀÇ À§Ä¡. newParagraph °³½Ã À§Ä¡¿¡¼­(º¸´Ù) ³ªÁß¿¡ newParagraph Á¾·á À§Ä¡º¸´Ù Àü
¿¹¿Ü:
IndexOutOfBoundsException - deletePos°¡ newParagraph °³½Ã À§Ä¡º¸´Ù Àü, ¶Ç´Â newParagraph Á¾·á À§Ä¡¿¡¼­(º¸´Ù) µÚÀÎ °æ¿ì
NullPointerException - newParagraph°¡ nullÀÎ °æ¿ì

JavaTM 2 Platform
Standard Ed. 5.0

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