Добрый день,
Не подскажите существует ли компонент для печати и просмотра HTML 4.0 с поддержкой CSS 1,2,3
Нужен не парсер, а именно компонент, необходимо распечатать сформированный HTML документ.
JEditorPane — не подходит, так как есть проблемы с поддержкой CSS.
или может, кто подскажет более правильный способ формирование и печати, документа с форматированием, всякими хитрыми табличками и т.д.
Идея была в следующем, отвестрать шаблон на HTML(шаблон достаточно сложный, без использование CSS не как не получается)
С помощью Velocity вставить в нужные места данные,
и напечатать, всё было шло хорошо до момента печати
Можно конечно через JNI слазить к IE но както не очень хочется, криво это ИМХО.
T>>Можно конечно через JNI слазить к IE но както не очень хочется, криво это ИМХО.
B>Гугл, накопал вот такой свежий проектик B>http://html.xamjwg.org/cobra.jsp B>Вообще на сколько я знаю в pure java с этим очень туго.
Я пробовал браузер построенный на этой комопоненте, со стиля ми у них то же всё плохо к сожалению.
Замечательная вещь, парсит и отображает вполне корректно,
правда сходу наступил на Баг с печатью, но благо есть сорцы и всегда можно подправить , подправил пересобрал работает на ура
Здравствуйте, mik1, Вы писали:
M>>>>>А Вы не пробовали через нее PDF-ы с кириллицей делать?
T>>Возможно надо зарегистрировать русские шрифты.
M>Ни русские, ни юникодовские не помогают. Еще что-то с входящим файлом нужно сделать (ощущение такое), а что — не пойму. M>Это читал.
Я попробовал сейчас сгенирить ПДФ из XHTML файла. который у меня замечательно печаетается с русскими буквами через эту библиотеку.
Потом открыл этот пдф в Акробат Ридере, и заглянул в свойства документа шрифты, там были 2 шрифта, причём явно они с кирилицой не дружат.
Открыл другой пдф файл с русским текстом и там глянул шрифты... там были нужные шрифты.
ИМХО надо покапать в сторону регистрации шрифтов. Возможно пдф-врайтеру их надо както подпихнуть.
Здравствуйте, mik1, Вы писали:
M>>>>>А Вы не пробовали через нее PDF-ы с кириллицей делать?
T>>Возможно надо зарегистрировать русские шрифты.
M>Ни русские, ни юникодовские не помогают. Еще что-то с входящим файлом нужно сделать (ощущение такое), а что — не пойму. M>Это читал.
Есле залезть внутрь ITextFontResolver и поставить брейкпоинт в методе resolveFont, то видно что когда резолвер ищет фонт и находит его
Но! encoding = Cp1252
Хотя докумет что я ему подсунул был в кодировке Cp1251 (и в документе это явно прописано).
Так что видимо просто резолверу надо правильно добавить шрифты. К сожалению сейчас глубже копать нет времени, на выходных может гляну. думаю дело именно в резолвере
T>Я попробовал сейчас сгенирить ПДФ из XHTML файла. который у меня замечательно печаетается с русскими буквами через эту библиотеку. T>Потом открыл этот пдф в Акробат Ридере, и заглянул в свойства документа шрифты, там были 2 шрифта, причём явно они с кирилицой не дружат. T>Открыл другой пдф файл с русским текстом и там глянул шрифты... там были нужные шрифты. T>ИМХО надо покапать в сторону регистрации шрифтов. Возможно пдф-врайтеру их надо както подпихнуть.
Угу. У меня на XHTMLPanel тоже нормально показался. Вот почему в каждой библиотеке генерации PDF-ок приходится долбаться с русским языком??? iText быстрее всего сдался, big faceless report generator тоже относительно быстро, а вот эта пока держится...
T>Если залезть внутрь ITextFontResolver и поставить брейкпоинт в методе resolveFont, то видно что когда резолвер ищет фонт и находит его T>Но! encoding = Cp1252 T>Хотя документ что я ему подсунул был в кодировке Cp1251 (и в документе это явно прописано). T>Так что видимо просто резолверу надо правильно добавить шрифты. К сожалению сейчас глубже копать нет времени, на выходных может гляну. думаю дело именно в резолвере
Нашлось. Регистрируем шрифт (как писал раньше). В отладчике смотрим его font family. Дальше указываем ее в таблице стилей. В принципе, все. Проблемы могут быть, если такое семейство уже есть (_sharedContext.getFontResolver() — тут кэш шрифтов).