2015-06-04 4 views
0

Можно ли добавить PDF-файл в градиент, используя FO? Это может быть и фоновое изображение, не имеет значения. Но я хотел бы добавить на страницу не только область тела.Градиентный фон для PDF

ответ

2

Конечно. On создаст изображение SVG, которое будет соответствовать желаемому для градиента. В этом примере я использую линейный градиент от желтого до красного, слева направо.

<svg xmlns="http://www.w3.org/2000/svg" version="1.0" height="1in" width="8.5in"> 
    <defs> 
     <linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%"> 
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" /> 
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" /> 
     </linearGradient> 
    </defs> 
    <rect width="8.5in" height="1in" fill="url(#grad1)" /> 
</svg> 

Затем вставьте, что в качестве фонового изображения для региона-до страницы и установить степень страницы на всю высоту страницы:

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg" 
    font-family="Times" font-size="16px"> 
    <fo:layout-master-set> 
     <fo:simple-page-master master-name="backgrad" page-width="8.5in" page-height="11in"> 
      <fo:region-body/> 
      <fo:region-before extent="11in" background-image="backgrad.svg"/> 
     </fo:simple-page-master> 
    </fo:layout-master-set> 
    <fo:page-sequence master-reference="backgrad"> 
     <fo:flow flow-name="xsl-region-body"> 
      <fo:block> 
       Hello 
      </fo:block> 
     </fo:flow> 
    </fo:page-sequence> 
</fo:root> 

Результат заключается в следующем:

enter image description here

+0

Какой процессор FO вы используете? – PhillyNJ

+1

Я тестировал, что с RenderX XEP и Apache FOP 1.1 работает для обоих. –

+0

Спасибо. Я попытаюсь, но я уже нашел способ использовать фоновое изображение. ** * * – levipadre

Смежные вопросы