Hi Bruce,
Thomas Holders scalebar1 is also very nice, although I can only get it to work at 1:1000. Get error cp-02 for larger and smaller scales....
that's strange, it should work at any scale. What is error cp-02 ?
Still haven't cracked the syntax for label size. Are you going to make me lookup the metapost references :)
if and(size <> xs, size <> s) [standard label metapost code] fi;
the label size is not passed to metapost but is controlled with tex macros like \thlargesize. You might achieve what you want like this: code metapost % set xs and s to 1pt verbatimtex \def\thsmallsize{\size[1]} \def\thtinysize{\size[1]} etex % label with minimum text height condition vardef p_label@#(expr txt,pos,rot,mode) = if abs(llcorner txt - ulcorner txt) > 5pt: p_label_orig@#(txt,pos,rot,mode) fi; enddef; % original therion label definition vardef p_label_orig@#(expr txt,pos,rot,mode) = if (mode=1) or (mode=7): interim labeloffset:=(u/8) fi; lab:=thelabel@#(txt, pos); if mode>1: pickup PenD fi; if mode=1: pickup pencircle scaled (u/6); drawdot(pos); process_label(pos,0); elseif mode=2: process_uplabel; elseif mode=3: process_downlabel; elseif mode=4: process_updownlabel; elseif mode=5: process_circledlabel; elseif mode=6: process_boxedlabel; elseif mode=7: process_label(pos,rot); % station name elseif mode=8: process_filledlabel(pos, rot); else: process_label(pos,rot); fi; enddef; endcode It's not very nice and may fail for multiline labels. Cheers, Thomas