Thanks Martin, and Stacho, for your collected efforts. I’ll try out and digest all of those suggestions, and put something on the wiki in due course.
I started wondering if a similar thing could be done for ‘line label’ (for say boxed or filled) but looking at the code it seems like that would be a much bigger chunk of work, as the mode concept is not implemented there. Thanks again Bruce From: Therion <therion-boun...@speleo.sk> On Behalf Of Martin Budaj via Therion Sent: Thursday, 4 October 2018 07:07 To: List for Therion users <therion@speleo.sk> Cc: Martin Budaj <m.bu...@gmail.com> Subject: Re: [Therion] Height numbers in square boxes On Tue, Oct 2, 2018 at 9:07 PM Bruce Mutton via Therion <therion@speleo.sk <mailto:therion@speleo.sk> > wrote: If I wanted to box just one or two text labels, night it be possible to pass this parameter using a standard ‘point label’ entity with a ‘mode’ option? Or would we have to go down a user defined label route? Hi, there is no such option, but you can use custom attribute, let's name it "label_mode": -attr label_mode 6 Than you just need to redefine the label macro to use it: vardef p_label@#(expr txt,pos,rot,mode_) = if known ATTR_label_mode: mode := scantokens(ATTR_label_mode); else: mode := mode_; fi; 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; Best regards, Martin
_______________________________________________ Therion mailing list Therion@speleo.sk https://mailman.speleo.sk/listinfo/therion