Ширина столбца динамической таблицы XSL-FO
Как сейчас, у меня около 12 столбцов, и все они точно такой же ширины. Проблема в том, что некоторые столбцы не требуют много места. Как заставить столбцы соответствовать их содержанию? Столбцы должны иметь динамическую ширину.
Я пробовал
<fo:table table-layout="auto">
и
<fo:table-column column-width="proportional-column-width(1)" column-number="1"/>
<fo:table-column column-width="proportional-column-width(1)" column-number="2"/>
<fo:table-column column-width="proportional-column-width(1)" column-number="3"/>
кажется, ничто не делает трюк.
3 ответов
к сожалению, я не нашел простой способ иметь динамические ширины столбцов. Я закончил с этим:
<fo:table-column column-number="1" column-width="35pt" />
<fo:table-column column-number="2" />
<fo:table-column column-number="3" />
<fo:table-column column-number="4" />
<fo:table-column column-number="5" />
<fo:table-column column-number="6" />
<fo:table-column column-number="7" />
<fo:table-column column-number="8" />
<fo:table-column column-number="9" />
<fo:table-column column-number="10" />
<fo:table-column column-number="11" />
<fo:table-column column-number="12" />
Я указываю первый столбец, потому что данные никогда не изменятся. Остальное я оставляю открытым, чтобы соответствовать их содержанию. Работает так,как мне сейчас нужно.
вы также можете указать единицы в "процентах единиц". Мне подходит...
<fo:table-column column-number="1" column-width="75%" />
<fo:table-column column-number="2" column-width="25%" />
- используйте атрибут "proportional-column-width" для длинных столбцов, а остальные столбцы пусть по умолчанию.
- Проверьте ширину каждого столбца, если он длиннее других столбцов, укажите, сколько раз больше (например, 2 раза или 3 раза или 4,5 раза или даже больше).
Ex-1:
<fo:table-column column-number="1" column-width="proportional-column-width(3)"/>
<fo:table-column column-number="2"/>
<fo:table-column column-number="3"/>
Ex-2:
<fo:table-column column-number="1" column-width="proportional-column-width(3)"/>
<fo:table-column column-number="2" column-width="proportional-column-width(4)"/>
<fo:table-column column-number="3"/>