% 封面
\startMPinclusions
vardef hilbert(expr sidelength, n) =
 numeric u; u := 0.5sidelength;
 pair a, b, c, d;
 a := (-0.5, -0.5) * u;
 b := (-0.5, 0.5) * u;
 c := (0.5, 0.5) * u;
 d := (0.5, -0.5) * u;
 path p;
 p := a -- b -- c -- d;
 transform sw, nw, ne, se;
 sw := identity
       scaled 0.5
       reflectedabout ((0, 0), (1, 1))
       shifted (-0.5u, -0.5u);
 nw := identity
       scaled 0.5
       shifted (-0.5u, 0.5u);
 ne := identity
       scaled 0.5
       shifted (0.5u, 0.5u);
 se := identity
       scaled 0.5
       reflectedabout ((0, 0), (1, -1))
       shifted (0.5u, -0.5u);

 for i := 2 upto n:
   p := p transformed sw for j := nw, ne, se: -- p transformed j endfor;
 endfor;
 p
enddef;
\stopMPinclusions
\startuseMPgraphic{TitleGraphic}
path p; p := hilbert(OverlayWidth, 5) randomized 1mm;
pickup pencircle scaled 1mm;
draw p yscaled(OverlayHeight / OverlayWidth) withcolor transparent(1, .5, darkgray); %\MPcolor{tan};
\stopuseMPgraphic
\defineoverlay[TitleGraphic][\useMPgraphic{TitleGraphic}]

%% 阴影盒
\startuniqueMPgraphic{shade box}
numeric u, w, h, roundcorner, offset;
path p, q;
color shade;
u := 1cm; w := \overlaywidth; h := \overlayheight;
p := unitsquare xyscaled (w, h);
offset := 7pt;
shade := darkgray;
pickup pencircle scaled offset;
for i = 0 step .1 until 1:
   q := unitsquare xyscaled (w, h) shifted (i * offset, -i * offset);
   fill q withcolor transparent (1, .1, shade);
   draw q withcolor transparent (1, .1, shade);
endfor;
q := p shifted (-offset, offset);
draw q withcolor transparent (1, 0, white);
fill p withcolor \MPcolor{dimgray};
draw p withcolor \MPcolor{lightsteelblue};
\stopuniqueMPgraphic
\defineoverlay[shade box][\uniqueMPgraphic{shade box}]
\defineframedtext[coverbox][frame=off,background={shade box}]

\setupbackgrounds[page][background=TitleGraphic]
\startstandardmakeup
 \startcolor[white]
   \startcoverbox[middle][width=.6\textwidth,height=5cm,toffset=.8cm]
     \strut
     \hfil \bfd\ConTeXt\ 蹊径\hfil
     \blank[1cm]
     \hfil\bfa 李延瑞\hfil
     \blank[.25cm]
     \hfil\bf 2023 年 3 月 31 日\hfil
   \stopcoverbox
 \stopcolor
 \blank[14cm]
\stopstandardmakeup
\setupbackgrounds[page][background=]