iText 7 HTML преобразование с пользовательским css файлом - PullRequest
0 голосов
/ 21 апреля 2020

В настоящее время я работаю над функцией экспорта PDF в нашем приложении и для этого использую iText. Мои требования - базовый c материал PDF (напишите текст), и я также должен включить HTML элементы, которые редактируются в GUI с помощью редактора WYSIWYG (Summernote).

Мне удалось чтобы построить все идеально, однако я не могу понять, как включить в преобразование некоторые пользовательские CSS. Я использую метод convertToElements и добавляю полученные элементы в свой PDF вручную. Моя главная проблема в том, что Summernote создает таблицы с примененными к нему классами CSS, и, очевидно, у меня их нет в бэкэнде при создании PDF. Как я могу сослаться на файловый ресурс CSS в бэкэнд-коде Java, чтобы его можно было использовать при конвертации? Возможно ли что-то подобное, даже если моя часть "HTML" не "должным образом отформатирована" (то есть имеет теги no и et c., Только basi c HTML)?

My HTML выглядит так:

<table class="table table-bordered">
<tbody>
<tr><td>1.1</td><td>1.2</td></tr>
<tr><td>2.1</td><td>2.2</td></tr>
<tr><td>3.1</td><td>3.2</td></tr>
</tbody>
</table>

CSS, который идет с ним, выглядит так:

.table-bordered {
    border: 1px solid #ddd;
}

.table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px;
}

tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}

tr {
    display: table-row;
    vertical-align: inherit;
    border-color: inherit;
}

Я нашел этот ответ здесь Как добавить внешний CSS подает уже определенный HTML в iText 7 , который в основном говорит, что мне нужно разобрать текст HTML и добавить «недостающие» теги самому себе и файл CSS в папку ресурсов в моем бэкэнде так, оно автоматически подбирается при конвертации.

Есть ли другой "более правильный" способ сделать это?

PS Я использую Java 8, iText7 (последняя версия) и html2pdf ( последнее).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...