2015-02-03 11 views
7

Czy istnieje sposób dołączania obrazów i tabel w polach tekstowych przy użyciu znacznika = html podczas eksportowania pliku PDF przy użyciu programu JasperReports?Jak uwzględnić obrazy i tabele w polach tekstowych podczas eksportowania do pliku PDF?

Kiedy dodać pole tekstowe ze znacznikami html = do mojego raportu, podstawowe wsparcie HTML jest po wyjęciu z pudełka, np .:

<textField> 
    <reportElement .../> 
    <textElement markup="html"/> 
    <textFieldExpression><![CDATA["<html>some <b>bold</b> text</html>"]]></textFieldExpression> 
</textField> 

jednak bardziej złożona HTML nie wydaje się być obsługiwane. Gdybym miał rację, należałoby napisać niestandardowy MarkupProcessor, aby przekształcić przychodzący HTML na jrxml i podłączyć go do silnika JasperReports, aby obsługiwał bardziej złożone przykłady.

Ponieważ korzystamy z CKEditor do obsługi danych wejściowych, lista używanych znaczników powinna być możliwa do zarządzania. Po drugie, już używamy Jsoup do parsowania i czyszczenia HTML, co może być przydatne przy implementacji MarkupProcessor.

Czy istnieje przykład, na którym mogę się oprzeć? Jak już wspomniałem, głównie szukam wsparcia dla obrazu (img) i tabeli (table, tr, td).

Jeśli nie, czy istnieje alternatywa dla osiągnięcia tego przy pomocy JasperReports?

+0

Mam to samo pytanie, wymyśliłeś rozwiązanie? –

+0

@AlbertHendriks to nie wydaje się możliwe, przynajmniej nie znalazłem łatwego rozwiązania. To, do czego dokończyłem, używa http://www.docx4java.org do generowania plików .docx zawierających kod HTML. Jak się okazuje, nasi użytkownicy są zadowoleni z pobierania plików Word zamiast PDF, więc dobrze mi z tym radzę. Może być jednak możliwe przekonwertowanie wynikowego docx na pdf, ale jeszcze nie próbowałem. Nawiasem mówiąc, docx4j wydaje się używać https://code.google.com/p/flying-saucer/ pod maską, aby zaimportować kod HTML. –

+0

Nie można wstawić obrazu w polu tekstowym. Oto mój identyfikator e-mail. proszę przesłać mi swój dokładny scenariusz. [email protected] – user1791574

Odpowiedz

3

Rzeczywiście wydaje się to niemożliwe. Zamiast tego zamiast tego wstawiamy obrazy w predefiniowanych lokalizacjach w jrxml, a konfiguracja ogranicza funkcjonalność programu ckeditor. Inną opcją byłoby wyodrębnienie adresów URL obrazu z programu ckeditor i wstawienie ich w predefiniowanych lokalizacjach w jrxml, ale nie używamy ich teraz.

Powiązane problemy