JavaTM 2
Platform
Std.  Ed.  v1. 4.0

javax.swing.text.html
클래스 HTMLDocument.HTMLReader

java.lang.Object 
  |
  +--javax.swing.text.html.HTMLEditorKit.ParserCallback 
        |
        +--javax.swing.text.html.HTMLDocument.HTMLReader
포함되어 있는 클래스:
HTMLDocument

public class HTMLDocument.HTMLReader
extends HTMLEditorKit.ParserCallback

HTML 문서를 HTML 요소 구조와 함께 로드하기 위한 HTML 리더입니다. 이 클래스는 파서로부터의 콜백세트이며, 속성의 태그가 붙은 요소세트를 생성하기 위해서 구현됩니다. 해석은 필요한 요소 서브 트리를 기술하는 토큰군 (ElementSpec)을 조립해 이것을 기입해 락의 아래에서 문서의 외부 클래스의 삽입 메소드를 사용해 문서에 삽입합니다.

리더를 구성 설정하려면 , 액션을 처리하는 방법을 기술한 HTMLDocument.HTMLReader.TagAction 형의 액션을 등록합니다. 제공되고 있는 액션의 기본이 되어 있는 생각은 요소 구조가 결국 하등의 서식을 가지는 캐릭터의 줄로부터 완성되는 단락이면, 가장 자연스러운 텍스트의 편집 오퍼레이션을 제공할 수 있다, 라는 것입니다. 구조적으로 지정하는 것이 자연스러운 경우도 있으므로, 단락상에서의 임의의 구조가 허가되도록(듯이) 해야 하고, 그 경우에서도, 구조적인 액션을 사용해 편집할 필요가 있습니다. 즉, 해석중의 스트림으로 지정되고 있는 HTML 요소의 일부는 속성에 작게 접어져 경우에 따라서는 단락이 합성됩니다. HTML 요소가 속성에 변환되는 경우, 정보가 없어지지 않게 속성 키는 HTML.Tag 형이 되어, 값은 AttributeSet 형이 됩니다. 이것에 의해, 기존의 액션의 대부분이 기능하게 되어, 유저는 입력을 키보드로부터 입력하거나 리턴 키, BackSpace 키, Delete 키등을 눌러, 그 적절한 결과를 얻을 수 있습니다. 선택을 생성하거나 속성을 적용하거나 삭제할 수도 있습니다. 이상을 고려한 다음, 리더가 실시하는 작업은 다음과 같은 태스크로 분류할 수 있습니다.

블록
스트림으로 지정된 것과 같은 구조를 구성합니다. 이 태스크는 다른 요소를 저장하는 요소를 생성합니다.
단락
블록과 같습니다만, 단락 요소를 합성하지 않아도 끝나도록(듯이), 요소가 단락 뷰와 함께 사용되는 것을 전제로 하는 점이 다릅니다.
캐릭터
요소를, 임의의 텍스트 위치에서 개시해, 다른 임의의 텍스트 위치에서 종료하는 속성으로서 이용합니다. 이것은 최종적으로는 현재 평탄화 떠날 수 있어 모든 HTML 캐릭터 요소와 함께 1 개의 텍스트중의 캐릭터의 및 통합됩니다.
특별
파묻힌 그래픽 요소를 생성합니다.
형식
내장하기 그래픽 요소와 같은 요소를 생성합니다. 그래픽 요소와의 차이는 형식에 관련한 컴퍼넌트 모델도 가지고 있다고 하는 점입니다.
은폐
문서가 읽어들여 전용으로 표시되었을 경우는 숨겨져 뷰에는 표시되지 않고 문서가 편집되는 경우는 표시되는 요소를 생성합니다. 이 태스크를 사용하면(자), 모델로부터 정보가 없어지지 않습니다. 코멘트나 미지의 태그를 저장하기 위해서 사용합니다.

현시점에서는 <APPLET>, <PARAM>, <MAP>, <AREA>, <LINK>, <SCRIPT>, 및 <STYLE> 는 서포트되고 있지 않습니다.

