3.10. Format

Überblick

Welches Format benötigen Sie: DIN-A4 quer, Letter hochkant oder vielleicht ein ganz individuelles Format für ein Poster? Tests auf so etwas einfaches, wie Papierformate sind scheinbar überflüssig. Aber haben Sie schon einmal eine Datei im Format LETTER auf einem DIN-A4-Drucker gedruckt. Es geht zwar, aber das Schriftbild sieht nicht mehr so gut aus, wie erwartet.

Deshalb steht das Tag <hasFormat /> für Formattests zur Verfügung:

<!-- Tag to check the format: -->

<hasFormat format=".."            (either 'format' or 
           width=".."             'width' and 'height' has to be used)
           height=".."
           unit=".."              (optional)
           
           on=".."                (one of the page selection attributes
           onPage".."             ...
           onEveryPageAfter".."   ...
           onEveryPageBefore".."  ...
           onAnyPageAfter".."     ...
           onAnyPageBefore".."    ... can be used)
/>

Dokumente mit einheitlichem Seitenformat

Seitenformate können mit vordefinierten Konstanten geprüft werden:

<testcase name="hasFormat_A4Landscape">
  <assertThat testDocument="format/format_A4-Landscape.pdf">
    <hasFormat format="A4_LANDSCAPE" />     1
  </assertThat>
</testcase>
<testcase name="hasFormat_LetterPortrait">
  <assertThat testDocument="format/format_Letter-Portrait.pdf">
    <hasFormat format="LETTER_PORTRAIT" />  1
  </assertThat>
</testcase>

1 1

Konstanten existieren für gängige Formate.

Auch individuelle Papierformate können geprüft werden:

<testcase name="hasFormat_FreeFormat_1117x836_mm">
  <assertThat testDocument="format/physical-map-of-the-world-1999_1117x863mm.pdf">
    <hasFormat width="863.8" height="1117.6" unit="MILLIMETER" /> 1
  </assertThat>
</testcase>
<testcase name="hasFormat_FreeFormat_10x15_cm">
  <assertThat testDocument="format/format_Individual-10x15-cm.pdf">
    <hasFormat width="10.0" height="15.0" unit="CENTIMETER" />    1 
  </assertThat>
</testcase>

1 1

Erlaubte Einheiten sind POINTS, MILLIMETER, CENTIMETER, INCH und DPI72. DPI72 und POINTS sind gleichwertig. Die Einheiten werden in dem Attribut unit=".." angegeben.

Das Thema der verschiedenen Papierformate und deren Maße in Points, Millimeter und Inches wird bei www.prepressure.com gut dargestellt.

Die durch die DIN-Norm für Papierformate DIN 476 (http://de.wikipedia.org/wiki/Papierformat) erlaubte Toleranz der Seitenlängen wird beim Vergleich zwischen erwartetem und tatsächlichem Format berücksichtigt. Es muss betont werden, dass beim Vergleich aller Formate die geringere Toleranz der DIN-Norm 476 verwendet wird, auch wenn die Norm ISO 216 eine größere Toleranz erlaubt.

Dokumente mit mehreren Formaten

Ein Dokument mit unterschiedlich großen Seiten kann ebenfalls auf seine Formate überprüft werden:

<testcase name="hasFormat_DifferentFormatsOnDifferentPages">
  <assertThat testDocument="format/format_multiple-formats-on-individual-pages.pdf">
    <hasFormat format="A4_LANDSCAPE" on="FIRST_PAGE" />
    <hasFormat format="A5_PORTRAIT" onPage="3" />
  </assertThat>
</testcase>

Formattests können auf beliebige einzelne Seiten und Seitenbereiche eingeschränkt werden, wie es in Kapitel 13.2: „Seitenauswahl“ beschrieben ist:

<testcase name="hasFormat_OnAnyPageBefore">
  <assertThat testDocument="format/format_multiple-formats-on-individual-pages.pdf">
    <hasFormat format="A4_LANDSCAPE" onAnyPageBefore="3" />
  </assertThat>
</testcase>
<testcase name="hasFormat_OnAllPagesAfter">
  <assertThat testDocument="format/format_multiple-formats-on-individual-pages.pdf">
    <hasFormat format="A5_PORTRAIT" onEveryPageAfter="2" />
  </assertThat>
</testcase>