\startonderdeel co-nl-14

\projekt manual
\produkt context

\hoofdstuk[figuren,externe figuren]{Figuren}

\paragraaf{Inleiding}

In dit hoofdstuk besteden we aandacht aan het opnemen in een 
document van figuren. In \in{paragraaf}[plaatsblokken] 
stonden we stil bij het mechanisme van plaatsen, hier zal het
gaan over de figuren zelf, in het bijzonder figuren die zijn 
aangemaakt in andere applicaties. 

Wanneer een document is verwerkt, dan is het resultaat een
\DVI\ file of, wanneer we \PDFTEX\ gebruiken, een \PDF\
file. In het eerste geval is in het opgemaakte document
ruimte gereserveerd voor een extern figuur, maar de figuur
zelf wordt pas in de nabewerking van de \DVI\ file
tussengevoegd. Omdat in geval van \PDFTEX\ geen nabewerking
plaatsvindt, zal dit programma zelf de externe figuren
tussenvoegen. 

Externe figuren komen in veel gedaanten, zoals de vector
formaten \EPS\ en \PDF, en de bitmap formaten \TIF, \PNG\ en
\JPG. Overigens kan men bij figuren ook denken aan bewegende
beelden, ofwel movies. Een bijzonder geval zijn de door
\METAPOST\ gegenereerde \POSTSCRIPT\ files. Enerzijds moeten
we daar zelf zorgen voor een adequate afhandeling van
eventueel aanwezige fonts, anderzijds kunnen we dergelijke
files in \PDFTEX\ direct afhandelen, wat voordelen heeft
wanneer we \METAPOST\ ook gebruiken voor layout gerelateerde
zaken. 

Hoewel in de praktijk veel van de genoemde zaken aan de
gebruiker zullen voorbijgaan, kan enig inzicht in de
problematiek geen kwaad. 

