Greetings everyone, Do any of you have experience with creating ornamented page borders? I have looked through the mailing list[^1] and through both mom's and utmac's documentation but I couldn't find exactly what I have in mind.
I have attached a pdf document, together with its pic(1) source code, to illustrate exactly what I am going for. I also tried looking through cstr54 and UTP to maybe figure out how I might do that myself with pure troff requests, but I gave up after a while, since I'm still a bit of a neophyte here . . . Also, does anyone perhaps have/host a collection of pic decorations one might browse and/or add to? I don't even know if using pic for that is standard o.o Kind Regards, Emilia --- [^1]: https://lists.gnu.org/r/groff/2022-09/msg00088.html
orn.pdf
Description: Adobe PDF document
.PS define orn { [ # Variables sideLength = $1/2; cupRad = $1/10; petalRad = $1/16.6; cornerRad = $1/20; splineLength = sideLength/5; splineTravel = splineLength * 2; rodLength = splineTravel; danglyFstRad = sideLength / 10; danglySndRad = danglyFstRad/2; danglyTrdRad = danglySndRad/2; Diamond: [ NE: line down sideLength right sideLength; SE: line down sideLength left sideLength; SW: line up sideLength left sideLength; NW: line up sideLength right sideLength; ]; # Flower in the middle (Cup & Petals) Cup: circle rad cupRad at Diamond; circle rad petalRad with .s at Cup.n; circle rad petalRad with .sw at Cup.ne; circle rad petalRad with .w at Cup.e; circle rad petalRad with .nw at Cup.se; circle rad petalRad with .n at Cup.s; circle rad petalRad with .ne at Cup.sw; circle rad petalRad with .e at Cup.w; circle rad petalRad with .se at Cup.nw; # Corner Circles N: circle rad cornerRad at Diamond.NE.start; E: circle rad cornerRad at Diamond.SE.start; W: circle rad cornerRad at Diamond.SW.start; S: circle rad cornerRad at Diamond.NW.start; # Side splines move to N down splineTravel left splineTravel; spline left splineLength then down splineLength; move to N down splineTravel right splineTravel; spline right splineLength then down splineLength; move to W up splineTravel right splineTravel; spline right splineLength then up splineLength; move to W up splineTravel left splineTravel; spline left splineLength then up splineLength; # Side dangly bits Lnw: line up rodLength left rodLength at Diamond.NW.center; arc rad danglyFstRad from Lnw.end; arc rad danglySndRad; arc rad danglyTrdRad; arc cw rad danglyFstRad from Lnw.end; arc cw rad danglySndRad; arc cw rad danglyTrdRad; Lsw: line down rodLength left rodLength at Diamond.SW.center; arc cw rad danglyFstRad; arc cw rad danglySndRad; arc cw rad danglyTrdRad; arc rad danglyFstRad from Lsw.end; arc rad danglySndRad; arc rad danglyTrdRad; Lne: line up rodLength right rodLength at Diamond.NE.center; arc cw rad danglyFstRad; arc cw rad danglySndRad; arc cw rad danglyTrdRad; arc rad danglyFstRad from Lne.end; arc rad danglySndRad; arc rad danglyTrdRad; Lse: line down rodLength right rodLength at Diamond.SE.center; arc rad danglyFstRad; arc rad danglySndRad; arc rad danglyTrdRad; arc cw rad danglyFstRad from Lse.end; arc cw rad danglySndRad; arc cw rad danglyTrdRad; ] } size = 0.3 for i = 0 to 21 by 1 do { orn(size); move to last [] down size; } for i = 0 to 12 by 1 do { orn(size); move to last [] right size; } for i = 0 to 21 by 1 do { orn(size); move to last [] up size; } for i = 0 to 12 by 1 do { orn(size); move to last [] left size; } .PE