|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.swing.text.StyleContext
javax.swing.text.html.StyleSheet
public class StyleSheet
draw 되는 HTML 뷰의 시각적인 특성의 정의를 지원합니다. StyleSheet 는, HTML 모델을 시각적인 특성으로 변환하기 위해서(때문에) 사용됩니다. 이것을 사용해, 표시의 Look & Feel 를 커스터마이즈 하거나 같은 모델에 의한 복수의 뷰를 각각 다른 형태로 draw 하거나 할 수 있습니다. 이것은 CSS 규칙 리포지터리(repository)라고 생각할 수가 있습니다. CSS 속성의 키는 CSS.Attribute 형의 객체입니다. 값의 형태는 StyleSheet 의 구현에 응해 다릅니다. 다만, CSS 치를 캐릭터 라인 표현으로 돌려주려면 toString
메소드가 필요합니다.
HTML 의 View 의 구현으로 속성을 취득하기 위한 주요한 엔트리 포인트는 getViewAttributes 메소드입니다. 이것은, 속성과 뷰의 관련지어에 필요한 정책를 확립하기 위해서 구현할 필요가 있습니다. 각 HTMLEditorKit (또 관련하는 각 JEditorPane)는, 전용의 StyleSheet 를 가질 수가 있습니다만, 디폴트에서는 모든 HTMLEditorKit 의 인스턴스가 1 개의 시트를 공유합니다. HTMLDocument 의 인스턴스는, 특정의 문서용의 CSS 지정이 기술된 StyleSheet 를 가질 수도 있습니다.
View 가 포함하는 상태를 줄여, 태스크를 가볍게 하기 위해서, StyleSheet 는 일부의 draw 태스크를 처리하는 페인타의 팩토리로서 동작할 수 있습니다. 이것에 의해, 구현은 무엇을 캐쉬하는지, 1 개의 셀렉터가 복수의 뷰에 공통되는 레벨로 무엇을 공유할까를 결정하는 것이 가능하게 됩니다. StyleSheet 는 복수의 문서의 표시로 사용되어 HTML 속성은, 사용되는 셀렉터에는 일반적으로 영향을 주지 않습니다. 이 때문에, 공유의 가능성이 크게 퍼집니다.
규칙은 이름 첨부 스타일로서 보존되어 요소의 문맥으로부터 규칙에 재빠르게 변환하기 위해서 그 외의 정보가 보존됩니다. 다음에 나타내는 코드예는, 이름 첨부 스타일 (따라 CSS 규칙을 포함한다)을 표시합니다.
요소에 의해 정의된 시각적인 속성을 CSS 스타일이 오버라이드(override) 하는 경우의 시멘틱스는, 충분히 정의되고 있지 않습니다. 예를 들어, HTML
벌써 말한 것처럼, 이 메소드는 CSS 를 지원합니다. CSS 스펙의 모든 것을 지원하고 있는 것은 아닙니다. 어느 프로퍼티을 지원하고 있을까에 대해서는, CSS 클래스의 javadoc 를 참조해 주세요. 현재로서는 지원하고 있지 않는 개념에 관련하는 주요한 CSS 해석은,
주:이 구현은, 현재 상태로서는 불완전합니다. 장래, 대체의 구현에 의해 옮겨놓을 수 있을 가능성이 있습니다. 이 클래스의 향후의 버젼에서는, 보다 뛰어난 CSS 지원가 제공될 예정입니다.
는, 공백에서 단락지어진 요소명의 String 입니다. 예를 들어 html body tr td 등입니다.
import java.util. *;
import javax.swing.text. *;
import javax.swing.text.html. *;
public class ShowStyles {
public static void main(String[] args) {
HTMLEditorKit kit = new HTMLEditorKit();
HTMLDocument doc = (HTMLDocument) kit.createDefaultDocument();
StyleSheet styles = doc.getStyleSheet();
Enumeration rules = styles.getStyleNames();
while (rules.hasMoreElements()) {
String name = (String) rules.nextElement();
Style rule = styles.getStyle(name);
System.out.println(rule.toString());
}
System.exit(0);
}
}
<body bgcolor=red>
는 본체의 백그라운드를 빨강으로 합니다. 그러나 HTML 파일에 body { background: blue }
라고 하는 CSS 규칙도 있는 경우, 본체의 백그라운드를 무슨색으로 하는지, 불명확이 됩니다. 현재의 구현은, 요소로 정의된 시각적인 속성을 최우선 합니다. 즉, 그러한 속성은 항상 스타일보다 먼저 확인됩니다. 따라서 상기의 예에서는, 본체 요소가 백그라운드 칼라를 빨강에 정의하고 있기 (위해)때문에, 백그라운드는 빨강이 됩니다.
A:link { color:red }
등의 의사 셀렉터와important
수식자의 2 개입니다.
상자의 클래스의 개요
static class
StyleSheet.BoxPainter
CSS 의 서식 설정 처리의 일부를 실행하는 클래스입니다.
static class
StyleSheet.ListPainter
CSS 리스트의 서식 설정 처리의 일부를 실행하는 클래스입니다.
클래스 javax.swing.text. StyleContext 로부터 상속된 상자의 클래스/인터페이스
StyleContext.NamedStyle , StyleContext.SmallAttributeSet
필드의 개요
클래스 javax.swing.text. StyleContext 로부터 상속된 필드
DEFAULT_STYLE
생성자 의 개요
StyleSheet ()
StyleSheet 를 구축합니다.
메소드의 개요
AttributeSet
addAttribute (AttributeSet old,
Object key,
Object value)
지정된 세트에 속성을 추가해, 그 새로운 세트를 돌려줍니다.
AttributeSet
addAttributes (AttributeSet old,
AttributeSet attr)
속성 세트를 요소에 추가합니다.
void
addCSSAttribute (MutableAttributeSet attr,
CSS.Attribute key,
String value)
지정된 세트에 CSS 속성을 추가합니다.
boolean
addCSSAttributeFromHTML (MutableAttributeSet attr,
CSS.Attribute key,
String value)
지정된 세트에 CSS 속성을 추가합니다.
void
addRule (String rule)
규칙 세트를 시트에 등록합니다.
void
addStyleSheet (StyleSheet ss)
StyleSheet ss
의 규칙을, 리시버의 규칙에 등록합니다.
protected MutableAttributeSet
createLargeAttributeSet (AttributeSet a)
메모리 효율보다 처리 시간을 우선하는, 큰 사이즈의 속성 세트를 작성합니다.
protected StyleContext.SmallAttributeSet
createSmallAttributeSet (AttributeSet a)
공유 가능하고 컴팩트한 속성 세트를 작성합니다.
Color
getBackground (AttributeSet a)
속성 세트를 취득해 백그라운드 칼라 지정으로 변환합니다.
URL
getBase ()
베이스를 돌려줍니다.
StyleSheet.BoxPainter
getBoxPainter (AttributeSet a)
지정된 CSS 속성세트로 사용하는 박스 포매터를 가져옵니다.
AttributeSet
getDeclaration (String decl)
CSS 선언을, CSS 선언을 나타내는 속성 세트로 변환합니다.
Font
getFont (AttributeSet a)
지정된 속성 세트로 사용하는 폰트를 가져옵니다.
Color
getForeground (AttributeSet a)
속성 세트를 취득해 foreground 칼라 지정으로 변환합니다.
static int
getIndexOfSize (float pt)
StyleSheet.ListPainter
getListPainter (AttributeSet a)
지정된 CSS 속성세트로 사용하는 리스트 포매터를 가져옵니다.
float
getPointSize (int index)
지정된 사이즈 인덱스의 포인트 사이즈를 돌려줍니다.
float
getPointSize (String size)
「+2」, 「-2」, 「2」등의 지정된 캐릭터 라인의 포인트 사이즈치를 돌려줍니다.
Style
getRule (HTML.Tag t,
Element e)
지정된 타입의 HTML 태그를 draw 하기 위해서 사용하는 스타일을 가져옵니다.
Style
getRule (String selector)
캐릭터 라인 형식에서 지정된 셀렉터에 가장 일치하는 규칙을 꺼냅니다.
StyleSheet []
getStyleSheets ()
링크된 StyleSheet 의 배열을 돌려줍니다.
AttributeSet
getViewAttributes (View v)
표시를 위해서(때문에) 뷰로 사용되는 속성 세트를 가져옵니다.
void
importStyleSheet (URL url)
url
로부터 스타일 시트를 임포트 합니다.
void
loadRules (Reader in,
URL ref)
CSS1 문법이 지정하는 규칙 세트를 로드합니다.
AttributeSet
removeAttribute (AttributeSet old,
Object key)
세트로부터 속성을 삭제합니다.
AttributeSet
removeAttributes (AttributeSet old,
AttributeSet attrs)
속성 세트를 삭제합니다.
AttributeSet
removeAttributes (AttributeSet old,
Enumeration <? > names)
요소의 속성 세트를 삭제합니다.
void
removeStyle (String nm)
이전에 문서에 추가된 이름 첨부 서식을 삭제합니다.
void
removeStyleSheet (StyleSheet ss)
리시버의 StyleSheet ss
로부터 StyleSheet ss
를 삭제합니다.
void
setBase (URL base)
베이스를 설정합니다.
void
setBaseFontSize (int sz)
1 ~ 7 의 유효한 값으로, 베이스 font size를 설정합니다.
void
setBaseFontSize (String size)
건네받은 String 로부터 베이스 font size를 설정합니다.
Color
stringToColor (String string)
「RED」또는 「#NNNNNN」등의 연애 편지자열을 Color 로 변환합니다.
AttributeSet
translateHTMLToCSS (AttributeSet htmlAttrSet)
HTML 속성세트를, 동등의 CSS 속성세트로 변환합니다.
클래스 javax.swing.text. StyleContext 로부터 상속된 메소드
addChangeListener , addStyle , getChangeListeners , getCompressionThreshold , getDefaultStyleContext , getEmptySet , getFont , getFontMetrics , getStaticAttribute , getStaticAttributeKey , getStyle , getStyleNames , readAttributes , readAttributeSet , reclaim , registerStaticAttributeKey , removeChangeListener , toString , writeAttributes , writeAttributeSet
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
생성자 의 상세
StyleSheet
public StyleSheet()
메소드의 상세
getRule
public Style getRule(HTML.Tag t,
Element e)
t
- 시각적인 속성으로 변환하는 형태e
- 태그를 나타내는 요소.
요소는, 속성이 다른 경우에 상자 처리의
판정에 사용할 수가 있다
(다른 요소내에서의 상자 처리의 경우)
getRule
public Style getRule(String selector)
반환되는 Style 의 속성은, 규칙이 추가되거나 삭제 되거나 한다고 변경됩니다. 즉, 셀렉터 table p 를 가지는 규칙을 요구하는 경우, p 라고 하는 셀렉터를 가지는 새로운 규칙이 추가되고 있으면(자), 반환되는 Style 에는 규칙 p 로부터의 새로운 속성이 포함된다고 하는 것입니다.
public void addRule(String rule)
public AttributeSet getDeclaration(String decl)
public void loadRules(Reader in, URL ref) throws IOException
in
- CSS 문법의 읽기원스트림ref
- 참조 URL. 이 값은 스트림의 위치를 나타내,
null 의 경우가 있다.
스트림내에서 지정되는 관련 URL 는 모두
이 파라미터에 근거한다
IOException
public AttributeSet getViewAttributes(View v)
public void removeStyle(String nm)
StyleContext
내의 removeStyle
nm
- 삭제되는 서식의 이름public void addStyleSheet(StyleSheet ss)
ss
의 규칙을, 리시버의 규칙에 등록합니다. ss
의 규칙은, 벌써 등록되어 있는 스타일 시트의 규칙을 오버라이드(override) 합니다. 등록되어 있는 StyleSheet 가 새롭게 받는 스타일 시트의 규칙을 오버라이드(override) 할 것은 없습니다.
public void removeStyleSheet(StyleSheet ss)
ss
로부터 StyleSheet ss
를 삭제합니다.
public StyleSheet [] getStyleSheets()
public void importStyleSheet(URL url)
url
로부터 스타일 시트를 임포트 합니다. 결과적으로 얻을 수 있는 규칙은 리시버에 직접 등록됩니다. 규칙을 리시버의 일부로 하고 싶지 않은 경우는, 새로운 StyleSheet 를 작성해 addStyleSheet 사용해 그 StyleSheet 를 링크시킵니다.
public void setBase(URL base)
base
에 관련합니다.
public URL getBase()
public void addCSSAttribute(MutableAttributeSet attr, CSS.Attribute key, String value)
public boolean addCSSAttributeFromHTML(MutableAttributeSet attr, CSS.Attribute key, String value)
public AttributeSet translateHTMLToCSS(AttributeSet htmlAttrSet)
htmlAttrSet
- HTML 속성을 포함한 AttributeSetpublic AttributeSet addAttribute(AttributeSet old, Object key, Object value)
AbstractDocument.AttributeContext
내의 addAttribute
StyleContext
내의 addAttribute
old
- 구속성 세트key
- null 이외의 속성 키value
- 속성치
MutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)
public AttributeSet addAttributes(AttributeSet old, AttributeSet attr)
AbstractDocument.AttributeContext
내의 addAttributes
StyleContext
내의 addAttributes
old
- 구속성 세트attr
- 추가하는 속성
MutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)
public AttributeSet removeAttribute(AttributeSet old, Object key)
AbstractDocument.AttributeContext
내의 removeAttribute
StyleContext
내의 removeAttribute
old
- 구속성 세트key
- null 이외의 속성명
MutableAttributeSet.removeAttribute(java.lang.Object)
public AttributeSet removeAttributes(AttributeSet old, Enumeration <? > names)
AbstractDocument.AttributeContext
내의 removeAttributes
StyleContext
내의 removeAttributes
old
- 구속성 세트names
- 속성명
MutableAttributeSet.removeAttributes(java.util.Enumeration >)
public AttributeSet removeAttributes(AttributeSet old, AttributeSet attrs)
AbstractDocument.AttributeContext
내의 removeAttributes
StyleContext
내의 removeAttributes
old
- 구속성 세트attrs
- 속성
MutableAttributeSet.removeAttributes(java.util.Enumeration >)
protected StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)
StyleContext
내의 createSmallAttributeSet
a
- 컴팩트한 형식에서 표현된다
속성 세트protected MutableAttributeSet createLargeAttributeSet(AttributeSet a)
StyleContext
내의 createLargeAttributeSet
a
- 사이즈의 큰 형식에서 표현된다
속성 세트public Font getFont(AttributeSet a)
StyleContext
내의 getFont
a
- 속성 세트
public Color getForeground(AttributeSet a)
StyleContext
내의 getForeground
a
- 속성 세트
public Color getBackground(AttributeSet a)
StyleContext
내의 getBackground
a
- 속성 세트
public StyleSheet.BoxPainter getBoxPainter(AttributeSet a)
public StyleSheet.ListPainter getListPainter(AttributeSet a)
public void setBaseFontSize(int sz)
public void setBaseFontSize(String size)
public static int getIndexOfSize(float pt)
public float getPointSize(int index)
public float getPointSize(String size)
public Color stringToColor(String string)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요 : 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.