ALTO shape use cases

Draft version 19-11-2014

ALTO Board

Introduction

The ALTO version 3.1 introduces makes it possible to use the shapes other than the standard rectangle for the elements String, TextLine, PageSpaceType and all block types.

Use Cases

Layout that can be described with polygons

Dropped caps

...
<TextBlock ID="TextBlock4" HEIGHT="198" WIDTH="785" 
    HPOS="318" VPOS="1456" >
	<TextLine ID="TextLine8">
  <Shape>
  	<Polygon POINTS="325 1456 1023 1456 1023 1504 
  	419 1504 419 1552 325 1552"/>
  </Shape>
  <String ID="String33" CONTENT="EEn" WC="0.82" CC="050">
	  <Shape><Polygon POINTS="325 1456 419 1456 
	  419 1552 325 1552"/></shape>
  </String>
  <SP ID="SP26" WIDTH="28" HPOS="472" VPOS="1456"/>
  <String ID="String34" CONTENT="F~iJJcher" 
  HEIGHT="43" WIDTH="152"   HPOS="500" VPOS="1457" 
  WC="0.82" CC="860001000"/>
  <SP ID="SP27" WIDTH="13" HPOS="652" VPOS="1457"/>
 ...
Headline on more than one row

Skewed text - 1

<TextBlock ID="P6_TB10004" ROTATION="315">
  <Shape><Polygon POINTS="1 2 3 4 5 6 7 8"/></Shape>
  <TextLine ID="P6_TL10022">
    <Shape><Polygon POINTS="1 2 3 4 5 6 7 8"/></Shape>
    <String ID="P6_ST10188" CONTENT="LODEN" WC="0.98" CC="00804">
      <Shape><Polygon POINTS="1 2 3 4 5 6 7 8"/></Shape>
    </String>
    <SP ID="P6_SP10167" HPOS="581" VPOS="381" WIDTH="60"/>
    <String ID="P6_ST10189" CONTENT="JASSEN" WC="0.99" CC="040000">
      <Shape><Polygon POINTS="1 2 3 4 5 6 7 8" /></Shape>
    </String>
...                    	
                        
Note that the TextLine and String element inherit the Rotation characteristics from the TextBlock element.
Skewed text - 2

<ComposedBlock ID="ComposedBlock2" HEIGHT="842" WIDTH="746" 
                  HPOS="167" VPOS="253" ROTATION="270">
  <TextBlock ID="TextBlock2" HEIGHT="842" WIDTH="746" 
                HPOS="167" VPOS="253">
    <TextLine ID="TextLine10" HEIGHT="842" WIDTH="746" 
                 HPOS="167" VPOS="253">
      <String ID="String155" HEIGHT="842" WIDTH="746" 
                 HPOS="167" VPOS="253" CONTENT="Amsterdam"></String>
      ...
    </TextLine>
  </TextBlock>
  <TextBlock ID="TextBlock3" HEIGHT="842" WIDTH="746" 
                HPOS="167" VPOS="253">
    <TextLine ID="TextLine18">
    ...

In this example the direction of the text is recorded in the rotation attribute in the ComposedBlock element and is inherited by the individual TextBlocks. It could also be recorded in each individual TextBlocks.
 
Source: