
/Names [
(CJ) % Cynthia Jenson
(DRT) (RLC) (BMHR)
(AHB) % Arriving at 7ish
(CMAG) % Will see what I can do. Should be able to make it.
[(RA) {-0.06 Kern} (Y) {-0.02 Kern} (C)] [(JDA) {-0.04 Kern} (W)] % late
()
] def
/Titles [
Names {dup length 0 eq {pop} if} forall
(+) (&)
] def
/Circlearrays [ Titles {[exch]} forall ] def
/Belowtitles [ Titles length {()} repeat ] def
/HeaderLeftText [(The Bung Hole, Monday 12) {SuperscriptOn} (th) {SuperscriptOff} ( March 2012)] def
/HeaderCenterText [(Cynthia) /quoteright (s in Town)] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=5796&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/papers/2012/20120312_cynthia.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bunghole)
(http://malvedos.wordpress.com/) (The Malvedos Blog)
] def
/TitlesFont /MyriadPro-Bold def
/FontSizesRatioTitlesMin 999 def
/CrossHatchingTitles true def
/GlassesOnSheets [
[ 0 1 Titles length 1 sub 2 idiv {} for ]
[ Titles length 1 add 2 idiv 1 Titles length 1 sub {} for ]
] def % /GlassesOnSheets
/GlassesOnTastingNotePages GlassesOnSheets def
/GlassesClusteredOnVoteRecorders [
GlassesOnTastingNotePages dup
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/VoteRecorderTopTexts [
[ (What is it?) ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders

/Circlearrays [
[ (Santelmo) (White) (from Lidl) ]
[ (Santelmo) (Tawny) (from Lidl) ]
[ (Santelmo) (10Y) (from Lidl) ]
[ (Cruz) (White) (from Franprix) ]
[ (Sao Pedro das Aguias) (10Y) (from Franprix) ]
[ [(Roz) /egrave (s)] (Reserve) (from Franprix) ]
[ (Passadouro) (1995) ]
[ (Passadouro) (1994) ]
[ (Niepoort) (1994) ]
[ (&) (And) ]
[ /plus (Plus) ]
[ /infinity (Much) ]
] def
/Titles [
(Sn)
dup
dup
(Cz)
[(SP) {-0.11 Kern} (A)]
(Rz)
(Pd)
(Pd)
(Ni)
counttomark 1 Circlearrays length 1 sub {Circlearrays exch get 0 get} for
] def
/Overtitles [ Circlearrays {1 get} forall ] def
/Belowtitles [ Titles length {()} repeat ] def
/Names [
[(JDA) {-0.06 Kern} (W)]
(DRT)
(THRA)
(AHB)
[(RA) {-0.06 Kern} (YC)]
()
] def
/HeaderLeftText [(The Bung Hole, Thursday 22) {SuperscriptOn} (nd) {SuperscriptOff} ( March 2012)] def
/HeaderCenterText [(Some Little Ports)] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=5841&view=unread#unread) (Review thread on ThePortForum.com)
(http://www.theportforum.com/viewtopic.php?t=5750&view=unread#unread) (Planning thread on ThePortForum.com)
(http://www.jdawiseman.com/papers/2012/20120322.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://www.lidl.fr/) (Lidl France)
(http://www.franprix.fr/) (Franprix)
] def
/SubtitlesTastingNotes Overtitles def
/FontSizesRatioTitlesMin 2 def
/FontSizesRatioAboveBelowOverMin 99 def
/OvertitleMaxFontSizeProportionTitles 0.4 def
/GlassesOnSheets [
[ 0 3 1 4 2 5 ]
dup [ exch {6 add} forall ]
] def % /GlassesOnSheets
/GlassesOnTastingNotePages [
[ 0 1 5 {} for ]
dup [ exch {6 add} forall ]
] def
/WaterCountTarget 15 def % intended number of tickable squares
/VerticalMiddlingTitles {Titles WithinTitles get type /nametype eq {/MatchNone} {/MatchString} ifelse} def

/JDAW [(JDA) {-0.06 Kern} (W)] def
/RAYC [(RA) {-0.06 Kern} (YC)] def
/RubyCount 8 def
/Names [
(BMHR)
(CMAG)
RAYC
(THRA)
(AHB)
(DRT)
(RLC)
()
% (AP)
% (CSD)
% [(CSD) /quoteright (s +1)] % Terry
% JDAW
] def
/Titles [
(G)
(G)
(Ck)
(F)
(N)
(RP)
(Rs)
(TPS)
0 1 Names length 2 sub {Names exch get} for
] def
/Circlearrays [
[ [(Graham) /quoteright (s Six Grapes)] (DRT) ]
[ [(Graham) /quoteright (s Finest Reserve)] JDAW ]
[ (Cockburn Special Reserve) (RLC) ]
[ [(Fonseca T) {-0.08 Kern} (erra Prima)] RAYC ]
[ (Noval Black) RAYC ]
[ (Ramos-Pinto Collector) (RLC) ]
[ (Quinta de la Rosa Reserve) RAYC ]
[ (The Port Society Ruby Reserve) (RLC) ]
0 1 Names length 2 sub {Names exch get [exch]} for
] def
/Overtitles [
(Six Grapes)
(Finest Reserve)
(Special Reserve)
[(T) {-0.08 Kern} (erra Prima)]
(Black)
(Collector)
(Reserve)
(Ruby Reserve)
Circlearrays length RubyCount sub {()} repeat
] def
/SubtitlesTastingNotes Overtitles def
/Belowtitles [ Titles length {()} repeat ] def
/HeaderLeftText [(The Bung Hole, Thursday 29) {SuperscriptOn} (th) {SuperscriptOff} ( March 2012)] def
/HeaderCenterText [
(The Birthday Boys)
{TypeOfPagesBeingRendered dup /Glasses eq exch /TastingNotes eq or {SheetNum 1 le {(: Amuse-Bouche)} {(: Plat Principal)} ifelse} if}
{TypeOfPagesBeingRendered /VoteRecorder eq {SheetNum 0 le {(: Plat Principal)} if} if}
] def
/ExternalLinks [
(http://www.theportforum.com/viewtopic.php?t=5202&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/papers/2012/20120329_birthday.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bunghole)
(http://en.wikipedia.org/wiki/1965#March) (March 1965)
] def
/GlassesOnSheets [
[ 0 1 3 {} for ]
[ 4 1 7 {} for ]
[ 8 1 Circlearrays length 1 sub RubyCount add 2 idiv {} for ]
dup dup length 1 sub get 1 add [ exch 1 Circlearrays length 1 sub {} for ]
] def % /GlassesOnSheets
/GlassesOnTastingNotePages GlassesOnSheets def % For no tasting note pages at all use /GlassesOnTastingNotePages [] def
/TitlesFont /Impact def
/CircletextFont /BookAntiqua-Bold def
/OvertitlesFont {CircletextFont} def
/FontSizesRatioTitlesMin 99 def
/FontSizesSetsGlassesPages [ 0 0 counttomark GlassesOnSheets length exch sub {1} repeat ] def
/GlassesClusteredOnVoteRecorders [
GlassesOnTastingNotePages 2 1 index length 2 sub getinterval
GlassesOnTastingNotePages
] def
/VoteRecorderTopTexts [ % Must be same length as GlassesClusteredOnVoteRecorders
[ (What is it?) ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/CrossHatchingBackground {SheetNum 1 le} def
/CrossHatchingTitles {SheetNum 1 gt} def
/CrossHatchingRadialGapStart 48 def
/CrossHatchingRadialGapAtInfinity 12 def
/Names [
[(JDA) {-0.06 Kern} (W)]
(DRT)
(THRA)
(RLC)
()
] def
/Circlearrays [
[ (+) ]
Names {dup length 0 eq {pop} {[exch]} ifelse} forall
] def
/Titles [ Circlearrays {0 get} forall ] def
/Belowtitles [ Circlearrays length {()} repeat ] def
/HeaderLeftText [(The Bung Hole, Wednesday 11) {SuperscriptOn} (th) {SuperscriptOff} ( April 2012)] def
/HeaderCenterText [(A Small Emergency)] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=5889&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20120411_blind.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bunghole)
(http://oldnickholborn.co.uk/) (The Old Nick (pre-Port beer))
] def
/TitlesFont /Century def
/FontSizesRatioTitlesMin 999 def
/VoteRecorderCrossedBox
{
VoteRecorderShowTotalRow VoteRecorderSheetNum get execU dup
{
pop Titles WithinTitles get ThisName eq ThisName length 0 gt ThisName type /arraytype ne and and
Titles WithinTitles get type /arraytype eq {ThisName (THRA) eq or} if
} if
} def
/GlassesClusteredOnVoteRecorders [
{GlassesOnTastingNotePages} dup
] def
/VoteRecorderTopTexts [
[ (What is it?) ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/VerticalMiddlingTitles {Titles WithinTitles get type /nametype eq {/MatchNone} {/MatchString} ifelse} def
/JDAW [(JDA) {-0.06 Kern} (W)] def
/RAYC [(RA) {-0.06 Kern} (YC)] def
/Circlearrays [
[ (Croft) (1966) (DRT) ]
[ (Gould Campbell) (1966) RAYC ]
[ (Fonseca) (1966) (AHB) ]
[ [(W) {-0.12 Kern} (arre)] (1966) [JDAW ( & STG)] ]
[ [(T) {-0.04 Kern} (aylor)] (1966) [JDAW ( & STG)] ]
[ (Quinta do Noval) (1966) (WS) ]
] def
/Titles [ (Cr) (GC) (F) (W) (T) (N) ] def
/Belowtitles [ Circlearrays length {()} repeat ] def
/Overtitles [ Circlearrays {0 get} forall ] def
/TitlesTastingNotes Overtitles def
/TitlesVoteRecorder Titles def
/SubtitlesTastingNotes Belowtitles def
/SubtitlesVoteRecorder Overtitles def
/Names [
JDAW
(STG) % Stephanie True Galley, right-handed
RAYC (AHB) (DRT) (WS) ()
] def
/HeaderLeftText [(The Bung Hole, Tuesday 17) {SuperscriptOn} (th) {SuperscriptOff} ( April 2012)] def
/HeaderCenterText (A Small Horizontal of 1966s) def
/ExternalLinks [
(http://www.theportforum.com/viewtopic.php?t=5905&view=unread#unread) (Review thread on ThePortForum.com)
(http://www.theportforum.com/viewtopic.php?t=5858&view=unread#unread) (Organisation thread on ThePortForum.com)
(http://www.jdawiseman.com/papers/2012/20120417_1966.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
] def
/TitlesFont /TimesNewRomanPS-BoldMT def
/OvertitlesFont TitlesFont def
/CircletextFont /TimesNewRomanPSMT def
/FontSizesRatioAboveBelowOverMin 99 def
/OvertitleMaxFontSizeProportionTitles 0.25 def
/ShapesInTitles true def
/ShapesToUse [/Flower] def % At least one of: /Flower /Star
/ShapesInAbovetitles false def
/ShapesInBelowtitles false def
/ShapesInOvertitles false def

/CirclearrayPortNames << /Df (Delaforce) /DfC [(Delaforce C) /ocircumflex (rte)] /QC [(Delaforce Quinta da C) /ocircumflex (rte)] >> def
/SubtitlePortNames << /Df (Delaforce) /DfC [(Delaforce C) /ocircumflex (rte)] /QC [(Quinta da C) /ocircumflex (rte)] >> def
/VintageData [
[ (1975) /Df (AP) ]
[ (1960) /Df (THRA) ]
[ (1963) /Df (THRA) ]
[ (1966) /Df (THRA) ]
[ (1970) /Df (AHB) ]
[ (1974) /QC (JHG) ]
[ (1977) /Df (AHB) ]
[ (1980) /DfC (WS) ]
[ (1982) /Df (AP) ]
[ (1984) /QC (AHB) ]
[ (1985) /Df (THRA) ]
[ (1987) /QC (WS) ]
[ (1991) /DfC (AP) ]
[ (1992) /Df (AP) ]
[ (1994) /Df (AP) ]
[ (1997) /DfC (AP) ]
[ (2000) /Df (AP) ]
[ (2003) /Df (AP) ]
[ (2007) /Df (AP) ]
] def
/Circlearrays [ VintageData {
[ exch dup 0 get exch dup 1 get CirclearrayPortNames exch get exch dup length 2 le {pop} {2 get} ifelse ]
} forall] def
/Titles [ VintageData {0 get 2 2 getinterval} forall ] def
/Belowtitles [ VintageData {1 get dup /Df ne {pop ()} {SubtitlePortNames exch get} ifelse} forall ] def
/Overtitles [ VintageData {1 get dup /Df eq {pop ()} {SubtitlePortNames exch get} ifelse} forall ] def
/TitlesTastingNotes [ VintageData {0 get} forall ] def
/SubtitlesTastingNotes [ VintageData {1 get CirclearrayPortNames exch get} forall ] def
/Names [
(Nick D.)
[(J) {-0.02 Kern} (ulian W) {-0.15 Kern} (.)]
(Tom A.)
(Rob C.)
[(Axel P) {-0.15 Kern} (.)]
[(Derek T) {-0.15 Kern} (.)]
(Alex B.)
[(J) {-0.04 Kern} (acob H.)]
(Ben R.)
[(W) {-0.08 Kern} (olfgang S.)]
(Ray C.)
[(Christoper G) {-0.02 Kern} (.)]
()
] def
/HeaderLeftText [(Delaforce at The Bung Hole, Tuesday 24) {SuperscriptOn} (th) {SuperscriptOff} ( April 2012)] def
/HeaderCenterText [] def
/HeaderRightText [
(www) {-0.092 Kern} (.) {-0.092 Kern} (Delaforce.com, )
(www) {-0.092 Kern} (.) {-0.092 Kern} (ThePortForum.com, )
% (www) {-0.092 Kern} (.) {-0.12 Kern} (W) {-0.092 Kern} (orldOf) {+0.12 Kern} (Port.de, )
% (www.jacob-head.com/port,)
(www) {-0.092 Kern} (.jdawiseman.com)
] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=5172&view=unread#unread) (Organisation thread on ThePortForum.com)
(http://www.theportforum.com/viewtopic.php?t=5922&view=unread#unread) (Review thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20120424_delaforce.pdf) (Latest version this placemat)
(http://www.delaforce.com/) (Delaforce)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
] def
/PlaceNamesNumCopies 1 def
/PrePourNumCopies 1 def
/CorkDisplay true def
/StickyLabelsNumCopies 1 def
/StickyLabelsTypes [0] def
/TitlesFont /BookmanOldStyle-Bold def
/CircletextFont /BookmanOldStyle def
/HeaderFont CircletextFont def
/GlassesOnSheets [
[ 0 ]
dup [ exch dup length 1 sub get 1 add dup 5 add 1 exch {} for ]
dup [ exch dup length 1 sub get 1 add dup 5 add 1 exch {} for ]
dup [ exch dup length 1 sub get 1 add dup 5 add 1 exch {} for ]
] def % /GlassesOnSheets
/GlassesOnTastingNotePages [
[ 0 GlassesOnSheets 1 get {} forall ]
2 1 GlassesOnSheets length 1 sub {GlassesOnSheets exch get} for
] def
/NonDecanterLabelGlassesNumCopies {SheetNum 0 eq {0} {1} ifelse} def
/GlassesClusteredOnVoteRecorders [
GlassesOnSheets
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/WaterCountTarget 15 def % intended number of tickable squares
/PlaceNamesFirstAndThirdFoldsFromEdge 0 def

/JDAW [(JDA) {-0.06 Kern} (W)] def
/RAYC [(RA) {-0.06 Kern} (YC)] def
/Names [
(JDS)
(AHB) (DRT) (RLC) (PW) (WS)
(BMHR) (CMAG) JDAW RAYC (THRA)
()
] def
/Circlearrays [
1 1 Names length 2 sub {[exch Names exch get]} for
[ (Graham) (1952) [(Single T) {-0.092 Kern} (awny)] (JDS) ]
[/dagger] [/daggerdbl] [/lozenge] [/currency]
] def
/Titles [
Circlearrays {dup length 2 ge {[exch dup 0 get 0 1 getinterval exch 1 get 2 2 getinterval]} {0 get} ifelse} forall
] def
/Belowtitles [ Circlearrays {dup length 3 ge {2 get} {pop ()} ifelse} forall ] def
/HeaderLeftText [(The Bung Hole, W) {-0.092 Kern} (ednesday 2) {SuperscriptOn} (nd) {SuperscriptOff} ( May 2012)] def
/HeaderCenterText [(Post-BFT: we) /quoteright (ll still be sober, honest guv)] def
/HeaderRightText [
(www) {-0.092 Kern} (.grahams-port.com, )
(www) {-0.092 Kern} (.) {-0.092 Kern} (ThePortForum.com, )
% (www) {-0.092 Kern} (.) {-0.12 Kern} (W) {-0.092 Kern} (orldOf) {+0.12 Kern} (Port.de, )
% (www.jacob-head.com/port,)
(www) {-0.092 Kern} (.jdawiseman.com)
] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=5890&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20120502.pdf) (Latest version this placemat)
(http://www.thebft.co.uk/) (The Big Fortified Tasting)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://www.grahams-port.com/) (Graham's Port)
] def
/TitlesFont /TrebuchetMS-Bold def
/CircletextFont /Garamond-Bold def
/BelowtitlesFont CircletextFont def
/HeaderFont /Garamond def
/FontSizesRatioTitlesMin 9999 def
/GlassesClusteredOnVoteRecorders [
{[ GlassesOnTastingNotePages {[exch {dup Circlearrays exch get length 3 ge {pop} if} forall]} forall ]}
{GlassesOnTastingNotePages}
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/VoteRecorderTopTexts [
[ (What is it?) ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/CircletextMaxFontSizeProportionRadius 0.0984 def

/JDAW [(JDA) {-0.06 Kern} (W)] def
/RAYC [(RA) {-0.06 Kern} (YC)] def
/Circlearrays [
[ [(Dow)] (1970) JDAW ]
[ [(Fonseca)] (1970) (CMAG) ]
[ [(Graham)] (1970) (THRA) ]
[ (Sandeman) (1970) (RLC) ]
[ [(T) {-0.09 Kern} (aylor)] (1970) (RMW) ]
[ [(W) {-0.06 Kern} (arre)] (1970) (AHB) ]
[ [(Cockburn)] (1970) RAYC ]
[ [(Of) /fl (ey Boa Vista)] (1970) (NDS) ]
[ [(Royal Oporto)] (1970) (DRT) ]
[ [(Royal Oporto Carvalhas)] (1970) [RAYC ( from THRA)] ]
[ /dagger ]
[ /daggerdbl ]
] def
/Titles [
(D)
(F)
(G)
(S)
(T)
(W)
(Ck)
(OBV)
(RO)
(ROC)
/dagger
/daggerdbl
] def
/Overtitles [ Circlearrays {0 get} forall ] def
/Belowtitles [ Circlearrays {dup length 3 ge {1 get} {pop ()} ifelse} forall ] def
/TitlesTastingNotes [ 0 1 Titles length 1 sub {dup Overtitles exch get dup length 0 gt {exch pop} {pop Titles exch get} ifelse} for ] def
/TitlesVoteRecorder Titles def
/TitlesDecantingNotes Titles def
/TitlesCorkDisplay TitlesTastingNotes def
/Names [
(RMW) (AHB) (CMAG) (DRT) RAYC (RLC) JDAW (THRA)
(NDS) % Cookie's friend Sandy
()
] def
/HeaderLeftText [(The Bung Hole, Tuesday 15) {SuperscriptOn} (th) {SuperscriptOff} ( May 2012)] def
/HeaderCenterText [(A Small 1970 Horizontal, Honouring Ronnie Roots)] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=5977&view=unread#unread) (Review thread on ThePortForum.com)
(http://www.theportforum.com/viewtopic.php?t=5912&view=unread#unread) (Planning thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20120515_1970.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://en.wikipedia.org/wiki/1970) (Wikipedia on 1970)
] def
/TitlesFont /TrebuchetMS-Bold def
/OvertitlesFont /Garamond-Bold def
/BelowtitlesFont OvertitlesFont def
/CircletextFont OvertitlesFont def
/FontSizesRatioAboveBelowOverMin 999 def
/GlassesOnSheets [
[ 0 Titles length 1 sub /e exch def /s exch def s 1 e {dup e lt e s sub 6 ge and {dup s sub e s sub 1 add dup 6 div ceiling cvi 3 -1 roll 3 copy mul exch idiv 4 1 roll 1 add mul exch idiv ne {][} if} if} for ]
] def % /GlassesOnSheets
/CircletextMaxFontSizeProportionRadius 0.092 def
/TastingNotesTitlesFontSizeMax 16 def
/CircletextsMaxCopies { % Needlessly complicated for this use, but reusably general-purpose
Rays
{
dup RaysLinesPerGlass idiv RaysLinesPerGlass mul dup 0 eq
{pop dup 1 {
RaysLinesPerGlass 3 mod 0 eq {RaysLinesPerGlass 2 mul 3 idiv 2 copy ge {exch pop exit} {pop} ifelse} if
2 1 6 {/i exch def
RaysLinesPerGlass i mod 0 eq {RaysLinesPerGlass i idiv 2 copy ge {exch pop exit} {pop} ifelse} if
} for % i
} repeat} if % ... 0 eq
} {65535} ifelse % Rays
} def % Needlessly complicated for this use, but reusably general-purpose
/Rays true def
/RaysLinesToPaperEdge true def
/RaysLinesPerGlass 56 defHere jdaw1 wrote:+CircletextsTryToResonateWithRays


/PeopleData [
[
(JdV)
[
{TypeOfPagesBeingRendered dup dup /PlaceName eq exch /VoteRecorder eq or exch /DecantingNotes eq or {/JDAW-CFS CurrentFontSize def CurrentFontName JDAW-CFS 3 div selectfont 0 JDAW-CFS 0.25 mul rmoveto} if}
(H.E. Dr )
{TypeOfPagesBeingRendered dup dup /PlaceName eq exch /VoteRecorder eq or exch /DecantingNotes eq or {CurrentFontName JDAW-CFS selectfont 0 JDAW-CFS -0.25 mul rmoveto} if}
{TypeOfPagesBeingRendered /VoteRecorder eq {[(J) {-0.09 Kern} (.)]} {[(J) {-0.03 Kern} (o) /atilde (o)]} ifelse}
( de V) {-0.15 Kern} (allera)
]
]
[
(TEB)
[
(Lord Boswell)
{TypeOfPagesBeingRendered dup dup /PlaceName eq exch /VoteRecorder eq or exch /DecantingNotes eq or not {( of Aynho)} if}
]
]
[ (CM) (Charles M.) ] % Charles Metcalfe
[ (AWE) (Alex E.) ] % Ambassador's Guest, Alex W. Ellis
[
(RB)
[(Roger B.) {TypeOfPagesBeingRendered /PlaceName ne {(, Esq)} if}]
] % Ambassador's Guest, Lord Roger Bramble, the Deputy Lieutenant of Greater London ?
[ (RLC) (Ray C.) ]
[ (THRA) [(T) {-0.08 Kern} (om A.)] ]
[ (DRT) [(Derek T) {-0.09 Kern} (.)] ]
[ (WS) [(W) {-0.12 Kern} (olfgang S.)] ]
[ (BMHR) (Ben R.) ]
[ [(JDA) {-0.06 Kern} (W)] [(J) {-0.03 Kern} (ulian W) {-0.12 Kern} (.)] ]
[ [(RA) {-0.06 Kern} (YC)] (Rob C.) ]
[ (OJMQ) [(Oscar Q) {-0.03 Kern} (.)] ] % -0.105
[ (ARK) (Alex K.) ]
[ (CRS) (Carl S.) ]
[ (PW) [(Phil W) {-0.12 Kern} (.)] ]
[ (GW) [(Giles W) {-0.12 Kern} (.)] ] % Giles Wigoder, no middle initial known, right-handed, no special dietary requirements other than an aversion to Pot Noodle
[
(GRJ) % The Right Reverend Graham R James (Bishop of Norwich)
[
{TypeOfPagesBeingRendered dup dup /PlaceName eq exch /VoteRecorder eq or exch /DecantingNotes eq or {/JDAW-CFS CurrentFontSize def CurrentFontName JDAW-CFS 3 div selectfont 0 JDAW-CFS 0.25 mul rmoveto} if}
{TypeOfPagesBeingRendered /TastingNotes eq {(The Right Reverend )} {(T) {-0.09 Kern} (.R.R. )} ifelse}
{TypeOfPagesBeingRendered dup dup /PlaceName eq exch /VoteRecorder eq or exch /DecantingNotes eq or {CurrentFontName JDAW-CFS selectfont 0 JDAW-CFS -0.25 mul rmoveto} if}
{TypeOfPagesBeingRendered /VoteRecorder eq {(G.)} {(Graham)} ifelse}
( James)
{TypeOfPagesBeingRendered /TastingNotes eq {(, the 71) {SuperscriptOn} (st) {SuperscriptOff} ( Bishop of Norwich)} if}
]
]
[ (LB-S) (Lorenzo B.-S.) ] % Lorenzo Bakewell-Stone
[ (SF) [(Steve F) {-0.12 Kern} (.)] ] % Steve Filbey
[ (QA) (Quentin A.) ] % Quentin Archer
[ (RC) [/quoteleft (Oz) /quoteright ( C.)] ] % Oz Clarke
[ () () ] % Industry guest
[ () () ] % Industry guest
] def
/PortData [
% YYYY City Abbreviation Type Subtitle shipper Circlearray shipper
[ (1948) (London) (Mz) () (Martinez) dup ]
[ (1952) (Helsinki) (Ni) (Colheita) (Niepoort) dup ]
[ (1956) (Melbourne) (Ni) (Experimental) (Niepoort) dup ]
[ (1960) (Rome) (Cr) () (Croft) dup ]
[ (1964) [(T) {-0.06 Kern} (okyo)] (GM) () (Malvedos) (Graham Malvedos) ]
[ (1968) (Mexico City) (TV) () (Guimaraens) (Fonseca Guimaraens) ]
[ (1972) (Munich) (OBV) () (Offley Boa Vista) dup ]
[ (1976) (Montreal) (RP) () [(V) {-0.06 Kern} (argellas)] [(T) {-0.08 Kern} (aylor Quinta de ) 4 index] ]
[ (1980) (Moscow) (D) () (Dow) dup ]
[ (1984) (Los Angeles) (WC) () (Cavadinha) [(W) {-0.09 Kern} (arre Quinta da Cavadinha)] ]
[ (1988) (Seoul) (Rs) () (de la Rosa) [(Quinta ) 2 index] ]
[ (1992) (Barcelona) (T) () (Burmester) dup ]
[ (1996) (Atlanta) (V) () (Vesuvio) [(Quinta do V) {-0.15 Kern} (esuvio)] ]
[ (2000) (Sydney) (C) () (Delaforce) dup ]
[ (2004) (Athens) (Cs) () (Cockburn Canais) (Cockburn Quinta dos Canais) ]
[ (2008) (Beijing) (Qv) () (Quevedo) [1 index ( Quinta Vale D) /quoteright {-0.12 Kern} (Agodinho)] ]
] def
/TitlesTastingNotes [ PortData {0 get} forall ] def
/Titles [ TitlesTastingNotes {2 2 getinterval} forall ] def
/Overtitles [ PortData {[exch dup 4 get exch 3 get dup length 0 gt {( ) exch} {pop} ifelse]} forall ] def
/Circlearrays [ PortData {[ exch dup 5 get exch dup 3 get dup length 0 eq {pop} {exch} ifelse 0 get ]} forall ] def
/FillTexts [ PortData {1 get} forall ] def
/Belowtitles [ Titles length {()} repeat ] def
/SubtitlesTastingNotes Overtitles def
/Names [ PeopleData {1 get} forall ] def
/PaperType /A3 def % /A4 /A3 /B4 /USL /USLegal /USL2 [SmallerPts LargerPts]
/Orientation /Landscape def % /Landscape /Portrait
/HeaderLeftText [(The P) {-0.04 Kern} (ortuguese Embassy, London, W) {-0.07 Kern} (ednesday 25) {SuperscriptOn} (th) {SuperscriptOff} ( July 2012)] def
/HeaderCenterText [(P) {-0.04 Kern} (ort from the Y) {-0.12 Kern} (ears of Summer Olympics)] def
/ExternalLinks [
(http://www.theportforum.com/viewtopic.php?t=4567&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20120725_olympic.pdf) (Latest version this placemat)
] def
/PlaceNamesNumCopies 1 def
/PrePourNumCopies 2 def
/CorkDisplay true def
/CorkDisplayNumCopies 2 def
/TitlesFont /Baskerville-SemiBold def % /Optima-Bold
/OvertitlesFont /LiberateBold def % /LiberateNormal /LiberateBold /LiberateExtendedNormal /Harrington /LucyNormal
/GlassesOnSheets [
[ 0 1 Titles length 1 sub {} for ]
] def % /GlassesOnSheets
/GlassesOnTastingNotePages [
[8 12 0 4] {[ exch dup 3 add 1 exch {} for ]} forall
] def % For no tasting note pages at all use /GlassesOnTastingNotePages [] def
/GlassesClusteredOnVoteRecorders [
[ [2 3 0 1] {GlassesOnTastingNotePages exch get} forall ]
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/VoteRecorderTopTexts [ % Must be same length as GlassesClusteredOnVoteRecorders, each sub-array containing some number of TopTexts
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ GlassesClusteredOnVoteRecorders length {false} repeat ] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderOrientation /Landscape def
/GlassesClusteredOnCorkDisplay [ [ GlassesOnTastingNotePages aload pop 4 2 roll ] ] def
/PermittedPackingStyles [ [
0 1 7 {[ exch dup 2 mod ]} for
0 1 7 {[ exch dup 2 mod 2.2 add ]} for
] ] def
/FlightSeparations true def
/FlightSeparationLines
[
[
[
[/Left 8
{
/JDAW-Rs
GlassPositions SheetNum get 1 get aload pop
GlassPositions SheetNum get 8 get aload pop
3 -1 roll sub dup mul 3 1 roll sub dup mul add sqrt Radii SheetNum get div 2 div
def
JDAW-Rs neg
}
]
[1 8] [1 10] [3 10] [3 12] [5 12] [5 14] [7 14]
[/Right 7 {JDAW-Rs}]
]
] % SheetNum = 0
] def % /FlightSeparationLines
/ColourSchemeTitles /Black def % /MidGrey /Black
/ColourSchemeOvertitles /Black def % /MidGrey /Black
/FillTitles true def
/FillOvertitles false def
/FillTextPlacename {PeopleData NameNum get 0 get} def
/NamesFontSizeMin 15 def
/NamesFontSizeMax NamesFontSizeMin def
/VerticalMiddlingStringTitles (N) def % Benchmark characters
/FillTextPrintQuickerDistillSlower true def/FlightSeparationLines
[
[
[
[/Left 8 {1 8 HalfDistanceBetweenCentresProportionRadius neg}]
[1 8] [1 10] [3 10] [3 12] [5 12] [5 14] [7 14]
[/Right 7 {7 14 HalfDistanceBetweenCentresProportionRadius}]
]
] % SheetNum = 0
] def % /FlightSeparationLines

/Circlearrays [
[ (AHB) ]
[ (DRT) ]
[ (PW) ]
[ [(JDA) {-0.08 Kern} (W)] (Older) ]
dup [ exch 0 get [(Y) {-0.09 Kern} (ounger)] ]
[ (+) ]
[ [(RA) {-0.08 Kern} (Y) {-0.03 Kern} (C)] (One) ]
dup [ exch 0 get [(T) {-0.09 Kern} (wo)] ]
dup [ exch 0 get (Three) ]
dup [ exch 0 get (Four) ]
] def
/Titles [ Circlearrays {0 get} forall ] def
/Belowtitles [ Circlearrays {dup length 1 le {pop ()} {1 get} ifelse} forall ] def
/Names [
Circlearrays {dup length 0 gt {0 get dup length 1 gt {counttomark 1 sub -1 1 {index 1 index eq {pop exit} if} for} {pop} ifelse} {pop} ifelse} forall
()
] def
/HeaderLeftText [(T) {-0.09 Kern} (uesday 4) {SuperscriptOn} (th) {SuperscriptOff} ( September 2012)] def
/HeaderCenterText [(Bung Hole Blinder)] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=6201&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20120904.pdf) (Latest version this placemat)
] def
/TitlesFont /IkariusADFStd-Bold def
/FontSizesRatioTitlesMin 999 def
/ColourSchemeTitles /MidGrey def % /MidGrey /Black
/ExclusionAnnulusProportionInnerRadiusTitlesAboveBelow 0.025 def
/PermittedPackingStyles [ /RectangularDislocation {NG 5 eq {/None} {/PseudoHexagonal} ifelse} ] def % Put, in order of preference, any of /PseudoHexagonal /SquareGrid /RectangularDislocation /RectangularDislocationV /TwoRowsOrTwoColumns /GaiaElegant /Gaia /Irregular /IrregularMirror /IrregularPortrait /IrregularLandscape /IrregularMirrorPortrait /IrregularMirrorLandscape
/WaterCountTarget 12 def % intended number of tickable squares
/GlassesClusteredOnVoteRecorders [
{GlassesOnTastingNotePages} dup
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/VoteRecorderTopTexts [ % Must be same length as GlassesClusteredOnVoteRecorders, each sub-array containing some number of TopTexts
[ (What is it?) ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/ShapesInTitles true def
/ShapesToUse [/Star] def % At least one of: /Flower /Star
/ShapesStarsPointsAndStepsArray [ [7 2] dup [7 3] dup dup dup dup ] def % Less-polygonal more-pointy: [[3 1.318] [4 1.792] [5 2.278] [6 2.77] [7 3.265] [8 3.762] [9 4.259]]
/ShapesAverageSeparation {7 TypeOfPagesBeingRendered /PlaceName eq {PlaceNamesDetailsScalingFactor mul} if} def
/MarginL 12 def % Left
/MarginR {MarginL} def % Right
/MarginT 18 def % Top
/MarginB {MarginL} def % BottomHere jdaw1 wrote:Printed, though the margins were too small for the printer used.
It was a bug, which has been fixed.PhilW, who made the placemats, wrote:
- Code: Select all
% Warre's Logo
/warre_logo_source_width 168 def
/warre_logo_source_height 138 def
/warre_logo_source_bpp 8 def
%
/warre_logo
{
warre_logo_source_width warre_logo_source_height warre_logo_source_bpp % dimensions of source image
[ warre_logo_source_width 0 0 warre_logo_source_height 0 0 ] % coordinate transformation matrix
{<
%***binary data omitted***
>}
image
} def % /warre_logo
% Fonseca Logo
/fonseca_logo_source_width 222 def
/fonseca_logo_source_height 81 def
/fonseca_logo_source_bpp 8 def
%
/fonseca_logo
{
fonseca_logo_source_width fonseca_logo_source_height fonseca_logo_source_bpp % dimensions of source image
[ fonseca_logo_source_width 0 0 fonseca_logo_source_height 0 0 ] % coordinate transformation matrix
{<
%***binary data omitted***
>}
image
} def % /fonseca_logo
/warre_logo_dest_width 168 def
/warre_logo_dest_height 138 def
/warre_logo_below_header_space 5 def
/warre_logo_from_margin_space 9 def
/fonseca_logo_dest_width 172 def
/fonseca_logo_dest_height 70 def
/fonseca_logo_below_header_space 15 def
/fonseca_logo_from_margin_space 9 def
/PlaceFonsecaLogoTopLeft
{
MgnL fonseca_logo_from_margin_space add PageHeight MgnT sub fonseca_logo_below_header_space sub fonseca_logo_dest_height sub translate
fonseca_logo_dest_width fonseca_logo_dest_height scale
fonseca_logo
} def % /PlaceProducerLogoTopLeft
/PlaceWarreLogoTopRight
{
PageWidth MgnR sub warre_logo_dest_width sub warre_logo_from_margin_space sub PageHeight MgnT sub warre_logo_below_header_space sub warre_logo_dest_height sub translate
warre_logo_dest_width warre_logo_dest_height scale
warre_logo
} def % /PlaceProducerLogoTopRight
/PlaceProducerLogo
{
SheetNum 1 eq { PlaceFonsecaLogoTopLeft } { PlaceWarreLogoTopRight } ifelse
} def % /PlaceProducerLogo
/HeaderLeftText [(London, Monday 24) {SuperscriptOn} (th) {SuperscriptOff} ( September 2012)] def
/HeaderCenterText [(W){-0.09 Kern}(arre's vs Fonseca, double mini vertical)] def
/HeaderRightText [
(www) {-0.092 Kern} (.) {-0.092 Kern} (ThePortForum.com, )
(www) {-0.092 Kern} (.jdawiseman.com)
] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?f=3&t=5944) (Thread on ThePortForum.com)
(http://www.hallarn.com/placemats/120924_WarreFonseca.pdf) (Placemat creation software)
] def % /ExternalLinks
/Circlearrays [
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1955) ]
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1960) ]
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1963) ]
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1966) ]
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1970) ]
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1977) ]
[ [(W) {-0.09 Kern} (arre) /quoteright (s)] (1985) ]
[ (Fonseca) (1955) ]
[ (Fonseca) (1960) ]
[ (Fonseca) (1963) ]
[ (Fonseca) (1966) ]
[ (Fonseca) (1970) ]
[ (Fonseca) (1977) ]
[ (Fonseca) (1985) ]
] def
/Titles [
(W55)
(W60)
(W63)
(W66)
(W70)
(W77)
(W85)
(F55)
(F60)
(F63)
(F66)
(F70)
(F77)
(F85)
] def
/Belowtitles [
()
()
()
()
()
()
()
()
()
()
()
()
()
()
] def
/Names [
[(PW)]
[(RAYC)]
[(JDA){-0.08 Kern}(W)]
[(DRT)]
[(WS)]
[(CS)]
[(CMAG)]
[(THRA)]
[(AHB)]
[(MW)]
[(BMHR)]
[(spare1)]
[(spare2)]
] def
/GlassesOnSheets [ [ 0 1 2 3 4 5 6 ] [ 7 8 9 10 11 12 13 ] ] def % /GlassesOnSheets
/MarginL 12 def % Left 11x 12
/MarginR 13 def % Right 12x 13
/MarginT 19 def % Top 18x 19
/MarginB 13 def % Bottom 12x 13
/PermittedPackingStyles [
[ [2 5] [0 4] [4 4] [2 3] [0 2] [4 2] [2 1] ] % enforce desired layout
] def
/ExclusionAnnulusProportionInnerRadiusTitlesAboveBelow 0.15 def
/PaintBackgroundCode
{
TypeOfPagesBeingRendered /Glasses eq
{
ThisPageDecanterLabels not
{
% Draw path lines between glasses
0 1 MakePathConnectingGlasses
1 2 MakePathConnectingGlasses
3 2 MakePathConnectingGlasses
3 4 MakePathConnectingGlasses
4 5 MakePathConnectingGlasses
6 5 MakePathConnectingGlasses
6 setlinewidth 0.5 setgray 0 setlinecap stroke
% Add Producer Logo to the page
PlaceProducerLogo
} if % ThisPageDecanterLabels not
} if % TypeOfPagesBeingRendered /Glasses eq
} def % /PaintBackgroundCode
/ThePortForumIconColour true def
/WaterCounts true def
/WaterCountsOverrideShowEverySheet false def
/WaterCountTarget 14 def
/WaterCountMaxRowLengths [ 7 5 3 ] def
Comments regarding use:
- Margins were selected as absolute minimum values for which output was not cropped by the printer, in this case a Dell 3110cn. This was in order to maximise glass sizes, which were expected to be borderline.
- Glass size did work on the night, but was defintely the borderline case (Radius=113.025) for glasses at TBH.
- Layout was enforced since with minor margin change the default layout was sometimes varying from that intended (rows of 1-2-1-2-1 wanted, default varied between this and 2-2-1-2).
- Logos were created from images converted to .eps in PaintShopPro, then manually adjusted for use here.
- Water count boxes appear on each glasses sheet (bug?).

/Graham (Graham) def
/MalvedosShort (Malvedos) def
/MalvedosLong (Graham Malvedos) def
/JDAW [(JDA) {-0.04 Kern} (W)] def
/RAYC [(RA) {-0.04 Kern} (YC)] def
/Circlearrays [
[ (1942) Graham [(MW & DRT & ) JDAW] ]
[ (1955) Graham (THRA) ]
[ (1960) Graham ]
[ (1963) Graham (WS) ]
[ (1965) MalvedosLong (AP) ]
[ (1966) Graham ]
[ (1968) MalvedosLong ]
[ (1970) Graham ]
[ (1975) Graham (PW) ]
[ (1976) MalvedosLong ]
[ (1977) Graham (Griff) ]
[ (1978) MalvedosLong ]
[ (1979) MalvedosLong (Magnum) (TS-C) ]
[ (1980) Graham (AHB) ]
[ (1983) Graham ]
[ (1984) MalvedosLong ]
[ (1985) [Graham] (Crusted) ]
[ (1985) Graham ]
[ (1987) MalvedosLong (JGH) ]
[ (1990) MalvedosLong JDAW ]
[ (1991) Graham (PW) ]
[ (1994) Graham ]
] def
/Titles [ Circlearrays {0 get dup length 2 sub 2 exch getinterval} forall ] def
/Belowtitles [ Circlearrays {1 get dup Graham ne {pop ()} if} forall ] def
/Abovetitles [ Circlearrays {dup length 3 ge {2 get dup dup (Crusted) ne exch (Magnum) ne and {pop ()} if} {pop ()} ifelse} forall ] def
/Overtitles [ Circlearrays {1 get dup Graham eq {pop ()} if} forall ] def
/TitlesTastingNotes [ Circlearrays {0 get} forall ] def
/SubtitlesTastingNotes [ 0 1 Circlearrays length 1 sub {dup Abovetitles exch get dup length 0 gt {exch pop} {pop Circlearrays exch get 1 get dup MalvedosLong eq {pop MalvedosShort} if} ifelse} for ] def
/Names [
(TS-C) (CJ) RAYC (THRA) (WS) (AP) (AHB) JDAW (DRT) (MW) (JGH) (PW)
(CRS)
(SCP)
()
()
] def
/PaperType /A3 def
/Orientation /Landscape def
/ThePortForumIconPlacement {SheetNum NamesIsLeftHander NameNum get {NumSheets 1 sub} {0} ifelse eq {/LowerNonWaterCount} {/None} ifelse} def % /None
/HeaderLocation [(The Bung Hole, Tuesday 13) {SuperscriptOn} (th) {SuperscriptOff} ( November 2012)] def
/HeaderTastingName (A Smattering of Graham and Malvedos) def
/HeaderLinks [
(www) {-0.092 Kern} (.) {-0.092 Kern} (ThePortForum.com, )
% (www) {-0.092 Kern} (.) {-0.12 Kern} (W) {-0.092 Kern} (orldOf) {+0.12 Kern} (Port.de, )
% (www.jacob-head.com/port,)
(www) {-0.092 Kern} (.jdawiseman.com)
] def
/HeaderRightText {TypeOfPagesBeingRendered /Glasses eq {SheetNum 1 eq} {true} ifelse {HeaderLinks} {()} ifelse} def
/HeaderLeftText {TypeOfPagesBeingRendered /Glasses eq {SheetNum 0 eq} {true} ifelse {HeaderLocation} {()} ifelse} def
/HeaderCenterText {TypeOfPagesBeingRendered /Glasses eq {SheetNum 0 eq} {true} ifelse {HeaderTastingName} {()} ifelse} def
/HeaderFooterCenterRelativeX {TypeOfPagesBeingRendered /Glasses eq {GlassPositions SheetNum get 6 get 0 get MgnL sub PageWidth MgnL MgnR add sub div} {0.5} ifelse} def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=6274&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20121113_graham.pdf) (Latest version this placemat)
(http://www.grahams-port.com/) (Graham\220s Port)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://www.streetmap.co.uk/map.srf?x=530848&y=181628&pc=WC1V+6DT) (London WC1V 6DT)
] def
/PrePourNumCopies 1 def
/DecantingNotesNumCopies 1 def
/CorkDisplay true def
/StickyLabelsNumCopies 1 def
/StickyLabelsTypes [0] def
/TitlesFont /Tahoma-Bold def
/OvertitlesFont /LiberateBold def
/CircletextFont /BookmanOldStyle def
/AbovetitlesFont OvertitlesFont def
/BelowtitlesFont OvertitlesFont def
/OvertitleMaxFontSizeProportionTitles 0.5 def
/FontSizesRatioTitlesMin 99 def
/FontSizesRatioAboveBelowOverMin 99 def
/GlassesOnSheets [
[
0 1 2 3
6 7 8
11 12 13 14
17 18 19
]
[
3 4 5
9 10
14 15 16
20 21
]
] def % /GlassesOnSheets
/GlassesOnTastingNotePages [
[ 0 Titles length 1 sub /e exch def /s exch def s 1 e {dup e lt e s sub 6 ge and {dup s sub e s sub 1 add dup 6 div ceiling cvi 3 -1 roll 3 copy mul exch idiv 4 1 roll 1 add mul exch idiv ne {][} if} if} for ]
] def
/PermittedPackingStyles [ {SheetNum 1 eq {[ [-1 3 3 3] [1 3 3 3] [3 3] [0 2 3 2] [2 2 3 2] [-1 1 3 1] [1 1 3 1] [3 1] [0 0 3 0] [2 0 3 0] ]} {/PseudoHexagonal} ifelse} ] def % Put, in order of preference, any of /PseudoHexagonal /SquareGrid /RectangularDislocation /RectangularDislocationV /TwoRowsOrTwoColumns /GaiaElegant /Gaia /Irregular /IrregularMirror /IrregularPortrait /IrregularLandscape /IrregularMirrorPortrait /IrregularMirrorLandscape
/WaterCountsOverrideShowEverySheet false def
/CircletextsMinCopies 4 def
/InlineTitles {Overtitles WithinTitles get length 0 gt} def
/InlineTitlesMaxNumberContours {Abovetitles WithinTitles get (Crusted) eq {1} {12} ifelse} def
/InlineAbovetitles false def
/InlineBelowtitles false def
/RowsMinNum 4 def
/RowsMaxNum 4 def
/MarginL 18 def % Left
/MarginT 27 def % TopThe author of the manual wrote:There can, rarely, be an additional complication. If a placemat is made from several A3 placemats, guillotined and overlapped …, then the same glass will appear on two sheets. But it should not have twice as many pre-pour sheets. This technicality is fixed with PrePourRemoveDuplicatesByWithinTitles, which, if true, removes duplicates, equivalence being determined by GlassesOnSheets having the same value of WithinTitles. The guillotine-and-overlap trick also messes with the order of the pre-pour sheets, sometimes fixable with PrePourSortByWithinTitles.

/NumberWords [
(One)
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wo)]
(Three)
[(F) {CurrentFontSize -0.09 mul 0 rmoveto} (our)]
(Five) (Six) (Seven) (Eight) (Nine)
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (en)]
(Eleven)
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (welve)]
(Thirteen)
[(F) {CurrentFontSize -0.09 mul 0 rmoveto} (ourteen)]
(Fifteen) (Sixteen) (Seventeen) (Eighteen) (Nineteen)
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty)]
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty-One)]
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty-T) {CurrentFontSize -0.09 mul 0 rmoveto} (wo)]
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty-Three)]
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty-F) {CurrentFontSize -0.09 mul 0 rmoveto} (our)]
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty-Five)]
[(T) {CurrentFontSize -0.09 mul 0 rmoveto} (wenty-Six)]
] def % /NumberWords
/Overtitles NumberWords 0 26 getinterval def
/Titles [ 1 1 Overtitles length {5 string cvs} for ] def
/Circlearrays [ 0 1 Overtitles length 1 sub {[ exch dup Overtitles exch get exch Titles exch get ]} for ] def
/Belowtitles [ Titles length {()} repeat ] def
/SubtitlesTastingNotes Overtitles def
/Names [
(Dirk)
[(T) {-0.04 Kern} (om)]
(Ray) (Alex) (Christopher) (Julian) (Jacob) (Axel) (Phil) (Rob)
[(Wolfgang)]
()
] def
/TastingNotesCirclesBehind true def
/HeaderLeftText [(The Bell, Thursday 13) {SuperscriptOn} (th) {SuperscriptOff} ( December 2012)] def
/HeaderCenterText [(The Even More Familiar Unknown Shipper and His Peculiar Friends)] def
/ExternalLinks [
(http://www.theportforum.com/viewtopic.php?t=5914&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2012/20121213_bell.pdf) (Latest version this placemat)
(http://www.thebellatwenden.co.uk/) (The Bell, Wendens Ambo, Saffron Walden)
(http://www.streetmap.co.uk/map.srf?x=551093&y=236398&pc=CB11+4JY) (Map, CB11 4JY)
] def
/NonDecanterLabelGlassesNumCopies 0 def
/StickyLabelsNumCopies {StickyLabelsTypeThis 0 eq {2} {1} ifelse} def
/TitlesFont /Tahoma-Bold def
/OvertitlesFont /Harrington def
/CircletextFont /Tahoma def
/HeaderFont /Tahoma def
/FontSizesRatioTitlesMin 99 def
/FontSizesRatioAboveBelowOverMin 99 def
/StickyLabelsOrientationAutomatic {[true false] StickyLabelsTypeThis get} def
/GlassesClusteredOnVoteRecorders [ {GlassesOnTastingNotePages} dup ] def
/VoteRecorderTopTexts [
[
(What is it?)
]
[
(Wine Of The Night)
[/quoteleft (Peculiar) /quoteright ( Of The Night)]
[/quoteleft (Unknown) /quoteright ( Of The Night)]
(Non-Port Of The Night)
]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/taylor [(T) {-0.03 Kern} (aylor)] def
/specialquintaShort [(Special Quinta)] def
/vargellasShort [(V) {-0.06 Kern} (argellas)] def
/terrafeitaShort [(T) {-0.06 Kern} (erra Feita)] def
/specialquintaLong [taylor aload pop ( ) specialquintaShort aload pop] def
/vargellasLong [(Quinta de ) vargellasShort aload pop] def
/terrafeitaLong [(Quinta de ) terrafeitaShort aload pop] def
/Circlearrays [
[ (1920) taylor ]
[ (1924) taylor ]
[ (1927) taylor ]
[ (1935) taylor ]
[ (1945) taylor ]
[ (1948) taylor ]
[ (1950) specialquintaLong ]
[ (1955) taylor ]
[ (1960) taylor ]
[ (1963) taylor ]
[ (1965) vargellasLong ]
[ (1966) taylor ]
[ (1970) taylor ]
[ (1970) vargellasLong ]
[ (1976) vargellasLong ]
[ (1977) taylor ]
[ (1980) taylor ]
[ (1983) taylor ]
[ (1985) taylor ]
[ (1986) terrafeitaLong ]
] def
/TitlesTastingNotes [ Circlearrays {0 get} forall ] def
/Titles [ TitlesTastingNotes {dup cvi 1912 gt {2 2 getinterval} if} forall ] def
/TitlesVoteRecorder TitlesTastingNotes def
/Belowtitles [ Circlearrays {1 get dup taylor ne {pop ()} if} forall ] def
/Overtitles [ Circlearrays {1 get
1 {
dup vargellasLong eq {pop vargellasShort exit} if
dup specialquintaLong eq {pop specialquintaShort exit} if
dup terrafeitaLong eq {pop terrafeitaShort exit} if
pop ()
} repeat
} forall ] def
/SubtitlesTastingNotes [ Circlearrays {1 get} forall ] def
/SubtitlesVoteRecorder [
0 1 Belowtitles length 1 sub
{1 {
dup Belowtitles exch get dup length 0 gt {exch pop exit} {pop} ifelse
dup Overtitles exch get dup length 0 gt {exch pop exit} {pop} ifelse
pop ()
} repeat} for
] def % /SubtitlesVoteRecorder
/SubtitlesDecantingNotes SubtitlesVoteRecorder def
/SubtitlesCorkDisplay SubtitlesTastingNotes def
/Names [
(DBFG) (DRT)
[(JDA) {-0.06 Kern} (W)] (THRA) [(RA) {-0.06 Kern} (YC)]
(MW) (AHB) (WS) (DB) (CMAG) (TF) (BMHR) (CS) (AP) ()
] def
/PaperType /A3 def % /A4 /A3 /B4 /USL /USLegal /USL2 [SmallerPts LargerPts]
/Orientation /Landscape def % /Landscape /Portrait
/TastingNotesCirclesBehind true def
/HeaderLeftText [(The Bung Hole WC1V 6DT, Friday 22) {SuperscriptOn} (nd) {SuperscriptOff} ( March 2013)] def
/HeaderCenterText {TypeOfPagesBeingRendered /Glasses eq {SheetNum 0 eq} {true} ifelse {[taylor (, and relatives)]} {()} ifelse} def
/HeaderRightText {TypeOfPagesBeingRendered /Glasses eq {SheetNum 1 eq} {true} ifelse {[
(www) {-0.092 Kern} (.taylor.pt, )
(www) {-0.092 Kern} (.) {-0.092 Kern} (ThePortForum.com, )
% (www) {-0.092 Kern} (.) {-0.12 Kern} (W) {-0.092 Kern} (orldOf) {+0.12 Kern} (Port.de, )
% (www.jacob-head.com/port,)
(www) {-0.092 Kern} (.jdawiseman.com)
]} {()} ifelse} def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=6731&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2013/20130322_taylor.pdf) (Latest version this placemat)
(http://www.taylor.pt/) (Taylor)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://www.streetmap.co.uk/map.srf?x=530848&y=181628&pc=WC1V+6DT) (London WC1V 6DT)
] def
/HeaderFooterCenterX {TypeOfPagesBeingRendered /Glasses eq {GlassPositions SheetNum get dup 6 get 0 get exch 2 get 0 get add 2 div} {0.5} ifelse} def
/PrePourNumCopies 1 def
/DecantingNotesNumCopies 1 def
/CorkDisplay true def
/StickyLabelsNumCopies 2 def
/StickyLabelsTypes [ 0 ] def
/TitlesFont /Tahoma-Bold def
/OvertitlesFont /LiberateBold def
/CircletextFont /BookmanOldStyle def
/BelowtitlesFont OvertitlesFont def
/ColourSchemeTitles /MidGrey def % /MidGrey /Black
/GlassesOnSheets [
[
0 1 2 3
5 6 7
10 11 12 13
15 16 17
]
[
3 4
8 9
13 14
18 19
]
] def % /GlassesOnSheets
/PermittedPackingStyles [ {SheetNum 0 eq {/PseudoHexagonal} {[ [0 3 3 3] [2 3 3 3] [1 2 3 2] [3 2] [0 1 3 1] [2 1 3 1] [1 0 3 0] [3 0] ]} ifelse} ] def
/WaterCountTarget 10 def % intended number of tickable squares
/WaterCountMaxRowLengths [ 4 3 2 1 ] def
/WaterCountsOverrideShowEverySheet false def
/WaterCountShowLeft [ true false ] def
/WaterCountShowRight [ false true ] def
/CircletextsMinCopies 6 def
/BelowtitleMaxFontSizeProportionTitles 0.75 def
/OvertitleMaxFontSizeProportionTitles 0.75 def
/FontSizesRatioTitlesMin 1.4 def
/FontSizesRatioAboveBelowOverMin 99 def
/ShapesInTitles {specialquintaLong Circlearrays WithinTitles get 1 get eq} def
/ShapesInOvertitles false def
/ShapesToUse [/Star] def % At least one of: /Flower /Star
/ShapesTitlesFill {1 setgray fill} def
/CrossHatchingTitles {taylor Circlearrays WithinTitles get 1 get eq} def
/CrossHatchingBelowtitles false def
/CrossHatchingOvertitles false def
/CrossHatchingCentreX {GlassPositions SheetNum get SheetNum 0 eq {0 get 0 get} {dup 0 get 0 get 4 mul exch 1 get 0 get -3 mul add} ifelse} def % /Name /Left /Center /Right
/InlineTitles {Circlearrays WithinTitles get 1 get dup vargellasLong eq exch terrafeitaLong eq or} def
/InlineTitlesMaxNumberContours {Circlearrays WithinTitles get 1 get vargellasLong eq {8} {2} ifelse} def
/MarginL 18 def % Left
/MarginB {TypeOfPagesBeingRendered dup /PrePour eq exch /VoteRecorder eq or {30} {MarginL} ifelse} def % Bottom

/Warre [(W) {-0.06 Kern} (arre)] def
/Taylor [(T) {-0.06 Kern} (aylor)] def
/Circlearrays [
[ (Dow) (1983) ]
[ (Dow) (1985) ]
[ (Graham) (1983) ]
[ (Graham) (1985) ]
[ Warre (1983) ]
[ Warre (1985) ]
[ Taylor (1983) ]
[ Taylor (1985) ]
[ (Fonseca) (1983) ]
[ (Fonseca) (1985) ]
] def
/Titles [
(D83) (D85)
(G83) (G85)
(W83) (W85)
(T83) (T85)
(F83) (F85)
] def
/Belowtitles [ Circlearrays length {()} repeat ] def
/Names [
(DJ)
(MDB) % DRT's +1, Daniel, right-handed
(DRT)
[(JDA) {-0.06 Kern} (W)]
(THRA) (PW) (AHB)
()
] def
/HeaderLeftText [(The Bung Hole, Tuesday 2) {SuperscriptOn} (nd) {SuperscriptOff} ( April 2013)] def
/HeaderCenterText [(1983 versus 1985)] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=6813&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2013/20130402_1983_1985.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://www.streetmap.co.uk/map.srf?x=530848&y=181628&pc=WC1V+6DT) (London WC1V 6DT)
(http://en.wikipedia.org/wiki/1983) (1983 at Wikipedia)
(http://en.wikipedia.org/wiki/1985) (1985 at Wikipedia)
] def
/DecanterLabelsNumCopies {SheetNum 1 eq {1} {0} ifelse} def
/CorkDisplay true def
/TitlesFont /BlueHighwayFreeCondensed def
/CircletextFont /Cochin-Bold def
/FontSizesRatioTitlesMin 1.1 def
/GlassesOnSheets [ 0 1 1 {[exch 2 Titles length 1 sub {} for]} for ] def
/GlassesOnTastingNotePages GlassesOnSheets def
/GlassesClusteredOnVoteRecorders [
GlassesOnTastingNotePages 0 1 getinterval
GlassesOnTastingNotePages 1 1 getinterval
GlassesOnTastingNotePages
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/VoteRecorderShowTotalRow [ false false false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderTopTexts [ % Must be same length as GlassesClusteredOnVoteRecorders, each sub-array containing some number of TopTexts
[ [/quoteright (83 Of The Night)] ]
[ [/quoteright (85 Of The Night)] ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/BackgroundTextsGlasses true def
/BackgroundTextsGlassesTexts [ (83) (85) ] def

/Names [
(OJMQ) % OJMQ = Oscar Quevedo
(AHB)
(CMAG)
[(DR) {+0.04 Kern} (T)]
[(JDA) {-0.12 Kern} (W)]
(BMHR)
[(ID) {+0.02 Kern} (J)] % Ian Johns
(WS)
(RMW) % Ronnie Roots
()
] def
/Circlearrays [
[ (Oscar Quevedo) ]
[ (Alex Bridgeman) ]
[ [(Christ) {+0.04 Kern} (opher Gee)] ]
[ [(Derek Turn) {-0.04 Kern} (bull)] ]
[ [(J) {-0.04 Kern} (ulian Wiseman)] ]
[ (Ben Read) ]
[ (Ian Johns) ]
[ [(W) {-0.08 Kern} (olfgang S) {-0.04 Kern} (t) {+0.04 Kern} (arz)] ]
[ [(Ronnie Root) {+0.04 Kern} (s)] ]
[ (+) ]
[ /dagger ]
[ /daggerdbl ]
] def
/Titles [
(OJMQ) % OJMQ = Oscar Quevedo
(AHB)
(CMAG)
[(DR) {+0.02 Kern} (T)]
[(JDA) {-0.02 Kern} (W)]
(BMHR)
(IDJ)
(WS)
(RMW) % Ronnie Roots
counttomark dup Circlearrays length exch sub Circlearrays 3 1 roll getinterval aload pop
] def
/Belowtitles [ Circlearrays length {()} repeat ] def
/TastingNotesCirclesBehind true def
/HeaderLeftText [(At The Bung Hole on the day of the funeral of Baroness Thatcher)] def
/HeaderCenterText [(Oscar in London)] def
/HeaderRightText [
(www) {-0.02 Kern} (.QuevedoPortWine.com, )
(www) {-0.02 Kern} (.) {-0.092 Kern} (ThePortForum.com, )
(www) {-0.02 Kern} (.) {-0.04 Kern} (jdawiseman.com)
] def
/ExternalLinks [ % Even-length array of strings: http://URL0, Descriptor0, http://URL1, Descriptor1, ...
(http://www.theportforum.com/viewtopic.php?t=6834&view=unread#unread) (Thread on ThePortForum.com)
(http://www.jdawiseman.com/2013/20130417_oscar.pdf) (Latest version this placemat)
(http://www.davy.co.uk/bunghole/) (The Bung Hole)
(http://www.streetmap.co.uk/map.srf?x=530848&y=181628&pc=WC1V+6DT) (WC1V 6DT, streetmap.co.uk)
(https://maps.google.co.uk/maps?z=20&t=k&layer=c&cbll=51.5182,-0.1154&cbp=11,15,,0,0) (WC1V 6DT, maps.google.co.uk)
(http://www.quevedoportwine.com/) (QuevedoPortWine.com)
(http://www.margaretthatcher.org/) (MargaretThatcher.org)
] def
/StickyLabelsNumCopies 1 def
/StickyLabelsTypes [0] def
/GlassesClusteredOnVoteRecorders [
{GlassesOnTastingNotePages} dup
] def % triple-depth array, same length as VoteRecorderTopTexts and VoteRecorderShowTotalRow
/VoteRecorderTopTexts [ % Must be same length as GlassesClusteredOnVoteRecorders, each sub-array containing some number of TopTexts
[ (What is it?) ]
[ (Wine Of The Night) (Q:) ]
] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderShowTotalRow [ true false ] def % Must be same length as GlassesClusteredOnVoteRecorders
/VoteRecorderCrossedBox {VoteRecorderShowTotalRow VoteRecorderSheetNum get NameNum WithinTitles eq NameNum Names length 1 sub lt and and} def % replace 'false' with code referring to WithinTitles and NameNum
/TitlesFont /AvenirNextCondensed-DemiBold def
/CircletextFont /Modern-Regular def % Very sloppy letter spacing: don't use again.
/FontSizesRatioTitlesMin 9999 def
/CrossHatchingTitles true def
/CrossHatchingCentreY /Name def % /Name /Bottom /Middle /TopUsers browsing this forum: No registered users and 0 guests