Swing JEditorPane CSS возможности - PullRequest
       9

Swing JEditorPane CSS возможности

6 голосов
/ 07 ноября 2010

Я отображаю HTML-контент внутри Swing JEditorPane.Чтобы изменить внешний вид HTML по умолчанию, я использую таблицу стилей CSS.Это прекрасно работает.Моя проблема только в том, что JEditorPane не поддерживает полную спецификацию CSS.Есть ли список функций CSS, которые поддерживает JEditorPane?

Ответы [ 3 ]

5 голосов
/ 08 декабря 2010

Java имеет относительно плохую репутацию в отношении поддержки HTML / CSS. Комментарии в документах, выделенных trashgod, обещали улучшения в течение многих лет. Примерно в то время, когда была выпущена JavaFX, говорилось об официальном JWebPane , который предоставил бы разработчикам Java доступ к движку webkit, как это используется в Safari и Chrome. Тем не менее, он никогда не материализовался.

Единственный совет, который я могу предложить, - взглянуть на альтернативные HTML / CSS-рендеры для Java. Я часто рекомендую проект xhtmlrenderer . Разработка замедлилась, так как обычно она поддерживает существующую версию со случайным исправлением. Он нацелен на CSS2.1, который часто более чем адекватен; хотя, возможно, он перейдет в CSS, когда стандарт будет фактически завершен.

4 голосов
/ 10 августа 2014

Глядя на исходный код CSS.java из OpenJava JDK, я обнаружил следующее:

Определяет набор атрибутов CSS как перечисление типов, безопасное для типов.Реализации HTML View используют атрибуты CSS, чтобы определить, как они будут отображаться.Это также определяет методы для отображения между CSS / HTML / StyleConstants.Любые сокращенные свойства, такие как шрифт, сопоставляются с внутренними свойствами.

Ниже описаны свойства CSS, которые поддерживаются механизмом рендеринга:

  • font-family
  • font-style
  • размер шрифта (поддерживает относительные единицы)
  • font-weight
  • font
  • color
  • backgroundцвет (за исключением прозрачного)
  • background-image
  • background-repeat
  • background-position
  • background
  • background-repeat
  • текстовое оформление (за исключением мерцания и наложения)
  • вертикальное выравнивание (только sup и super)
  • выравнивание текста (выравнивание по центру)
  • margin-top
  • margin-right
  • margin-bottom
  • margin-left
  • margin
  • padding-top
  • padding-right
  • padding-bottom
  • padding-left
  • стиль границы (поддерживается только вставка, outset и нетne)
  • list-style-type
  • list-style-position

Следующие элементы смоделированы, но в настоящее время не отображаются.

  • font-option
  • background-attachment (фон всегда рассматривается как прокрутка)
  • межстрочный интервал
  • межбуквенный интервал
  • текстовый отступ
  • text-transform
  • line-height
  • border-top-width (используется для указания необходимости использования границы)
  • border-right-ширина
  • border-bottom-width
  • border-left-width
  • border-width
  • border-top
  • border-right
  • border-bottom
  • border-left
  • border
  • width
  • height
  • float
  • очистить
  • показать
  • пробел
  • в стиле списка
0 голосов
/ 23 февраля 2011

JEditorPane очень ограничен.Вам лучше интегрировать собственный веб-браузер, если вы хотите правильно отображать HTML.

Проверьте проекты, такие как проект DJ Native Swing: http://djproject.sourceforge.net/ns

...