+pl 12.jcn4
+ - fixed dynamic f, magstep bug
+
pl 12.jcn3
- try at better dynamic font, copied from cmbxti10: mf/*
TOPLEVEL_PATCH_LEVEL = 12
# use to send patches, always empty for released version:
-TOPLEVEL_MY_PATCH_LEVEL = .jcn3
+TOPLEVEL_MY_PATCH_LEVEL = .jcn4
\documentclass{article} %UGH
\usepackage{a4}
-\oddsidemargin-1in\advance\oddsidemargin7.5mm
+\oddsidemargin0mm
\evensidemargin\oddsidemargin
\hsize210mm\vsize297mm % so what does a4 do, anyway?
-\textwidth\hsize\advance\textwidth-15mm
-\topmargin-1in\advance\topmargin10mm
-\textheight\vsize\advance\textheight-35mm
-\pagestyle{empty}
+\textwidth160mm
+\topmargin0mm%\advance\topmargin10mm
+\textheight\vsize\advance\textheight-50mm
+%\pagestyle{empty}
\begin{document}
\input lilyponddefs
\input titledefs
% A tex file to help view dynamic letters
%
-\font\dynfont=dyn10
+\font\dynfont=dyn10 scaled \magstep2
\def\thefont{\dynfont}
\def\mb#1{{\thefont\char#1}}
\newcount\n
\def\charn{\n=-1
- \loop\ifnum\n<4\advance\n by1
+ \loop\ifnum\n<5\advance\n by1
\doitem{\number\n}\endgraf\repeat}
\charn
-%from lilyponddefs
-% dynamics take extra kerning
-\def\dyn{\dynfont}
-\def\kdynf{\dynfont \char0\kern-.2ex}
-\def\kdynm{\dynfont \char1\kern-.18ex}
-\def\kdynp{\dynfont \char2\kern-.08ex}
-\def\kdyns{\dynfont \char3\kern-.22ex}
-\def\kdynz{\dynfont \char4\kern-.2ex}
-
-\def\dynp{\kdynp}
-\def\dynpp{\dynp\kdynp}
-\def\dynppp{\dynpp\kdynp}
-\def\dynmp{\kdynm\kdynp}
-\def\dynmf{\kdynm\kdynf}
-\def\dynf{\kdynf}
-\def\dynff{\dynf\kdynf}
-\def\dynfff{\dynff\kdynf}
-
-\def\dynfp{\kdynf\kern.35ex\kdynp}
-\def\dynsf{\kdyns\kdynf}
-\def\dynsfz{\dynsf\kern.3ex\kdynz}
+\input dyndefs
\hbox{\dynp}
\hbox{\dynpp}
% "s", "m", and "z". sometimes the "m" and "z" are a bit fatter than
% "s".
-slant:=.62; % tilt ratio $(\Delta x/\Delta y)$
+slant:=.68; % tilt ratio $(\Delta x/\Delta y)$
crisp#:=19/36pt#; % diameter of serif corners
tiny#:=19/36pt#; % diameter of rounded corners
fine#:=20/36pt#; % diameter of sharply rounded corners
thin_join#:=20/36pt#; % width of extrafine details
-stem#:=57/36pt#; % lowercase stem breadth
-curve#:=64/36pt#; % lowercase curve breadth
-flare#:=64/36pt#; % diameter of bulbs or breadth of terminals
+stem#:=72/36pt#; % lowercase stem breadth
+%curve#:=64/36pt#; % lowercase curve breadth
+flare#:=52/36pt#; % diameter of bulbs or breadth of terminals
-mode_setup; font_setup;
+% mode_setup; font_setup;
+mode_setup;
+font_setup;
+
+num=-1;
input ital-f;
+
slant:=.38; % tilt ratio $(\Delta x/\Delta y)$
-mode_setup; font_setup;
+stem#:=58/36pt#; % lowercase stem breadth
+font_setup;
+
+input ital-f;
+stem#:=54/36pt#; % lowercase stem breadth
+
+% mode_setup; font_setup;
+font_setup;
+
input ital-p;
slant:=.28; % tilt ratio $(\Delta x/\Delta y)$
thin_join#:=10/36pt#; % width of extrafine details
hair#:=20/36pt#; % lowercase hairline breadth
% stem#:=38/36pt#; % lowercase stem breadth
-% curve#:=43/36pt#; % lowercase curve breadth
+curve#:=43/36pt#; % lowercase curve breadth
flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
% ess#:=35/36pt#; % breadth in middle of lowercase s
-mode_setup; font_setup;
+% mode_setup; font_setup;
+font_setup;
input ital-m;
input ital-s;
% cmchar "Italic letter f";
% beginchar("f",max(1.5u#,stem#)+max(3.5u#,2flare#),asc_height#,desc_depth#);
\"Dynamic letter f";
-beginchar(0,max(1.5u#,stem#)+max(3.5u#,2flare#),asc_height#,desc_depth#);
+beginchar(incr num,max(1.5u#,stem#)+max(3.5u#,2flare#),asc_height#,desc_depth#);
italcorr asc_height#*slant+.75u#;
adjust_fit(if monospace:u#,u# else: 0,0 fi); pickup fine.nib;
numeric theta; z88=(.5w-.5u,h); z89=(.5w+.5u,-d); theta=angle(z88-z89);
pos7(vair,-90); pos8(hair,-180); pos9(flare,-180);
rt x1r=hround(w+.25u); lft x8r=hround-.35u; x2=.6[x1,x4]; x7=.6[x8,x5];
y9-.5flare=vround -.85d; y2-y0=y9-y7; top y2r=h+oo; bot y7r=-d-oo;
-y4=.25[x_height,h]; y5=.5[-d,y4];
+% y4=.25[x_height,h]; y5=.5[-d,y4];
+y4=x_height-.5bar; y5=y4;
z4=whatever[z88,z89]; z5=whatever[z88,z89];
x3=.8[x2+x4-x88,x88]; x6=.8[x7+x5-x89,x89]; y3=.8[y4,y2]; y6=.8[y5,y7];
bulb(2,1,0); bulb(7,8,9); % bulbs
% cmchar "Italic letter m";
% beginchar("m",15u#,x_height#,0);
\"Dynamic letter m";
-beginchar(1,15u#,x_height#,0);
+beginchar(incr num,15u#,x_height#,0);
italcorr 1/3x_height#*slant+.5hair#+.5u#;
adjust_fit(if monospace:-1.5u#,-2u# else: 0,0 fi); pickup fine.nib;
numeric shaved_stem; shaved_stem=mfudged.stem;
% cmchar "Italic letter p";
% beginchar("p",9u#,x_height#,desc_depth#);
\"Dynamic letter p";
-beginchar(2,9u#,x_height#,desc_depth#);
+beginchar(incr num,9u#,x_height#,desc_depth#);
italcorr .7x_height#*slant+.5curve#-u# if math_fitting:-.5u# fi;
adjust_fit(0,0); pickup fine.nib;
x0=0; x2-.5stem=hround(2.5u-.5stem); hook_in(0,1,2); % opening hook
% cmchar "Italic letter s";
% beginchar("s",5.25u#+max(1.75u#,flare#),x_height#,0);
\"Dynamic letter s";
-beginchar(3,5.25u#+max(1.75u#,flare#),x_height#,0);
+beginchar(incr num,5.25u#+max(1.75u#,flare#),x_height#,0);
italcorr x_height#*slant-.5u#;
adjust_fit(0,0); pickup fine.nib;
numeric theta; theta=90-angle(40u,h); slope:=-h/40u; % angle at middle
% cmchar "Italic letter z";
% beginchar("z",5.5u#+max(1.5u#,stem#),x_height#,0);
\"Dynamic letter z";
-beginchar(4,5.5u#+max(1.5u#,stem#),x_height#,0);
+beginchar(incr num,5.5u#+max(1.5u#,stem#),x_height#,0);
italcorr x_height#*slant+.5hair#;
adjust_fit(if monospace:.5u#,.5u# else: 0,0 fi); pickup fine.nib;
pos1(hair,0); pos2(stem,-90); pos3(vair,-90); pos4(hair,0);
--- /dev/null
+% dyndefs.tex
+%
+
+\def\dyn{\dynfont}
+\def\dynaf{\dynfont\char0}
+\def\dynnf{\dynfont\char1}
+\def\dynnf{\dynfont\char1}
+\def\dynp{\dynfont\char2}
+\def\dynm{\dynfont\char3}
+\def\dyns{\dynfont\char4}
+\def\dynz{\dynfont\char5}
+
+\def\kdynf{\dynnf}
+\def\kdynp{\dynp\kern-.1ex}
+
+\def\dynf{\dynaf}
+\def\dynpp{\kdynp\dynp}
+\def\dynppp{\kdynp\kdynp\dynp}
+\def\dynmp{\dynm\kern -.2ex\dynp}
+\def\dynmf{\dynfont\raise.08ex\hbox{\dynm}\kern-.3ex\dynnf}
+\def\dynff{\kdynf\dynnf}
+\def\dynfff{\kdynf\kdynf\dynnf}
+
+\def\dynfp{\kdynf\dynp}
+\def\dynsf{\dyns\kern-.3ex\dynnf}
+\def\dynsfz{\dynsf\dynz}
+
}
-\def\dyn{\dynfont}
-\def\kdynf{\dynfont \char0\kern-.2ex}
-\def\kdynm{\dynfont \char1\kern-.18ex}
-\def\kdynp{\dynfont \char2\kern-.08ex}
-\def\kdyns{\dynfont \char3\kern-.22ex}
-\def\kdynz{\dynfont \char4\kern-.2ex}
-
-\def\dynp{\kdynp}
-\def\dynpp{\dynp\kdynp}
-\def\dynppp{\dynpp\kdynp}
-\def\dynmp{\kdynm\kdynp}
-\def\dynmf{\kdynm\kdynf}
-\def\dynf{\kdynf}
-\def\dynff{\dynf\kdynf}
-\def\dynfff{\dynff\kdynf}
-
-\def\dynfp{\kdynf\kern.35ex\kdynp}
-\def\dynsf{\kdyns\kdynf}
-\def\dynsfz{\dynsf\kern.3ex\kdynz}
+\input dyndefs
\input taupindefs
\renewcommand{\@oddfoot}{\ifnum\thepage=1
{\hfil \LilyIdString
}\else{foo\hfil\the\pageno\hfil}\fi}}
+ \def\ps@empty{
+ \renewcommand{\@oddhead}{}%
+ \renewcommand{\@evenfoot}{}%
+ \renewcommand{\@evenhead}{}%
+ \renewcommand{\@oddfoot}{\ifnum\thepage=1
+ {\hfil \LilyIdString
+ }\else{foo\hfil\the\pageno\hfil}\fi}}
\fi