.\" vim: ft=groff .nr PIC_WIDTH 2 \" inches .nr PIC_HEIGHT 2 .ds PIC_NAME profile.pdf . .nr FIG_PAD 1.2m \" figure padding .nr VSPC 120 \" vertical space as % of text size . .aln VERT_POS nl . .de SIZE . ps \\$1 . vs ((\\n[.s] * \\n[VSPC]) / 100) .. .SIZE 12 . .de EXEC \\$^ .. .de LEFT_RULE . br . nr RULE_TOP \\n[VERT_POS] . in +1n .. .de LEFT_RULE_END . in -1n . nr RULE_HEIGHT (\\n[VERT_POS] - \\n[RULE_TOP]) . sp -1 . EXEC \L'-\\n[RULE_HEIGHT]u' . br .. .de HEADER . br . nr HEADER_TOP \\n[VERT_POS] . device pdf: pdfpic \\*[PIC_NAME] -L \\n[PIC_WIDTH]i . in +(\\n[PIC_WIDTH]i + \\n[FIG_PAD]u) . sp . EXEC \s[36]\\$^\s[0] . br . SIZE +3 . EXEC \fICurriculum Vitae\fP . sp 0.5 . LEFT_RULE .. .de HEADER_END . SIZE -3 . LEFT_RULE_END . in -(\\n[PIC_WIDTH]i + \\n[FIG_PAD]u) . sp (\\n[HEADER_TOP]u + \\n[PIC_HEIGHT]i + 1v - \\n[VERT_POS]u) .. .de INFO . ds LABEL \\$1 . shift . ta T 0.7i . EXEC \fB\\*[LABEL]:\fP\t\\$* . br . ta T 0.5 .. .de LIST . br . vs ((\\n[.v]u * \\n[VSPC]) / 100) . nr LIST_TOP \\n[VERT_POS] . nr MAX_ROWS \\$1 . nr COL_WIDTH \\$2 . nr ITEM_NUM 0 . nr COL_NUM 0 .. .de LI . nr COL_NUM (\\n[ITEM_NUM] / \\n[MAX_ROWS]) . nr ITEM_NUM (\\n[ITEM_NUM] + 1) . nr INDENT (\\n[COL_NUM] * \\n[COL_WIDTH]) . ti +(\\n[INDENT] + \\n[FIG_PAD]u) . EXEC \(bu \\$^ . if ( (\\n[ITEM_NUM] % \\n[MAX_ROWS]) = 0 ) \ . sp (\\n[LIST_TOP]u - \\n[VERT_POS]u) .. .de LIST_END . vs . sp ((\\n[LIST_TOP]u + \\n[MAX_ROWS]v + 1v) - \\n[VERT_POS]u)) .. .de SECTION . sp . EXEC \d\l'\\n[.l]u'\h'-\\n[.l]u'\u\c . EXEC \s[20]\\$^\s[0] . sp .5 .. .de TIMELINE_DATE . sp .5 . in +\\n[FIG_PAD]u . ll -\\n[FIG_PAD]u . EXEC \fI\\$1 \- \\$2\fP . in +1i . sp -1 . LEFT_RULE . shift 2 . EXEC \fB\\$^\fP . br .. .de TIMELINE_DATE_END . LEFT_RULE_END . in -(1i + \\n[FIG_PAD]u) . ll +\\n[FIG_PAD]u .. .de FOOTER ' sp . tl ''\s-2\\*[FOOTER_STRING]\s+2'' ' sp 2 .. .wh -2m FOOTER