\paragraaf{Defini\"eren}
\index{externe figuren}
\index{figuren+defini\"eren}
\macro{\tex{stelexternefigurenin}}
\macro{\tex{gebruikexternfiguur}}

Een figuur is ontworpen op een bepaald formaat. Soms is dit 
formaat bekend, maar in veel gevallen niet of slechts 
globaal. 

\startregelcorrectie
\stelcombinatiesin[breedte=.2\tekstbreedte]
\startcombinatie[4*1]
  {\externfiguur[koe][schaal=300,kader=aan]}             
     {natuurlijke grootte}
  {\externfiguur[koe][schaal=225,kader=aan]}             
     {geschaald naar 25\%}
  {\externfiguur[koe][hoogte=2cm,kader=aan]} 
     {een hoogte van 2cm}
  {\externfiguur[koe][hoogte=2cm,breedte=3cm,kader=aan]} 
     {een hoogte van 2cm en een breedte van 3cm}
\stopcombinatie    
\stopregelcorrectie

Men kan zich voorstellen dat wanneer we niet weten wat de 
natuurlijke afmetingen zijn, het schalen naar bijvoorbeeld 
40\% voor verassingen kan zorgen. Een figuur van 1cm wordt 
haast onzichtbaar en een figuur van 50cm is nog steeds erg 
groot. Het ligt dus meer voor de hand de afmetingen te 
relateren aan de huidige korpsgrootte of vaste maten mee te 
geven. We komen daar op terug. 

Om \TEX\ de gelegenheid te geven adequaat te schalen en
voldoende ruimte te reserveren, moeten de afmetingen van de
figuur bekend zijn. In \in {tabel} [tab:drivers] is te zien
welke formaten worden ondersteund door respectievelijk
\DVIPS, \DVIPSONE\ en \PDFTEX. In geval van \PDFTEX\ kan
\TEX\ zonder problemen zelf vaststellen wat de natuurlijke
afmetingen zijn van en figuur. Wanneer we gebruik maken van
\DVI, dan kan \TEX\ de maten van een \EPS\ illustratie zelfs
vaststellen, door in de betreffende file te zoeken naar de
zogenaamde {\em bounding box}. Dat kan echter niet met 
bijvoorbeeld een illustratie in \TIF\ bitmap formaat.

\startbuffer
\starttabel[|l||||||||]
\HL
\VL           \VL\EPS\VL\PDF\VL\METAPOST\VL\TIF\VL\PNG\VL\JPG\VL\MOV\VL\SR
\HL
\VL \DVIPS    \VL +  \VL -- \VL +       \VL -  \VL -  \VL -  \VL +  \VL\FR
\VL \DVIPSONE \VL +  \VL -- \VL +       \VL +  \VL -  \VL -  \VL +  \VL\MR
\VL \PDFTEX   \VL -  \VL +  \VL +       \VL +  \VL +  \VL +  \VL +  \VL\LR
\HL
\stoptabel
\stopbuffer

\plaatstabel
  [hier][tab:drivers]
  {Enkele voorbeelden van ondersteunde formaten} 
  {\haalbuffer}

Wanneer \CONTEXT\ niet zelf kan nagaan wat de natuurlijke
afmetingen van een extern figuur zijn, dan wordt
teruggevallen op \TEXUTIL. In eerste instantie wordt gezocht
naar een door \TEXUTIL\ gegenereerde file \type
{texutil.tuf} met daarin een overzicht van figuren en
afmetingen. \CONTEXT\ doorzoekt zonodig meerdere van die
files, afhankelijk van de instellingen. Wanneer de
betreffende informatie niet kan worden gevonden, wordt
gezocht naar een specificatie van een figuur met eenzelfde
naam maar van een ander type. Als ook dat niet lukt, zal
\CONTEXT, mits toegestaan, het \PERL\ script \TEXUTIL\
aanroepen. Men kan eventueel (vooraf) \TEXUTIL\ zelf
aanroepen, bijvoorbeeld: 

\starttypen
texutil  --figures  *.tif 
\stoptypen

Wanneer een figuur niet aanwezig is, maar wel gevonden wordt
in de file \type {texutil.tuf}, dan wordt ervan uitgegaan
dat de figuur bestaat. {\em Als een extern figuur is
aangepast, moet met behulp van \TEXUTIL\ een nieuwe lijst
met voorinstellingen worden gegenereerd. Doet men dit niet,
dan komt de gereserveerde ruimte niet overeen met de
werkelijk benodigde ruimte.} 

Laten we er van uitgaan dat de afmetingen en de figuur zijn
gevonden, bijvoorbeeld de koe hierboven. Als we, zoals hier,
vier koeien op een rij willen, dan ligt het voor de hand de
afmetingen slechts eenmaal op te zoeken en dat gebeurt dan
ook. Een gevonden figuur wordt opgeslagen als een zogenaamd
object. Zo'n object kan worden hergebruikt, in \TEX, in
\PDF, maar nog niet in \DVI, maar dat laatste wordt door
\CONTEXT\ gecompenseerd. 

Een aantal kenmerken van externe figuren kunnen worden 
ingesteld met: 

\toonsetup{stelexternefigurenin}

Er zijn drie opties mogelijk: \type {kader}, \type{leeg} en
\type{test}. Bij \type {leeg} worden geen figuren geplaatst,
maar wordt wel de noodzakelijke ruimte gereserveerd.
Bovendien worden de wezenlijke figuurkenmerken in de
gereserveerde ruimte gezet. \voetnoot {Dit effect kan ook
worden verkregen door aan \TEXEXEC\ de switch \type {-fast}
mee te geven.} Bij \type {kader} wordt een kader geplaatst,
dit ter controle. De optie \type {test} heeft betrekking op
aanklikbare figuren. 

Hoewel \CONTEXT\ erg zijn best doet een figuur te vinden,
kan het voorkomen dat het mis gaat, bijvoorbeeld omdat een
figuur niet bestaat, of omdat verkeerde zoekpaden zijn
opgegeven (we komen daar nog op terug). In de meeste
gevallen, kan ook het best geen extensie of type worden
opgegeven. 

\starttypen 
\exernfiguur[leukhoor]
\exernfiguur[leukhoor.pdf]
\exernfiguur[leukhoor][type=pdf]
\stoptypen

In het eerste geval zal \CONTEXT\ de graphic gebruiken met
de beste kwaliteit, terwijl in beide andere gevallen een
\PDF\ graphic zal worden gebruikt. In veel gevallen zijn de
volgende vier aanrpepen gelijkwaardig, gegeven dat \type
{leukhoor} beschikbaar is in \METAPOST\ uitvoer met de
extensie \type {eps} of \type {mps}: 

\starttypen
\exernfiguur[leukhoor]
\exernfiguur[leukhoor][type=eps]
\exernfiguur[leukhoor][type=eps,methode=mps]
\exernfiguur[leukhoor][type=mps]
\stoptypen

Vaak zal een \METAPOST\ graphic een nummer als extensie
hebben, met andere woorden: 

\starttypen
\exernfiguur[leukhoor.1]
\stoptypen

In eerste instantie zal \CONTEXT\ dus proberen zelf de maten
vast te stellen. Pas in tweede instantie wordt \type
{texutil.tuf} geraadpleegd. Zowel de figuurfile als \type
{texutil.tuf} worden eerst gezocht op het huidige gebied
(\type {lokaal}) en vervolgens (\type {globaal}) op de
ingestelde gebieden. Standaard heeft \type {lokatie} de
waarde \type {{lokaal,globaal}}, zodat op beide gebieden
wordt gezocht. Het gebied bestaat uit een padnaam, waarbij
de \argchars\ is vervangen door een \type {/}. Het algemene
gebied kan per computer verschillen en wordt dan ook bij
voorkeur ingesteld in de file \type {cont-sys}. Er mogen
meerdere gebieden worden ingesteld, bijvoorbeeld: 

\starttypen
\stelexternefigurenin[gebied={c:/fig/eps,c:/fig/pdf}]
\stoptypen

Een externe figuur wordt opgeroepen met het commando \type 
{\externfiguur}. We kunnen bijvoorbeeld de koe oproepen met:

\starttypen
\externfiguur[koe][breedte=2cm]
\stoptypen

Beter is het echter alle figuren bovenaan de file, of in een 
aparte file, vooraf te defini\"eren. Dit bevordert 
consistentie. Dit defini\"eren gebeurt met:

\toonsetup{gebruikexternfiguur}

Toegestane definities zijn:

\starttypen
\gebruikexternfiguur [koe]
\gebruikexternfiguur [een koe]   [koe230]
\gebruikexternfiguur [grote koe] [koe230] [breedte=4cm]  
\stoptypen

Na de eerste definitie kan de figuur worden opgeroepen onder
de naam \type {koe} terwijl de filenaam ook \type {koe} is.
In de tweede en derde definitie is de logische naam \type
{een koe}, terwijl de filenaam \type {koe230} is. In het
laatste geval is ook een maat gedefinieerd. 

Standaard wordt dus naam van de file als naam gebruikt. Een
nieuwe naam maakt het echter mogelijk een zelfde externe
figuur meerdere malen te gebruiken met andere instellingen.
De \type {schaal} kan worden opgegeven in tienden procenten.
Een waarde van \type {1000} staat daarbij voor 100\%. Een
figuur kan worden verkleind en/of vergroot. 

In plaats van een schaalwaarde kan ook een genormeerde
schaalwaarde worden gekozen. De instelling \type {hfactor=10}
levert een figuur met een hoogte van het ingestelde korps.
Als we twee figuren naast elkaar plaatsen kunnen de hoogtes
gelijk worden gemaakt door de \type {hfactor} gelijk te maken:

\startvoorbeeld
\starttypen
\gebruikexternfiguur[alfa][file0001][hfactor=50]
\gebruikexternfiguur[beta][file0002][hfactor=50]

\plaatsfiguur
  {Twee figuren naast elkaar.}
  \startcombinatie[2]
    {\externfiguur[alfa]} {dit is alfa}
    {\externfiguur[beta]} {dit is beta}
  \stopcombinatie
\stoptypen
\stopvoorbeeld

We zien dat \type {\externfiguur} dus in staat is een reeds
gedefinieerd figuur te benaderen. De typografische
consistentie van een tekst kan worden vergroot door het
consistent schalen van figuren. Het is daarom mogelijk
figuren eigenschappen van elkaar te laten erven: 

\startvoorbeeld
\starttypen
\gebruikexternfiguur [alfa]  [file0001] [hfactor=50]
\gebruikexternfiguur [beta]  [file0002] [alfa]
\gebruikexternfiguur [gamma] [file0003] [alfa]
\gebruikexternfiguur [delta] [file0004] [alfa]
\stoptypen
\stopvoorbeeld

Normeren kan ook handig zijn als figuren worden geplaatst met
\type {\startfiguurtekst}. In dat geval ligt het voor de hand
figuren in de breedte te normeren, zodat figuren die onder
elkaar staan even breed worden.

Indien gewenst kan ook de breedte •f hoogte worden
opgegeven. In dit geval is er geen relatie met het
ingestelde korps, tenzij men natuurlijk de breedte en hoogte
in termen van \type {em} of \type {ex} vastlegt. In \in
{figuur} [fig:factoren] is een rooster getekend met hokjes
ter grootte van een factor~10. 

\plaatsfiguur
  [hier]
  [fig:factoren]
  {Factoren bij het huidige korps.}
  {\vskip\lineheight % compensates the lack of height of the legend
   \rooster
     [nx=30,ny=10,
      dx=\korpspunten,dy=\korpspunten,
      xstap=1,ystap=1,
      eenheid=pt]}

\paragraaf{Oproepen}
\index{figuren+oproepen}
\macro{\tex{toonexternefiguren}}
\macro{\tex{externfiguur}}

Een figuur kan worden opgeroepen met het reeds genoemde
commando: 

\toonsetup{externfiguur}

Omwille van backward compatibiliteit, kan een figuur ook
worden opgeroepen met een commando dat zijn naam weergeeft.
In het voorbeeld hieronder hadden we dus ook \type {\akoe}
en \type {\bkoe} kunnen gebruiken. 

\startbuffer 
\gebruikexternfiguur[akoe][koetje][factor=10]
\gebruikexternfiguur[bkoe][koetje][factor=20] 

\plaatsfiguur[links]{geen}{\externfiguur[bkoe]}

Het is een waarheid als een \hbox {\externfiguur[akoe]} dat \TEX\ zeer 
beperkte mogelijkheden heeft om figuren in de tekst op te nemen. Als de 
te nemen hindernissen echter zijn genomen, blijkt plotseling weer veel 
mogelijk te zijn. Zo kunnen we zonder veel problemen een figuur links of 
rechts \inrechter {\externfiguur[bkoe]} in de marge plaatsen. De koe in de 
rechtermarge heeft een hoogte van twee maal 10pt en is dus in feite een 
20pt koe. Het werken met dergelijke \hbox {\externfiguur[akoe]}e||letters 
levert wel wat grotere print||files op. 
\stopbuffer 

\startvoorbeeld
\typebuffer
\stopvoorbeeld

Het bovenstaande levert op:

\haalbuffer

Genormeerde figuren passen zich aan aan het actuele korps,
tenminste, als dat korps is ingesteld met \type
{\stelkorpsin} of \type {\switchnaarkorps}. Als een tekst op
verschillende formaten moet worden uitgedraaid, ligt het
werken met genormeerde figuren dus voor de hand. Het
bovenstaande voorbeeld ziet er in een wat kleiner korps als
volgt uit:\voetnoot{De getallen kloppen in dit voorbeeld
natuurlijk niet meer.} 

\start
\switchnaarkorps[klein]
\haalbuffer\par
\stop

\paragraaf{Automatisch schalen}
\index{figuren+maximaal}

Als men een figuur zo groot mogelijk wil weergeven, kan men
aan \type{factor} de waarde \type{max}, \type{passend} of
\type{ruim} geven. Meestal voldoet \type{ruim} het best,
omdat in dat geval ook het bijschrift nog op de bladzijde
past. 

\plaatstabel{Genormeerde figuren.}
\starttabel[|l|l|]
\HL
\VL \bf instelling   \VL \bf gevolg                      \VL\SR
\HL
\VL \tttf max     \VL breedte of hoogte zetspiegel       \VL\FR
\VL \tttf passend \VL resterende breedte of hoogte       \VL\MR
\VL \tttf ruim    \VL meer resterende breedte of hoogte  \VL\MR
\VL \ttsl getal   \VL vermenigvuldigingsfactor (maal 10) \VL\LR
\HL
\stoptabel

Met \type {max} schaalt men een figuur naar de afmetingen
van een pagina, en met \type {passend} wordt geschaald naar
de beschikbare ruimte. Bij figuren met een onderschrift kan
het best \type{ruim} worden gebruikt in plaats van \type 
{passend}. 

Soms is niet van tevoren bekend of in een figuur de hoogte
of juist de breedte maatbepalend is. Als men desondanks de
figuur zo groot mogelijk wil opnemen, dan kan men \type
{factor} de waarde \type {max} geven. In dat geval worden de
maximale afmetingen automatisch bepaald. 

\starttypen
\exterfiguur[koe][factor=max]
\stoptypen

Dit figuur van een koe zal ofwel naar de volle breedte, ofwel
naar de hoogte schalen, afhankelijk van wat het beste past. 
Ook zijn combinaties van instellingen mogelijk:

\starttypen
\externfiguur[koe][factor=max,hoogte=.4\teksthoogte]
\stoptypen

Hier zal de koe of de maximale breedte innemen, of ten hoogte
40\% van de hoogte.

De figuren en gegevens opgenomen in \type {texutil.tuf}
kunnen worden weergegeven met: 

\toonsetup{toonexternefiguren}

Er zijn drie alternatieven: \type {a}, \type {b} en~\type
{c}. Het eerste alternatief biedt ruimte om een figuur te
corrigeren en annoteren, het tweede alternatief is wat
effici\"enter en plaatst meer figuren op een bladzijde. Het
derde alternatief plaatst iedere figuur op en nieuwe
bladzijde. 

Om een overizicht te krijgen, moet men eerst de file 
\type {texutil.tuf} aanmaken, bijvoorbeeld met:

\starttypen
texutil --figures *.mps *.jpg *.png  
\stoptypen

Handiger is het echter, om \TEXEXEC\ te gebruiken: 

\starttypen
texexec --figures=c --pdf *.mps *.jpg *.png  
\stoptypen

Dit resulteert in een \PDF\ met de gevraagde figuren, waarbij
een figuur per pagina is geplaatst. 

\paragraaf[tex figuren]{\TEX||figuren}
\index{figuren+tabellen}
\index{tabellen+schalen}

Het is zondermeer handig dat we figuren kunnen schalen naar 
bepaalde afmetingen. Dit mechanisme is daarom ook beschikbaar
voor gewone tekstelementen. Die dienen daartoe ofwel in een 
aparte file te worden gezet, ofwel in een buffer. In het 
volgende voorbeeld wordt een tabel geschaald tot volle 
breedte, resulterend in \in {figuur} [fig:tabel].

\startbuffer
\startbuffer[tabel]
  \starttabel[||||||]
    \HL
    \VL \bf factor             \VL \bf breedte            \VL 
        \bf hoogte             \VL \bf breedte en hoogte  \VL
        \bf niets              \VL \SR 
    \HL  
    \VL \type{max}             \VL automatisch            \VL 
        automatisch            \VL automatisch            \VL
        breedte of hoogte      \VL \FR
    \VL \type{passend}         \VL automatisch            \VL 
        automatisch            \VL automatisch            \VL 
        breedte of hoogte      \VL \MR
    \VL \type{ruim}            \VL automatisch            \VL 
        automatisch            \VL automatisch            \VL 
        breedte of hoogte      \VL \MR
    \VL \type{niets}           \VL breedte                \VL 
        hoogte                 \VL isometrisch            \VL 
        natuurlijke afmetingen \VL \LR
    \HL
  \stoptabel
\stopbuffer

\plaatsfiguur
  [hier][fig:tabel]
  {Een voorbeeld van een \TEX\ figuur.}
  {\externfiguur[tabel.tmp][breedte=\tekstbreedte]}

\plaatsfiguur
  {Een voorbeeld van een \TEX\ figuur.}
  {\externfiguur[tabel.tmp][breedte=.5\tekstbreedte]}
\stopbuffer

\typebuffer

\haalbuffer

Buffers worden naar een file geschreven met de extensie
\type {tmp}, vandaar dat hier de buffer wordt opgeroepen
met de naam \type{tabel.tmp}. In tegenstelling tot andere
figuurtypen, worden \TEX\ figuren niet automatisch
opgezocht. Dit zou namelijk tot conflicterende situaties
kunnen leiden, bijvoorbeeld wanneer een \EPS\ figuur is
bedoeld, niet wordt gevonden, maar wel een \TEX\ file
eenzelfde naam.

\paragraaf{Extensies}
\index{figuren+extensies}

In de inleiding spraken we over typen files, zoals \EPS\ en
\PNG. In de meeste gevallen hoeft men dit type niet te
specificeren, integendeel, het vastleggen van een type
heeft als nadeel dat men voor \DVI\ en \PDF\ uitvoer
verschillende instellingen zou moeten doen. Het type
figuurfile dat \CONTEXT\ zal gebruiken hangt af van de
special driver. Daarbij wordt bij voorkeur een outline, en
pas in tweede instantie een bitmap gezocht. 

\METAPOST\ figuren, die vaak een nummer als extensie hebben,
worden automatisch als zodanig herkend. \CONTEXT\ zal bij
\METAPOST\ figuren zorg dragen voor het afhandelen van de
fonts. De oplettende gebruiker zal aan de hand van de
meldingen kunnen zien wat er gebeurt. Wanneer kleur niet is
toegestaa, zal worden nagegaan of de kleurspecificaties in
de \METAPOST\ file moeten worden omgezet in grijswaarden,
vervolgens worden fonts de \TEX\ file binnengesmokkeld.
\voetnoot {Fonts zijn een probleem apart in een \METAPOST\
file. Het wordt aan de verwerkende applicatie overgelaten de
fonts uit te zoeken. In die zin is \METAPOST\ uitvoer niet
overdraagbaar.} In geval van \PDF\ wordt bovendien door
\TEX\ zelf de \METAPOST\ code omgezet in \PDF. 

Zo nodig wordt een en ander opgeborgen in een object, zodat
het beschikbaar is voor hergebruik. Dit kan worden voorkomen 
door \type {object=nee} in te stellen. 

Bij \EPS\ en \MPS\ (\METAPOST) figuren wordt gezocht naar 
een hoog resolutie bounding box. De standaard \POSTSCRIPT\ 
bounding box kan namelijk een afwijking van een halve punt 
hebben. Dit is, zeker bij het uitlijnen van figuren, een niet
te verwaarlozen afwijking.  

Hoewel \CONTEXT\ dus zelfstandig het type file kan bepalen, 
zal in sommige situaties de gebruiker zelf het type willen 
afdwingen. Dit kan op verschillende manieren:

\starttypen
\externfiguur[koe.eps]
\externfiguur[koe][type=eps]
\stoptypen

Bij het automatisch bepalen kunnen we ons dus beperken tot:

\starttypen
\externfiguur[koe]
\stoptypen

In uitzonderlijke gevallen kan men ook vastleggen volgens 
welke methode een figuur moet worden behandeld. De 
afmetingen worden dan bepaald op basis van het type, en de 
afhandeling op basis van de methode.

\starttypen
\externfiguur[graphic.xyz][type=eps,methode=mps]
\stoptypen

Deze laatste methode hoeft dus in de praktijk zelden of
nooit te worden gebruikt en vergt wat meer diepgaande kennis
van de onderliggende mechanismes. Het zoeken naar afmetingen
kan worden geblokkeerd door \type {preset=nee}. 

\paragraaf{Movies} \index{movies} 

Bewegende beelden, ofwel \citeer {movies}, worden binnen
\CONTEXT\ afgehandeld als figuren, wat het in principe ook
zijn. Dit type wordt vooralsnog {\em niet} automatisch
herkend, omdat de maten niet kunnen worden vastgesteld. Dit
betekent dat de gebruiker de extensie of het type moet
specificeren. 

\starttypen
\externfiguur[demo.mov][breedte=4cm,hoogte=4cm,preview=ja]
\stoptypen

In dit geval wordt een preview getoond. Zonodig kan met een 
statisch figuur er overheen leggen met behulp van het 
overlaymechanisme. 

\paragraaf{Opmerkingen}

Figuren, en met name foto's, moeten bij voorkeur in
consistente beeldverhoudingen worden geproduceerd. De in \in
{figuur} [fig:beeldverhoudingen] weergegeven verhoudingen
kunnen als richtlijn worden gebruikt. Bij het schalen van
foto's kan overigens kwaliteitsverlies optreden. 

\def\beeldverhouding#1:#2%
  {\bgroup
   \dimen0=4em
   \dimen2=#1\dimen0
   \divide\dimen2 by #2
   \omlijnd[breedte=\dimen0,hoogte=\dimen2]{#1 : #2}%
   \egroup}

\plaatsfiguur
  [hier][fig:beeldverhoudingen]
  {Enkele aanbevolen beeldverhoudingen.}
\startcombinatie[3*2]
  {\beeldverhouding4:5} {}
  {\beeldverhouding3:4} {}
  {\beeldverhouding2:3} {}
  {\beeldverhouding5:4} {}
  {\beeldverhouding4:3} {}
  {\beeldverhouding3:2} {}
\stopcombinatie

Achter een (extern) figuur kan een achtergrond worden
geplaatst (zie \in{figuur}[fig:achtergronden bij figuren]).
In dit voorbeeld zijn zowel de plaatsblokken, in dit geval
\type{figuur}, als de externe figuren van een achtergrond
voorzien. 

\startbuffer
\def\tooneenkoe#1%
  {\externfiguur
     [koe]
     [bfactor=80,achtergrond=raster,achtergrondraster=#1]}

\def\toonhetraster#1%
  {\type{raster=#1}}

\startcombinatie[3*2]
  {\tooneenkoe{0.70}} {\toonhetraster{0.70}}
  {\tooneenkoe{0.75}} {\toonhetraster{0.75}}
  {\tooneenkoe{0.80}} {\toonhetraster{0.80}}
  {\tooneenkoe{0.85}} {\toonhetraster{0.85}}
  {\tooneenkoe{0.90}} {\toonhetraster{0.90}}
  {\tooneenkoe{0.95}} {\toonhetraster{0.95}}
\stopcombinatie
\stopbuffer

\start

\stelplaatsblokkenin
  [achtergrond=kleur,
   achtergrondkleur=groen,
   achtergrondoffset=3pt]

\plaatsfiguur
  [][fig:achtergronden bij figuren]
  {Enkele voorbeelden van achtergronden bij figuren.}
  {\haalbuffer}

\stop

\startvoorbeeld
\starttypen
\stelplaatsblokkenin
  [achtergrond=kleur,
   achtergrondkleur=groen,
   achtergrondoffset=3pt]

\gebruikexternfiguur [koe]
  [bfactor=80,
   achtergrond=raster,
   achtergrondraster=0.75]
\stoptypen
\stopvoorbeeld

Let op: er is hier slechts ‚‚n plaatsblok en er zijn zes
externe figuren. De achtergrond van het plaatsblok heeft
dus betrekking op de hele combinatie, terwijl de achtergrond
van een extern figuur zich tot het ene figuur beperkt!

\stoponderdeel
