Хобрук: Ваш путь к мастерству в программировании

с помощью текстового редактора JSF PrimeFaces, как добавить текст в PDF с помощью iText

Мы используем текстовый редактор JSF PrimeFaces. Когда мы получаем String из текстового редактора в вспомогательном компоненте, он также включает теги HTML. Следующее изображение может помочь понять эту проблему.

Вот что мы написали:

введите описание изображения здесь

Вот что мы получили:

введите описание изображения здесь

Следующее, что мы хотим сделать, это записать то, что было написано в текстовом редакторе, как есть, в PDF с помощью iText. Но мы не знаем, как преобразовать эту строку (с тегами HTML) только в данные.

Ниже был код:

введите описание изображения здесь


Ответы:


1

Вы можете использовать XMLWorker в iText. Код ниже предоставит вам содержимое оранжевого цвета.

document.open();
String finall=  "<style>h1{color:orange;} </style><body><h1>This is a Demo</h1></body>";
InputStream is = new ByteArrayInputStream(finall.getBytes());
XMLWorkerHelper.getInstance().parseXHtml(pdfWriter,document, is);
document.close(); 

Какой бы HTML контент мы ни давали, он создаст его как PDF. Единственное, о чем следует позаботиться, это то, что это будет работать, если XHTML означает, что все открывающие теги должны иметь закрывающий тег. Например, в HTML для перерыва мы будем использовать <br>, но здесь должно быть <br/> Надеюсь, это вам поможет.

13.02.2014
  • Хороший ответ там Sathesh S :) 13.02.2014
  • большое спасибо, это сработало .... itextpdf.com/product/xml_worker перейдите по этой ссылке, чтобы скачать библиотеку XMLWorkerHelper (файл .jar) 13.02.2014
  • @Asadullah Следует иметь в виду, что iText версии 5 больше не является открытым исходным кодом. Это под другой лицензией, если вы развертываете свое приложение за пределами своей внутренней сети, вам придется заплатить за лицензию или использовать более старую версию. 13.02.2014

  • 2

    Для этого используйте JSoup. Jsoup

    Тогда в вашем code

    Jsoup.parse(textRecievedFromEditor).text();
    

    Это вернет текст без HTML-тегов.

    e.g.
    
    For example, given HTML {@code <p>Hello <b>there</b> now!</p>}, 
    {@code p.text()} returns {@code "Hello there now!"}
    
    13.02.2014
  • спасибо за ваш любезный ответ. Видите ли, мы действительно хотим получить текст, но записываем его как есть в PDF, я имею в виду, что жирный шрифт должен быть жирным при записи в PDF. Курсив, шрифт, цвет и т. Д. Следует писать так, как они были в текстовом редакторе. 13.02.2014
  • Какую версию iText вы используете? 13.02.2014
  • версия: itext-5.4.5 13.02.2014
  • Новые материалы

    Создание кнопочного меню с использованием HTML, CSS и JavaScript
    Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

    Внедрите OAuth в свои веб-приложения для повышения безопасности
    OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

    Классы в JavaScript
    class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

    Как свинг-трейдеры могут использовать ИИ для больших выигрышей
    По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

    Как построить любой стол
    Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

    Обзор: Машинное обучение: классификация
    Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

    Разработка расширений Qlik Sense с qExt
    Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..