Henning Hraban Ramm schrieb am 13.09.2019 um 18:51:
Hi, in an example document I’m trying to get pictures of random size and 
placement.
Unfortunately the expansion is over my head:

%%%%%%%%%%%%%%%%%
\useMPlibrary[dum]
\usemodule[visual]

\startluacode

local locations = {
   'top',
   'bottom',
   'left',
   'right',
}

function RandomLocation()
   context(locations[math.random(1,#locations)])
end

\stopluacode

\newdimen\PicWidth
\PicWidth=\textwidth

\define[1]\Blindbild{
\getrandomnumber\imgH{1}{9}
\PicWidth=\textwidth
\doif{#1}{left}{\PicWidth=.4\textwidth}
\doif{#1}{right}{\PicWidth=.4\textwidth}
\startplacefigure[location={#1},title={#1 \fakewords{3}{20}}]
\externalfigure[place #1][width=\PicWidth,height=\dimexpr\textheight * \imgH / 
10 \relax]
\stopplacefigure
}
Put the value of the random location in a macro.

\define[1]\Blindbild
  {\edef\PicLocation{#1}%
   \getrandomnumber\imgH{1}{9}%
   \PicWidth=\textwidth
   \doifinset{\PicLocation}{left,right}{\PicWidth=.4\textwidth}%
\startplacefigure[location={\PicLocation},title={\PicLocation\space\fakewords{3}{20}}]
   \externalfigure
     [place \PicLocation]
     [width=\PicWidth,
      height=\dimexpr\textheight * \imgH / 10 \relax]
   \stopplacefigure}

Wolfgang

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to