HTML.Tag 로 정의되고 있는 태그에 대해서 할당할 수 있고 있는 액션의 기술을 다음에 나타냅니다.
HTML.Tag.A CharacterAction
HTML.Tag.ADDRESS CharacterAction
HTML.Tag.APPLET HiddenAction
HTML.Tag.AREA AreaAction
HTML.Tag.B CharacterAction
HTML.Tag.BASE BaseAction
HTML.Tag.BASEFONT CharacterAction
HTML.Tag.BIG CharacterAction
HTML.Tag.BLOCKQUOTE BlockAction
HTML.Tag.BODY BlockAction
HTML.Tag.BR SpecialAction
HTML.Tag.CAPTION BlockAction
HTML.Tag.CENTER BlockAction
HTML.Tag.CITE CharacterAction
HTML.Tag.CODE CharacterAction
HTML.Tag.DD BlockAction
HTML.Tag.DFN CharacterAction
HTML.Tag.DIR BlockAction
HTML.Tag.DIV BlockAction
HTML.Tag.DL BlockAction
HTML.Tag.DT ParagraphAction
HTML.Tag.EM CharacterAction
HTML.Tag.FONT CharacterAction
HTML.Tag.FORM 1.4 에서는 BlockAction
HTML.Tag.FRAME SpecialAction
HTML.Tag.FRAMESET BlockAction
HTML.Tag.H1 ParagraphAction
HTML.Tag.H2 ParagraphAction
HTML.Tag.H3 ParagraphAction
HTML.Tag.H4 ParagraphAction
HTML.Tag.H5 ParagraphAction
HTML.Tag.H6 ParagraphAction
HTML.Tag.HEAD HeadAction
HTML.Tag.HR SpecialAction
HTML.Tag.HTML BlockAction
HTML.Tag.I CharacterAction
HTML.Tag.IMG SpecialAction
HTML.Tag.INPUT FormAction
HTML.Tag.ISINDEX IsndexAction
HTML.Tag.KBD CharacterAction
HTML.Tag.LI BlockAction
HTML.Tag.LINK LinkAction
HTML.Tag.MAP MapAction
HTML.Tag.MENU BlockAction
HTML.Tag.META MetaAction
HTML.Tag.NOFRAMES BlockAction
HTML.Tag.OBJECT SpecialAction
HTML.Tag.OL BlockAction
HTML.Tag.OPTION FormAction
HTML.Tag.P ParagraphAction
HTML.Tag.PARAM HiddenAction
HTML.Tag.PRE PreAction
HTML.Tag.SAMP CharacterAction
HTML.Tag.SCRIPT HiddenAction
HTML.Tag.SELECT FormAction
HTML.Tag.SMALL CharacterAction
HTML.Tag.STRIKE CharacterAction
HTML.Tag.S CharacterAction
HTML.Tag.STRONG CharacterAction
HTML.Tag.STYLE StyleAction
HTML.Tag.SUB CharacterAction
HTML.Tag.SUP CharacterAction
HTML.Tag.TABLE BlockAction
HTML.Tag.TD BlockAction
HTML.Tag.TEXTAREA FormAction
HTML.Tag.TH BlockAction
HTML.Tag.TITLE TitleAction
HTML.Tag.TR BlockAction
HTML.Tag.TT CharacterAction
HTML.Tag.U CharacterAction
HTML.Tag.UL BlockAction
HTML.Tag.VAR CharacterAction

</html> 가 발견되면(자), Action 는 통지되지 않게 됩니다.


중첩된 클래스의 개요
 class HTMLDocument.HTMLReader.BlockAction
           
 class HTMLDocument.HTMLReader.CharacterAction
           
 class HTMLDocument.HTMLReader.FormAction
          폼의 각 컨트롤을 나타내기 위한 요소를 모두 생성해, 폼을 서포트하기 위한 액션입니다.
 class HTMLDocument.HTMLReader.HiddenAction
           
 class HTMLDocument.HTMLReader.IsindexAction
           
 class HTMLDocument.HTMLReader.ParagraphAction
           
 class HTMLDocument.HTMLReader.PreAction
           
 class HTMLDocument.HTMLReader.SpecialAction
           
 class HTMLDocument.HTMLReader.TagAction
          태그의 구문 분석에 응해 실행되는 액션입니다.
 
