XSL-FO при установке фона ячейки таблицы перезаписывает / перекрывает границы таблицы - PullRequest
6 голосов
/ 07 апреля 2011

У меня возникла проблема, и я не нашел решения / обходного пути (хотя были заданы похожие вопросы) к проблеме XSL-FO с фоном ячейки. Мы используем Apache FOP 0.25, и быстрое обновление до новой версии другого процессора PDF в настоящий момент не представляется возможным.

Дело в том, что, когда я устанавливаю цвет фона для ячейки, новая заливка фона покрывает границы таблицы, которые видны в противном случае (сплошной 0,5 пт). Я попробовал несколько способов преодолеть это, но все они приводят к неоптимальным результатам:

  • установка границы в 1pt - граница становится видимой, но имеет различную ширину в зависимости от того, проходит ли она по ячейке с цветом фона или без него. Это явно слишком толстый.
  • установка границ для каждой ячейки таблицы отдельно, которая имеет цвет фона. Это работает, но я вижу промежутки между границами, которые установлены на ячейках без фона и с ячейками. В приведенном ниже примере будут видимые промежутки между вертикальными границами ячейки 1.1 и ячейки 2.1, но не между 2.1 и 3.1.

    __________________________
    |cell 1.1: background    | 
    |cell 2.1: no background |
    |cell 3.1: no background |
    --------------------------
    

Есть ли практические обходные пути для решения проблемы? Я устанавливаю background-color для элемента table-cell, это должно быть правильно, верно?

Большое спасибо

1 Ответ

5 голосов
/ 30 июня 2011

хороший пример для границ и шаблонов заливки, которые работают с Apache FOP

    <fo:table border="1pt solid black">
        <fo:table-body border="inherit">
          <fo:table-row border="inherit">
            <fo:table-cell border="inherit" background-color="#F2F2F2" number-rows-spanned="2">
              <fo:block>data</fo:block>
            </fo:table-cell>
            <fo:table-cell border="inherit" background-color="#D9D9D9">
              <fo:block>data2</fo:block>
            </fo:table-cell>
          </fo:table-row>
          <fo:table-row border="inherit">
            <fo:table-cell border="inherit" background-color="#C0C0C0">
              <fo:block>data3</fo:block>
            </fo:table-cell>
          </fo:table-row>
        </fo:table-body>
    </fo:table>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...