\startonderdeel co-nl-17

\projekt manual
\produkt context

\hoofdstuk[externe files]{Externe files}

{\em nog niet herzien}

\stoponderdeel

\paragraaf{\TEX||pakketten}
\index{files+externe}
\index{externe files}

We zagen reeds in \in{hoofdstuk}[externe figuren] dat
figuren buiten \TEX\ kunnen worden aangemaakt. In een tekst
komen we echter naast figuren ook andere vormen van
illustraties tegen, zoals tabellen en grafieken. Net als bij
figuren, ligt het soms ook hier voor de hand deze
illustraties buiten de tekst te houden.

\start

\catcode`\<=12  % setupa makes this one active 
\catcode`\>=12  % and this one too 

\startbuffer
\doinputonce{pictex}

\beginpicture
  \setcoordinatesystem
    units <.03em,.1em>
  \setplotarea
    x from 0 to 600,
    y from 0 to 100
  \axis
    bottom
    label {$Q~\hbox{in m$^3$/h}$}
    ticks numbered from 100 to 500 by 100 /
  \axis
    left
    label {$H~\hbox{in m}$}
    ticks numbered from 10 to 90 by 10 /
  \setquadratic
  \put
    {\tfx pompkromme} [bl] <0em,+.5em> at 300 71
  \plot
    0 75  300 71  550 58 /
  \put
    {\tfx leidingnetkarakteristiek} [tl] <0em,-.5em> at 300 42
  \plot
    0 28  300 42  550 70 /
  \setcoordinatesystem
    point at 0 -28 % +NAP correctie
  \multiput
    {$\circ$} at 500 35  460 31  375 19  550 34  380 23 /
\endpicture
\stopbuffer

\newif\ifroomforpictex   \roomforpictextrue

\ifroomforpictex

  \plaatsfiguur
    {Een voorbeeld van een extern aangemaakte illustratie.}
    {\bgroup
     \switchnaarkorps[klein]
\font\fiverm=cmr5 % CHECK THIS SOME SAY 
     \haalbuffer
     \egroup}

\else

  \plaatsfiguur
    {Helaas, \TEX's hash-table is te klein voor \PICTEX.}
    {}

\fi

\stop

Deze illustratie maakt gebruik van \PICTEX. Dit
macro||pakket dient dan ook te worden geladen voordat deze
illustratie kan worden gezet. Het pakket kan (en dient)
echter maar eenmaal te worden geladen.

Deze grafiek is in een aparte file gedefinieerd. Deze file
heeft de naam \type{vew6001a.tex} en ziet er als volgt uit:

\startvoorbeeld
\typebuffer
\stopvoorbeeld

Deze file is zelfstandig te verwerken, wat wel zo handig is
bij het ontwerpen van dergelijke grafieken.

In de tekst waarin deze grafiek wordt geplaatst, defini\"eren
we, analoog aan het defini\"eren van externe figuren, met:

\toonsetup{gebruikexternefile}

Bijvoorbeeld:

\startvoorbeeld
\starttypen
\gebruikexternefile  [pictex] [vew6001] [vew6001a] []
\gebruikexternefile  [pictex] [vew6002] [vew6002a] [korps=]
...................

\gebruikexternfiguur [vew1009] [vew1009a] [hfactor=300]
\gebruikexternfiguur [vew1010] [vew1010a] [hfactor=150]
...................
\stoptypen
\stopvoorbeeld

Met het eerste argument geven we aan dat de figuur tot de
groep \PICTEX\ hoort. Het tweede argument is de naam
waaronder we de figuur oproepen in de tekst, bijvoorbeeld:

\startvoorbeeld
\starttypen
\plaatsgrafiek
  {Zomaar wat krommen.}
  {\externfiguur[vew6001]}
\stoptypen
\stopvoorbeeld

Het derde argument is bedoeld voor de filenaam en het vierde
voor (optionele) instellingen.

We kunnen per groep een aantal eigenschappen vastleggen,
bijvoorbeeld het korps. Dit doen we met:

\toonsetup{gebruikexternefiles}

Standaard zijn de volgende groepen gedefinieerd:

\startvoorbeeld
\starttypen
\gebruikexternefiles[pictex][korps=klein,file=pictex]
\gebruikexternefiles[table][file=table]
\stoptypen
\stopvoorbeeld

{\em De belangrijkste reden om dergelijke commando's te
gebruiken ligt enerzijds in het feit dat het onderliggende
macro||pakket slechts eenmaal mag worden geladen en volgt
anderzijds uit de behoefte voor alle illustraties in een
groep tegelijk het korps aan te passen. Te zijner tijd
zullen deze commando's worden uitgebreid.}

\paragraaf{Tekstfiles}

Er is geen speciaal \CONTEXT||commando om tekstfiles op te 
roepen, omdat het \TEX||commando \type{\input} prima voldoet.

\startvoorbeeld
\starttypen 
\input <<filenaam>>
\stoptypen
\stopvoorbeeld

\stoponderdeel