필드의 개요
protected  MutableAttributeSet charAttr
           
protected  Vector parseBuffer
           
 
클래스 javax.swing.text.html. HTMLEditorKit.ParserCallback 에서 상속받은 필드
IMPLIED
 
생성자의 개요
HTMLDocument.HTMLReader (int offset)
           
HTMLDocument.HTMLReader (int offset, int popDepth, int pushDepth, HTML.Tag  insertTag)
           
 
메소드의 개요
protected  void addContent (char[] data, int offs, int length)
          현재의 캐릭터 속성을 가지는 텍스트를 추가합니다.
protected  void addContent (char[] data, int offs, int length, boolean generateImpliedPIfNecessary)
          현재의 캐릭터 속성을 가지는 텍스트를 추가합니다.
protected  void addSpecialElement (HTML.Tag  t, MutableAttributeSet  a)
          기본적으로 속성 세트 전체로 지정되고 있는 컨텐츠를 추가합니다.
protected  void blockClose (HTML.Tag  t)
          구문 분석 버퍼에 인스트럭션을 추가해, 지정한 타입의 블록 요소를 닫습니다.
protected  void blockOpen (HTML.Tag  t, MutableAttributeSet  attr)
          구문 분석 버퍼에 인스트럭션을 추가해, 지정한 속성을 가지는 블록 요소를 생성합니다.
 void flush ()
          HTML 리더로 불려 가는 마지막 메소드입니다.
 void handleComment (char[] data, int pos)
           
 void handleEndOfLineString (String  eol)
          스트림의 해석이 종료해,flush 의 전에 불려 갑니다.
 void handleEndTag (HTML.Tag  t, int pos)
          파서로부터의 콜백입니다.
 void handleSimpleTag (HTML.Tag  t, MutableAttributeSet  a, int pos)
          파서로부터의 콜백입니다.
 void handleStartTag (HTML.Tag  t, MutableAttributeSet  a, int pos)
          파서로부터의 콜백입니다.
 void handleText (char[] data, int pos)
          텍스트 블록이 발견된 것을 나타내기 위해서(때문에), 파서에 의해 불려 갑니다.
protected  void popCharacterStyle ()
          이전에 푸쉬 한 캐릭터 스타일을 스택으로부터 팝 해, 이전의 캐릭터 스타일에 되돌립니다.
protected  void preContent (char[] data)
          PRE 요소로 검출된 지정된 컨텐츠를 추가합니다.
protected  void pushCharacterStyle ()
          새로운 상자의 캐릭터 스타일을 작성할 준비로서 현재의 캐릭터 스타일을 스택에 푸쉬 합니다.
protected  void registerTag (HTML.Tag  t, HTMLDocument.HTMLReader.TagAction  a)
          지정한 태그의 핸들러를 등록합니다.
protected  void textAreaContent (char[] data)
          텍스트 area 문서로 지정된 컨텐츠를 추가합니다.
 
클래스 javax.swing.text.html. HTMLEditorKit.ParserCallback 에서 상속받은 메소드
handleError
 
클래스 java.lang. Object 에서 상속받은 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

parseBuffer

protected Vector  parseBuffer

charAttr

protected MutableAttributeSet  charAttr
생성자의 상세

HTMLDocument.HTMLReader

public HTMLDocument.HTMLReader(int offset)

HTMLDocument.HTMLReader

public HTMLDocument.HTMLReader(int offset,
                               int popDepth,
                               int pushDepth,
                               HTML.Tag  insertTag)
메소드의 상세

flush

public void flush()
           throws BadLocationException 
HTML 리더로 불려 가는 마지막 메소드입니다. 보류 상태에 있는 변경이 문서에 플래시 되도록(듯이) 합니다. 현재, 동기적으로 로드하고 있기 (위해)때문에, 변경세트 전체가 이 시점에서 반영됩니다.

