Подтвердить что ты не робот

Масштабировать до изображения в FOP

Я использую FOP версии 1.0 для создания PDF файлов. На одной из страниц я хотел бы отображать изображение (2552 x 4200 пикселей) и масштабировать его, если он не полностью вписывается на страницу. Насколько я мог видеть в список рассылки, рекомендуемый способ сделать это:

<fo:external-graphic inline-progression-dimension.maximum="100%" 
                     content-height="scale-down-to-fit" 
                     content-width="scale-down-to-fit" 
                     src="..."/>

К сожалению, это все еще не отображает все изображение. Нижняя часть изображения отключена. Может ли кто-нибудь дать мне подсказку о том, что я потенциально делаю неправильно?

4b9b3361

Ответ 1

Я нашел эту страницу здесь, объясняя, как масштабирование работает с XSL-FO.

По сути, это фрагмент, который я использовал для его работы:

<fo:external-graphic
    src="url('...')"
    width="100%"
    content-height="100%"
    content-width="scale-to-fit"
    scaling="uniform"
    xsl:use-attribute-sets="img"/>

Я обнаружил, что width="100%" был недостающим элементом в ваших собственных попытках. Надеюсь, это поможет будущим посетителям.

Ответ 2

Определение точной высоты и ширины окна просмотра:.

Если вы не укажете окно просмотра, то FOP не будет знать, для чего нужно масштабировать изображение.

Можно догадаться, но точно не знать.