aboutsummaryrefslogtreecommitdiffstats
path: root/test/layoutengine/testcases/external-graphic_oversized.xml
blob: 3b091a8c07570c716f297a54cdceb1969c4e5dc2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright 2005 The Apache Software Foundation

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!-- $Id$ -->
<testcase>
  <info>
    <p>
      This test checks external-graphics. An oversized image is to be squeezed into page using min/opt/max values.
    </p>
  </info>
  <fo>
    <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg">
      <fo:layout-master-set>
        <fo:simple-page-master master-name="normal" page-width="21cm" page-height="29.7cm" margin="2cm">
          <fo:region-body background-color="yellow"/>
        </fo:simple-page-master>
      </fo:layout-master-set>
      <fo:page-sequence master-reference="normal" white-space-collapse="true">
        <fo:flow flow-name="xsl-region-body">
          <fo:block font-size="8pt">This first block is only to force an infinite loop if the image is not scaled down.</fo:block>
          <!-- TODO If you remove the above block, the image is placed on the page although it's too big. No warnings. -->
          <fo:block>
            <fo:external-graphic src="../../resources/images/big-image.png" 
                inline-progression-dimension.maximum="100%" block-progression-dimension.maximum="100%"
                content-width="scale-to-fit" content-height="scale-to-fit" overflow="hidden"/>
          </fo:block>
          <fo:block>EOF</fo:block>
        </fo:flow>
      </fo:page-sequence>
    </fo:root>
  </fo>
  <checks>
    <eval expected="0 0 595275 841889" xpath="//pageViewport/@bounds"/>
    <eval expected="481891" xpath="//regionBody/@ipda"/>
    <eval expected="728505" xpath="//regionBody/@bpda"/>
    <eval expected="481891" xpath="//flow/block[2]/lineArea/viewport/@ipda"/>
    <eval expected="728505" xpath="//flow/block[2]/lineArea/viewport/@bpda + //flow/block[1]/@bpda"/>
  </checks>
</testcase>