public class StyleSheet extends StyleContext
toString
метод обязан возвращать строковое представление значения CSS. Основная точка входа для реализаций Режима просмотра HTML, чтобы получить их атрибуты getViewAttributes
метод. Это должно быть реализовано, чтобы установить требуемую политику, используемую, чтобы связать атрибуты с представлением. Каждый HTMLEditorKit (то есть и поэтому каждый связался, JEditorPane) может иметь его собственный StyleSheet, но по умолчанию один лист будет совместно использован всеми экземплярами HTMLEditorKit. У экземпляра HTMLDocument может также быть StyleSheet, который содержит специфичные для документа спецификации CSS.
Для Представлений, чтобы сохранить меньше состояния и поэтому быть более легким, StyleSheet может действовать как фабрика для живописцев, которые обрабатывают некоторые из задач рендеринга. Это позволяет реализациям определять то, что они хотят кэшировать и иметь совместное использование потенциально на уровне, что селектор характерен для многократных представлений. Так как StyleSheet может использоваться представлениями по многократным документам, и обычно HTML-атрибуты не производят используемый селектор, потенциал для того, чтобы совместно использовать является существенным.
Правила сохранены как названные стилями, и другая информация хранится, чтобы преобразовать контекст элемента к правилу быстро. Следующий фрагмент кода выведет на экран именованные стили, и поэтому содержавшие правила CSS.
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);
}
}
Семантика для того, когда стиль CSS должен сверхъязь визуальные атрибуты, определенные элементом, не четко определена. Например, html <body bgcolor=red>
заставляет тело иметь красный фон. Но если файл html также содержит правило CSS body { background: blue }
это становится меньше четким относительно того, каков цвет фон тела должен быть. Ток implemention дает визуальные атрибуты, определенные в элементе наивысший приоритет, который является, они всегда проверяются перед любыми стилями. Поэтому, в предыдущем примере у фона был бы красный цвет, поскольку элемент тела определяет цвет фона, чтобы быть красным.
Как уже упомянуто это поддерживает CSS. Мы не поддерживаем полную спецификацию CSS. Пошлите к javadoc CSS class видеть, какие свойства мы поддерживаем. Два главных CSS, анализирующие связанные понятия, которые мы в настоящий момент не поддерживаем, являются псевдо селекторами, такой как A:link { color: red }
, и important
модификатор.
Отметьте: Эта реализация является в настоящий момент неполной. Это может быть заменено альтернативными реализациями, которые полны. Будущие версии этого class окажут лучшую поддержку CSS.
Модификатор и Тип | Класс и Описание |
---|---|
static class |
StyleSheet. BoxPainter
Класс, чтобы выполнить некоторые из режимов работы форматирования CSS.
|
static class |
StyleSheet. ListPainter
Класс, чтобы выполнить некоторые из режимов работы форматирования списка CSS.
|
StyleContext.NamedStyle, StyleContext.SmallAttributeSet
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)
Создает компактный набор атрибутов, которые могли бы быть совместно использованы.
|
Цвет |
getBackground(AttributeSet a)
Берет ряд атрибутов, и превратите его в спецификацию цвета фона.
|
URL |
getBase()
Возвращает основу.
|
StyleSheet. BoxPainter |
getBoxPainter(AttributeSet a)
Выбирает средство форматирования поля, чтобы использовать для данного набора атрибутов CSS.
|
AttributeSet |
getDeclaration(String decl)
Преобразовывает объявление CSS в AttributeSet, который представляет объявление CSS.
|
Шрифт |
getFont(AttributeSet a)
Выбирает шрифт, чтобы использовать для данного набора атрибутов.
|
Цвет |
getForeground(AttributeSet a)
Берет ряд атрибутов, и превратите его в спецификацию цвета переднего плана.
|
static int |
getIndexOfSize(float pt) |
StyleSheet. ListPainter |
getListPainter(AttributeSet a)
Выбирает средство форматирования списка, чтобы использовать для данного набора атрибутов CSS.
|
float |
getPointSize(int index)
Возвраты размер точки, учитывая размер индексируют.
|
float |
getPointSize(String size)
Учитывая строку такой как "+2", "-2", или "2", возвращает значение размера точки.
|
Стиль |
getRule(HTML.Tag t, Element e)
Выбирает стиль, чтобы использовать, чтобы представить данный тип HTML-тэга.
|
Стиль |
getRule(String selector)
Выбирает правило, что лучшие соответствия селектор, данный в строке, формируются.
|
StyleSheet[] |
getStyleSheets()
Возвращает массив соединенного StyleSheets.
|
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 от таковых из получателя. |
void |
setBase(URL base)
Устанавливает основу.
|
void |
setBaseFontSize(int sz)
Устанавливает основной размер шрифта, с допустимыми значениями между 1 и 7.
|
void |
setBaseFontSize(String size)
Устанавливает основной размер шрифта от переданного в Строке.
|
Цвет |
stringToColor(String string)
Преобразовывает цветную строку такой как "КРАСНУЮ" или "#NNNNNN" к Цвету.
|
AttributeSet |
translateHTMLToCSS(AttributeSet htmlAttrSet)
Преобразовывает ряд HTML-атрибутов в эквивалентный набор атрибутов CSS.
|
addChangeListener, addStyle, getChangeListeners, getCompressionThreshold, getDefaultStyleContext, getEmptySet, getFont, getFontMetrics, getStaticAttribute, getStaticAttributeKey, getStyle, getStyleNames, readAttributes, readAttributeSet, reclaim, registerStaticAttributeKey, removeChangeListener, toString, writeAttributes, writeAttributeSet
public Style getRule(HTML.Tag t, Element e)
t
- тип, чтобы преобразовать в визуальные атрибутыe
- элемент, представляющий тег; элемент может использоваться, чтобы определить вложение для ситуаций, где атрибуты будут отличаться если вложено в других элементахpublic Style getRule(String selector)
selector
пространство разделенная Строка имен элементов. Например, selector
мог бы быть 'концерн тела html td''Атрибуты возвращенного Стиля изменятся, поскольку правила добавляются и удаляются. Это - то, если бы Вы, чтобы попросить правило с селекторной "таблицей p" и новое правило были добавлены с селектором "p", то возвращенный Стиль включал бы новые атрибуты из правила "p".
public void addRule(String rule)
public AttributeSet getDeclaration(String decl)
public void loadRules(Reader in, URL ref) throws IOException
in
- поток, чтобы считать грамматику CSS изref
- ссылка URL. Это значение представляет расположение потока и может быть нулем. Все относительные URL, определенные в потоке, будут основаны на этом параметре.IOException
public AttributeSet getViewAttributes(View v)
public void removeStyle(String nm)
removeStyle
в class StyleContext
nm
- имя стиля, чтобы удалитьpublic void addStyleSheet(StyleSheet ss)
ss
к таковым из получателя. ss's
правила переопределят правила любых ранее добавленных таблиц стилей. Добавленный StyleSheet никогда не будет переопределять правила таблицы стилей получения.public void removeStyleSheet(StyleSheet ss)
ss
от таковых из получателя.public StyleSheet[] getStyleSheets()
public void importStyleSheet(URL url)
url
. Получающиеся правила непосредственно добавляются к получателю. Если Вы не хотите правил стать частью получателя, создаете новый StyleSheet и используете addStyleSheet, чтобы соединить это в.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
- AttributeSet, содержащий HTML-атрибуты.public AttributeSet addAttribute(AttributeSet old, Object key, Object value)
addAttribute
в интерфейсе AbstractDocument.AttributeContext
addAttribute
в class StyleContext
old
- старый атрибут устанавливаетсяkey
- ключ ненеопределенного атрибутаvalue
- значение атрибутаMutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)
public AttributeSet addAttributes(AttributeSet old, AttributeSet attr)
addAttributes
в интерфейсе AbstractDocument.AttributeContext
addAttributes
в class StyleContext
old
- старый атрибут устанавливаетсяattr
- атрибуты, чтобы добавитьMutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)
public AttributeSet removeAttribute(AttributeSet old, Object key)
removeAttribute
в интерфейсе AbstractDocument.AttributeContext
removeAttribute
в class StyleContext
old
- старый набор атрибутовkey
- имя ненеопределенного атрибутаMutableAttributeSet.removeAttribute(java.lang.Object)
public AttributeSet removeAttributes(AttributeSet old, Enumeration<?> names)
removeAttributes
в интерфейсе AbstractDocument.AttributeContext
removeAttributes
в class StyleContext
old
- старый атрибут устанавливаетсяnames
- названия атрибутаMutableAttributeSet.removeAttributes(java.util.Enumeration<?>)
public AttributeSet removeAttributes(AttributeSet old, AttributeSet attrs)
removeAttributes
в интерфейсе AbstractDocument.AttributeContext
removeAttributes
в class StyleContext
old
- старый атрибут устанавливаетсяattrs
- атрибутыMutableAttributeSet.removeAttributes(java.util.Enumeration<?>)
protected StyleContext.SmallAttributeSet createSmallAttributeSet(AttributeSet a)
createSmallAttributeSet
в class StyleContext
a
- Набор атрибутов, которые будут представлены в компактная форма.protected MutableAttributeSet createLargeAttributeSet(AttributeSet a)
createLargeAttributeSet
в class StyleContext
a
- Набор атрибутов, которые будут представлены в большая форма.public Font getFont(AttributeSet a)
getFont
в class StyleContext
a
- атрибут устанавливаетсяpublic Color getForeground(AttributeSet a)
getForeground
в class StyleContext
a
- набор атрибутовpublic Color getBackground(AttributeSet a)
getBackground
в class StyleContext
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)
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92