오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 flush
BadLocationException

handleText

public void handleText(char[] data,
                       int pos)
텍스트 블록이 발견된 것을 나타내기 위해서(때문에), 파서에 의해 불려 갑니다.

오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 handleText

handleStartTag

public void handleStartTag(HTML.Tag  t,
                           MutableAttributeSet  a,
                           int pos)
파서로부터의 콜백입니다. 이 태그의 적절한 핸들러에 전달합니다.

오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 handleStartTag

handleComment

public void handleComment(char[] data,
                          int pos)
오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 handleComment

handleEndTag

public void handleEndTag(HTML.Tag  t,
                         int pos)
파서로부터의 콜백입니다. 이 태그의 적절한 핸들러에 전달합니다.

오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 handleEndTag

handleSimpleTag

public void handleSimpleTag(HTML.Tag  t,
                            MutableAttributeSet  a,
                            int pos)
파서로부터의 콜백입니다. 이 태그의 적절한 핸들러에 전달합니다.

오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 handleSimpleTag

handleEndOfLineString

public void handleEndOfLineString(String  eol)
스트림의 해석이 종료해,flush 의 전에 불려 갑니다. eol 는 스트림의 해석중에 가장 많이 검출되는 \n, \r 또는 \r\n 의 어떤 것인가입니다.

오버라이드(override):
클래스 HTMLEditorKit.ParserCallback 내의 handleEndOfLineString
도입된 버젼:
1.3

registerTag

protected void registerTag(HTML.Tag  t,
                           HTMLDocument.HTMLReader.TagAction  a)
지정한 태그의 핸들러를 등록합니다. 디폴트에서는 기존의 태그는 모두 등록되어 있습니다. 특정의 태그의 처리를 변경하거나 커스텀 태그의 서포트를 추가하거나 하는데 사용됩니다.


pushCharacterStyle

protected void pushCharacterStyle()
새로운 상자의 캐릭터 스타일을 작성할 준비로서 현재의 캐릭터 스타일을 스택에 푸쉬 합니다.


popCharacterStyle

protected void popCharacterStyle()
이전에 푸쉬 한 캐릭터 스타일을 스택으로부터 팝 해, 이전의 캐릭터 스타일에 되돌립니다.


textAreaContent

protected void textAreaContent(char[] data)
텍스트 area 문서로 지정된 컨텐츠를 추가합니다. 이 메소드는 텍스트 area 문맥으로 불려 갑니다. 따라서, 표시되는 텍스트는 모두 텍스트 area에 속해, 그 텍스트 area에 관련한 TextAreaDocument 에 추가됩니다.


preContent

protected void preContent(char[] data)
PRE 요소로 검출된 지정된 컨텐츠를 추가합니다. 일련의 텍스트를 보관 유지하기 위한 행을 합성해, addContent 를 호출해 실제로 텍스트를 추가합니다.


blockOpen

protected void blockOpen(HTML.Tag  t,
                         MutableAttributeSet  attr)
구문 분석 버퍼에 인스트럭션을 추가해, 지정한 속성을 가지는 블록 요소를 생성합니다.


blockClose

protected void blockClose(HTML.Tag  t)
구문 분석 버퍼에 인스트럭션을 추가해, 지정한 타입의 블록 요소를 닫습니다.


addContent

protected void addContent(char[] data,
                          int offs,
                          int length)
현재의 캐릭터 속성을 가지는 텍스트를 추가합니다.


addContent

protected void addContent(char[] data,
                          int offs,
                          int length,
                          boolean generateImpliedPIfNecessary)
현재의 캐릭터 속성을 가지는 텍스트를 추가합니다.


addSpecialElement

protected void addSpecialElement(HTML.Tag  t,
                                 MutableAttributeSet  a)
기본적으로 속성 세트 전체로 지정되고 있는 컨텐츠를 추가합니다.


JavaTM 2
Platform
Std.  Ed.  v1. 4.0

버그의 보고와 기능의 리퀘스트
이외의 API 레퍼런스 및 개발자용 문서에 대해서는 Java 2 SDK SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.