Визуализация HTML для отображения в приложении Java

Я заинтересован в отображении HTML-текста (с использованием CSS) в приложении Java. Какие варианты у меня есть?

Хотя я не использую SWT в своем приложении, я вижу, что SWT предоставляет интерфейс для браузера WebKit на всех платформах. Есть ли способ, которым я могу использовать интеграцию SWK с WebKit, чтобы попросить его отобразить текст в изображении, которое я могу использовать повторно?

4 ответа

Решение

Проверять, выписываться

http://code.google.com/p/flying-saucer/

Native Swing позволяет использовать браузер SWT в приложениях Java Swing и смешивать его с виджетами Swing. Он поддерживает как WebKit, так и Xulrunner на нескольких платформах (а также IE на Windows). Убедитесь, что у вас есть libwebkit или libxulrunner, совместимый с последней реализацией SWT, как описано в FAQ по SWT. Используемым механизмом браузера управляет NSOption, передаваемый JWebBrowser:

JWebBrowser geckoWebView = new JWebBrowser(JWebBrowser.useXULRunnerRuntime());
JWebBrowser webkitWebView = new JWebBrowser(JWebBrowser.useWebkitRuntime());

Поддержка Swing HTML

Компоненты Swing (1) будут отображать HTML 3.2 и основные стили. Это может быть жизнеспособным вариантом, если вы контролируете HTML.

HTML

Смотрите мой ответ здесь для 2 быстрых примеров использования изображений в HTML

Прямо из файла Jar

JEditorPane, отображающий Jar'd HTML

Использование относительных ссылок

Изображение ссылается на базу

CSS

Примеры стилей HTML в компонентах Swing с использованием CSS см. В ответах на:

Java: HTML в Swing, поле ссылки не работает

Облако ссылок

Перенос словJButtons

Перенос слов @ 160pxПеренос слов @ 200px

Предостережение

  1. В частности, некоторые компоненты Swing поддерживают HTML. 1-й снимок экрана от JEditorPaneОстальные пьют JLabel, Многие компоненты используют JLabel в качестве компонента рендеринга по умолчанию, такого как всплывающие подсказки и списки по умолчанию и средства визуализации таблиц. JButton поддерживает HTML частично. Он будет отображаться неправильно для отключенной кнопки. JTextPane (стилизованный текст) также поддерживает HTML, но JTextArea & JTextField (простой текст) нет.

Смотрите также

Для получения дополнительной информации посмотрите, Как Использовать HTML в Компонентах Swing в Учебном руководстве по Java.

Lobo - это 100% чистый веб-браузер Java.

Другие вопросы по тегам