2009-05-20 13 views
6

Udaje mi się wygenerować plik PDF z jedną linijką z google-chart, ale jakość wygenerowanych tytułów kolumn nie odpowiada naszym potrzebom, więc chcę generować samodzielnie.FOP: fo: atrybut szerokości bloku jest ignorowany?

Zadanie to należy wykonać za pomocą [fo:table], ale nie jestem w stanie z powodzeniem pozycjonować tytułów (szerokości i marginesy/paddings).

Podsumowując, chcę umieścić tytuły za pomocą [fo:block] ustawiając atrybut szerokości plus margines ujemny (tj. width="1.5cm" margin-top="-2em"), ale szerokość nie odnosi skutku.

Czy wiesz, jak to zrobić?

Dzięki.

Odpowiedz

1

Nareszcie nie mogłem tego zrobić, ponieważ [fo: inline] próbuje zebrać całą dostępną przestrzeń.

Jedną z nich jest umieszczenie marginesów (lewego lub prawego) na 90% lub więcej na wypełnienie tej luki, ale nie mam pojęcia, że ​​poprzedni tekst [fo: inline] był renderowany w jednym, dwóch lub więcej kwestia.

Jedynym sposobem na wygenerowanie tytułów kolumn jest użycie [fo: table] plus dodanie marginesów (po lewej stronie: & w prawo) do każdej komórki.

PS: używam FOP-0,95

12

Właściwość "width" nie dotyczy fo: block (patrz http://www.w3.org/TR/xsl11/#fo_block). Jeśli chcesz przedefiniować szerokość, musisz użyć fo: block-container (http://www.w3.org/TR/xsl11/#fo_block-container) lub innego elementu, który generuje tak zwany obszar odniesienia. Trochę trudno jest zrozumieć, jaki jest dokładnie twój oczekiwany układ. Być może możesz także eksperymentować z użyciem właściwości "start-indent" i "end-indent", aby pośrednio wpływać na faktyczną szerokość fo: block. HTH

+0

Próbowałem prawie wszystkiego: fo: inline-container, max-width, border-before-precedence, last-line-end-indent i wiele innych kombinacji, ale nie próbowałem twojej kombinacji. Daję ci +1, ponieważ brzmi to poprawnie. Wielkie dzięki za odpowiedź. – ATorras

-10

Na FOP można użyć tabel ustawić szerokość zamiast stosowania go bezpośrednio na bloku.

+2

Nikt nie używa xsl: fo, ponieważ chce ... Niestety, formularze HTML są straszne dla e-maili, a drukowanie nie jest dużo lepsze. Z plikiem PDF wiesz, co otrzymujesz. – Sprague

+0

Używam XSL-FO do renderowania menu restauracji. –

Powiązane problemy