Difference between revisions of "Collectors"

From Wiki
Jump to navigation Jump to search
Line 3: Line 3:
 
Collectors are an alternative to overlays that can be used to build-up composite objects.
 
Collectors are an alternative to overlays that can be used to build-up composite objects.
 
[[Layers]] on the other hand, are used to define whole pages.
 
[[Layers]] on the other hand, are used to define whole pages.
See the [http://www.pragma-ade.com/general/manuals/details.pdf details] manual for further explanations.
+
See the [[manual:details.pdf| details]] manual for further explanations.
  
 
==Example==
 
==Example==

Revision as of 09:39, 16 January 2009

< Layout | Columns | Overlays | Logos | Layers >

Collectors are an alternative to overlays that can be used to build-up composite objects. Layers on the other hand, are used to define whole pages. See the details manual for further explanations.

Example

Adding labels to a figure.

\starttext                                                                             

\definecollector[example]
\setcollector [example] { \externalfigure[cow][width=4cm,frame=on] }
\setcollector [example] [corner={right,bottom},location={left,top}]
        {\framed{1}}
\setcollector [example] [corner={right,top},location={left,bottom}]
        {\framed{2}}
\setcollector [example] [corner={left,top},location={right,bottom}]
        {\framed{3}}
\setcollector [example] [corner={left,bottom},location={right,top}]
        {\framed{4}}

\startTEXpage
        \composedcollector{example}
\stopTEXpage

\stoptext

There is no confusion if the added text is placed within the first object. However,

\starttext                                                                             

\definecollector[example2]
\setcollector [example2] { \externalfigure[cow][width=4cm,frame=on] }
\setcollector [example2] [corner={right,bottom},location={right,bottom}]
        {\framed{1}}
\setcollector [example2] [corner={right,top},location={right,top}]
        {\framed{2}}
\setcollector [example2] [corner={left,top},location={left,top}]
        {\framed{3}}
\setcollector [example2] [corner={left,bottom},location={left,bottom}]
        {\framed{4}}

\startTEXpage
        \composedcollector{example2}
\stopTEXpage

\stoptext

Notice that the size of the collected object grows as text is added. As a consequence, the positions of the corners get redefined as the bounding box grows.