texlive[71123] Master: ruscap (29apr24)

commits+karl at tug.org commits+karl at tug.org
Mon Apr 29 22:27:51 CEST 2024


Revision: 71123
          https://tug.org/svn/texlive?view=revision&revision=71123
Author:   karl
Date:     2024-04-29 22:27:51 +0200 (Mon, 29 Apr 2024)
Log Message:
-----------
ruscap (29apr24)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/fonts/ruscap/
    trunk/Master/texmf-dist/doc/fonts/ruscap/LICENSE
    trunk/Master/texmf-dist/doc/fonts/ruscap/README.md
    trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.pdf
    trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.tex
    trunk/Master/texmf-dist/fonts/source/public/ruscap/
    trunk/Master/texmf-dist/fonts/source/public/ruscap/ruscap10.mf
    trunk/Master/texmf-dist/fonts/tfm/public/ruscap/
    trunk/Master/texmf-dist/fonts/tfm/public/ruscap/ruscap10.tfm
    trunk/Master/tlpkg/tlpsrc/ruscap.tlpsrc

Added: trunk/Master/texmf-dist/doc/fonts/ruscap/LICENSE
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/ruscap/LICENSE	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/fonts/ruscap/LICENSE	2024-04-29 20:27:51 UTC (rev 71123)
@@ -0,0 +1,93 @@
+Copyright (c) 2024, Victor Sannier, with Reserved Font Name ruscap.
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+https://openfontlicense.org
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.

Added: trunk/Master/texmf-dist/doc/fonts/ruscap/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/ruscap/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/fonts/ruscap/README.md	2024-04-29 20:27:51 UTC (rev 71123)
@@ -0,0 +1,39 @@
+This package contains the source for ruscap: a font for rustic capitals
+---an ancient Roman calligraphic script--- created with Metafont.
+
+The current version of ruscap is 1.0, released on 28 April 2024.
+
+# Characters included
+
+For the moment, only the letters of the Vergilius Vaticanus manuscript
+(i.e., Roman and Greek letters) are included.
+In particular, ruscap does not contain the Ramist letters J and U,
+indo-arabic numerals and punctuation marks.
+
+# Minimal Working Example
+
+```tex
+\documentclass{article}
+\font\ruscap=ruscap10 at 14pt
+
+\begin{document}
+	{\ruscap SALVETE OMNES}
+\end{document}
+```
+
+# Design
+
+For more information on the design of this font,
+please visit the following links:
+
+* <https://www.tug.org/TUGboat/tb44-2/tb137sannier-rustic.pdf>
+* <https://tug.org/tug2023/files/sa-12-sannier-rustic/sannier-rustic-slides.pdf>
+* <https://www.youtube.com/watch?v=A56GHVJGJo0>
+
+# License
+
+Copyright (c) 2024, Victor Sannier, with Reserved Font Name ruscap.
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is available with a FAQ at: https://openfontlicense.org
+


Property changes on: trunk/Master/texmf-dist/doc/fonts/ruscap/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.pdf	2024-04-29 17:34:15 UTC (rev 71122)
+++ trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.pdf	2024-04-29 20:27:51 UTC (rev 71123)

Property changes on: trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.tex
===================================================================
--- trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.tex	2024-04-29 20:27:51 UTC (rev 71123)
@@ -0,0 +1,25 @@
+\documentclass{article}
+\usepackage[dvipsnames]{xcolor}
+
+\font\ruscap=ruscap10 at 14pt
+
+\begin{document}
+\pagestyle{empty}
+\ruscap
+\setlength\baselineskip{1.5ex}
+\setlength\lineskiplimit{-\maxdimen}
+
+\noindent
+\textcolor{Sepia}{QVO VSQVE TANDEM} ABVTERE, CATILINA, PATIENTIA NOSTRA?
+QVAM DIV ETIAM FVROR ISTE TVVS NOS ELVDET?
+QVEM AD FINEM SESE EFFRENATA IACTABIT AVDACIA?
+NIHIL NE TE NOCTVRNVM PRAESIDIVM PALATI, NIHIL VRBIS VIGILIAE,
+NIHIL TIMOR POPVLI, NIHIL CONCVRSVS BONORVM OMNIVM,
+NIHIL HIC MVNITISSIMVS HABENDI SENATVS LOCVS,
+NIHIL HORVM ORA VOLTVSQVE MOVERVNT?
+PATERE TVA CONSILIA NON SENTIS,
+CONSTRICTAM IAM HORVM OMNIVM SCIENTIA TENERI CONIVRATIONEM TVAM NON VIDES?
+QVID PROXIMA, QVID SVPERIORE NOCTE EGERIS, VBI FVERIS, QVOS CONVOCAVERIS,
+QVID CONSILII CEPERIS, QVEM NOSTRVM IGNORARE ARBITRARIS?
+\end{document}
+


Property changes on: trunk/Master/texmf-dist/doc/fonts/ruscap/quo-usque-tandem.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/source/public/ruscap/ruscap10.mf
===================================================================
--- trunk/Master/texmf-dist/fonts/source/public/ruscap/ruscap10.mf	                        (rev 0)
+++ trunk/Master/texmf-dist/fonts/source/public/ruscap/ruscap10.mf	2024-04-29 20:27:51 UTC (rev 71123)
@@ -0,0 +1,386 @@
+% ruscap10.mf
+% Version 1.0
+% Copyright (c) 2024, Victor Sannier with Reserved Font Name ruscap.
+% This Font Software is licensed under the SIL Open Font License, Version 1.1.
+
+font_size 10pt#;
+font_quad 13pt#;
+
+u# := 10/12 pt#; % unit
+s# := 2/3 u#; % sidebearing
+o# := 1/4 u#; % overshoot
+
+% Heights
+cap_height# := 9 u#;
+asc_height# := 11 u#;
+desc_height# := 1 u#;
+crossbar_height# := 5 u#;
+
+diag_angle := 90 + 35;
+spur_width# := 1/2 u#;
+spur_angle := 35;
+
+% Pen
+thick# := 5/4 u#;
+thin# := 1/3 u#;
+pen_angle := 65;
+
+% Serif
+serif_width# := 5/2 u#;
+serif_angle := 90 / 6;
+
+mode_setup;
+
+o_width# := 6u#;
+e# := 1/3 u#;
+
+define_pixels(u, s);
+define_whole_pixels(serif_width, spur_width, o_width);
+define_whole_vertical_pixels(cap_height, asc_height, desc_height);
+define_blacker_pixels(thick, thin);
+define_good_y_pixels(crossbar_height);
+define_corrected_pixels(o, e);
+
+pickup pensquare xscaled thick yscaled thin rotated pen_angle;
+rustic_pen := savepen;
+
+font_slant 0;
+font_normal_space 3/4 o_width#;
+font_normal_stretch 1/3 o_width#;
+font_normal_shrink 1/2 o_width#;
+font_x_height cap_height#;
+
+% Macros
+
+def draw_serif(suffix i, j)(expr width) =
+	rt x.j - lft x.i = width; y.i = y.j;
+	draw z.i{dir serif_angle} .. {dir serif_angle}z.j;
+enddef;
+
+def draw_diag_stroke(suffix i, j)(expr angle) =
+	z.i - z.i.l = z.j.r - z.j = spur_width * dir spur_angle;
+ 	z.j - z.i = whatever * (dir angle);
+	draw z.i.l .. z.i .. tension 3 .. z.j .. z.j.r;
+enddef;
+
+def draw_I(suffix i, j, k, l)(expr sw) =
+	x.i = x.j;  % vertical stem
+	top y.i = h + o; bot y.j = 0;
+	z.i - z.i.l
+	  = spur_width * dir spur_angle;
+
+	% Serif
+	rt (2 x.j - x.k) - lft x.k = serif_width;
+	y.j = y.k;
+	draw_serif(k, l)(sw);
+
+	draw z.i.l .. z.i .. tension 5 .. z.j;
+enddef;
+
+def draw_P(suffix i, j, k, l, m)(expr w) =
+	lft x.k = s;
+	draw_I(i, j, k, l)(serif_width);
+	rt x.m = w - s;
+	y.m = crossbar_height + 1/2 (cap_height - crossbar_height);
+	draw z.i{right} .. z.m .. {left}(x.i + e, crossbar_height);
+enddef;
+
+% Characters
+
+beginchar("A", 8u# + 2u#, cap_height#, 0);
+	"Rustic A";
+	pickup rustic_pen;
+
+	top y1 = h + o; bot y2 = -o; rt x2.r = w - s;
+	draw_diag_stroke(1, 2)(diag_angle);
+
+	lft x5 = s; bot y5 = 0;
+	z3 = 1/5 [z1, z2];
+	z4 = 1/2 [z5, z6];
+        draw_serif(5, 6)(serif_width);
+	draw z3 .. z4;
+
+	labels(range 1 thru 6);
+	labels(1.l, 2.r);
+endchar;
+
+beginchar("B", 5u# + 2s#, cap_height#, 0);
+	"Rustic B";
+	pickup rustic_pen;
+	draw_P(1, 2, 3, 4, 5)(5u);
+	rt x6 = w - s; y6 = crossbar_height / 2;
+	draw (x1, crossbar_height){right} .. z6 .. {left}z4;
+	labels(range 1 thru 6);
+endchar;
+ 
+beginchar("C", 5u# + 2s#, cap_height#, 0);
+	"Rustic C";
+	pickup rustic_pen;
+	rt x1 = w - s; y1 = (crossbar_height + cap_height) / 2;
+	x2 = w / 2; top y2 = h + o;
+	lft x3 = s; y3 = cap_height - crossbar_height;
+	x4 = w / 2; bot y4 = 0;
+	rt x5 = w - s; bot y5 = 0;
+	draw z1 .. z2 .. z3.. z4 .. {right}z5;
+	labels(range 1 thru 5);
+endchar;
+
+beginchar("D", 5u# + 2s#, cap_height#, 0);
+	"Rustic D";
+	pickup rustic_pen;
+	lft x3 = s;
+	draw_I(1, 2, 3, 4)(serif_width);
+	rt x5 = w - s; y5 = crossbar_height;
+	draw z1{right} .. z5 .. {left}z4;
+	labels(range 1 thru 5);
+endchar;
+
+def draw_EF =
+	pickup rustic_pen;
+	% Top stroke
+	lft x1 = s; top y1 = h;
+	rt x2 = w - s; top y2 = h;
+	draw z1{dir serif_angle} .. {dir serif_angle}z2;
+	% Down stroke
+	rt (2 x5 - x1) - lft x1 = serif_width;
+	x6 = x5; top y5 = h; bot y6 = 0;
+	draw z5 .. z6;
+	% Bottom stroke
+	lft x3 = s; bot y3 = 0; bot y4 = 0;
+	draw z3{dir serif_angle} .. {dir serif_angle}z4;
+	% Middle stroke
+	z7 = (x5, crossbar_height); z8 = (x2, crossbar_height);
+	draw z7 .. z8;
+	labels(range 1 thru 8);
+enddef;
+
+beginchar("E", 3.5u# + 2s#, cap_height#, 0);
+	"Rustic E";
+	x4 = x2;
+	draw_EF;
+endchar;
+
+beginchar("F", 4u# + 2s#, asc_height#, 0);
+	"Rustic F";
+	x6 = (x3 + x4) / 2;
+	draw_EF;
+endchar;
+
+beginchar("G", 5u# + 2s#, cap_height#, 0);
+	"Rustic G";
+	pickup rustic_pen;
+	rt x1 = w - s; y1 = (crossbar_height + cap_height) / 2;
+	x2 = w / 2; top y2 = h + o;
+	lft x3 = s; y3 = cap_height - crossbar_height;
+	x4 = w / 2; bot y4 = -o;
+	rt x5 = w - s; y5 = cap_height - crossbar_height;
+	draw z1 .. z2 .. z3.. z4 .. z5;
+	labels(range 1 thru 5);
+endchar;
+
+beginchar("H", 7u# + 2s#, cap_height#, 0);
+	"Rustic H";
+	pickup rustic_pen;
+	lft x9 = s; y9 = crossbar_height;
+	x1 - x9 = u;
+	draw_I(1, 2, 3, 4)(serif_width);
+	rt x8 = w - s;
+	draw_I(5, 6, 7, 8)(serif_width);
+	draw z9 .. (x5, crossbar_height);
+	labels(range 1 thru 9);
+endchar;
+
+beginchar("I", serif_width# + 2s#, cap_height#, 0);
+	"Rustic I";
+	pickup rustic_pen;
+	lft x3 = s;
+	draw_I(1, 2, 3, 4)(serif_width);
+	labels(range 1 thru 4);
+endchar;
+
+beginchar("K", 7u# + 2s#, cap_height#, 0);
+	"Rustic K";
+	pickup rustic_pen;
+	lft x3 = s;
+	draw_I(1, 2, 3, 4)(serif_width);
+	x5 = x6 - 2u; top y5 = h + o;
+	rt x6 = w - s; bot y6 = 0;
+	draw (x1 + e, crossbar_height) .. {dir pen_angle}z5;
+	draw (x1 + e, crossbar_height) .. tension 2 .. z6 - (u, 0) .. z6;
+	labels(range 1 thru 6);
+endchar;
+ 
+beginchar("L", 5u# + 2s#, asc_height#, 0);
+	"Rustic L";
+	pickup rustic_pen;
+	lft x3 = s;
+	draw_I(1, 2, 3, 4)(w - 2s);
+	labels(range 1 thru 4);
+	labels(1.l);
+endchar;
+
+beginchar("M", 11u# + 2s#, cap_height#, 0);
+	"Rustic M";
+	pickup rustic_pen;
+	top y1 = h + o; bot y2 = -o;
+	x1 = x5 + u;
+	1/2 (z5.l + z5.r) = z5; lft x5 = s + serif_width/2;
+	a := (diag_angle - 90) * 3/4 + 90;
+	draw_diag_stroke(1, 2)(a);
+	top y3 = h + o; bot y4 = 0; rt x4.r = w - s;
+	a := (diag_angle - 90) / 3 + 90;
+	draw_diag_stroke(3, 4)(a);
+
+	% Left stem
+	bot y5 = 0;
+	draw z1 .. z5;
+	draw_serif(5.l, 5.r, serif_width);
+	% Right stem
+	draw z3 .. z2.r;
+
+	labels(range 1 thru 5);
+endchar;
+
+beginchar("N", 8u# + 2s#, cap_height#, 0);
+	"Rustic N";
+	pickup rustic_pen;
+
+	% Diagonal stroke
+	x1 + x2 = w; top y1 = h + o; bot y2 = 0;
+	draw_diag_stroke(1, 2)(diag_angle);
+
+	% Left stem
+	bot y3 = 0; lft x3 = s + serif_width/2 - u/3;
+	draw z1 .. z3;
+	1/2 (z3.l + z3.r) = z3;
+	draw_serif(3.l, 3.r, serif_width);
+
+	% Right stem
+	x4 = x5 = x2.r;  % vertical stem
+	top y4 = h + o; bot y5 = 0;
+	z4 - z4.l = spur_width * dir spur_angle;
+	draw z4.l .. z4 -- z5;
+
+	labels(range 1 thru 5);
+endchar;
+
+beginchar("O", o_width# + 2s#, cap_height#, 0);
+	"Rustic O";
+	pickup rustic_pen;
+	lft x2 = s; rt x4 = w - s; x1 = x3 = w/2;
+	top y1 = h + o; bot y3 = -o; y2 = y4 = crossbar_height;
+	draw z1 .. z2 .. z3 .. z4 .. cycle;
+	labels(range 1 thru 4);
+endchar;
+
+beginchar("P", 4u# + 2s#, cap_height#, 0);
+	"Rustic P";
+	pickup rustic_pen;
+	draw_P(1, 2, 3, 4, 5)(w);
+	labels(range 1 thru 5);
+endchar;
+ 
+beginchar("Q", 6u# + 2s#, cap_height#, u#);
+	"Rustic Q";
+	pickup rustic_pen;
+	lft x2 = s; rt x4 = o_width + s; x1 = x3 = (o_width + 2s)/2;
+	top y1 = h + o; bot y3 = -o; y2 = y4 = crossbar_height;
+	rt x5 = w - s; bot y5 = -d;
+	draw z3{curl 3} .. z4 .. z1 .. z2 .. z3 .. {down}z5;
+	labels(range 1 thru 5);
+endchar;
+
+beginchar("R", 7u# + 2s#, cap_height#, 0);
+	"Rustic P";
+	pickup rustic_pen;
+	draw_P(1, 2, 3, 4, 5)(5u);
+	rt x6 = w - s; bot y6 = 0;
+	draw (x1 + u, crossbar_height) .. tension 2 .. z6 - (u, 0) .. z6;
+	labels(range 1 thru 6);
+endchar;
+
+beginchar("S", 4u# + 2s#, cap_height#, 0);
+	"Rustic S";
+	pickup rustic_pen;
+	lft x2 = s; x2 = x4;
+	rt x1 = w - s; x1 = x3;
+	top y1 = h - 3/2 u; bot y4 = u/2;
+	h - y2 = y3; z2 - z3 = whatever * dir diag_angle;
+	draw z1{curl 2} .. z2 .. z3 .. {curl 1}z4;
+	labels(range 1 thru 4);
+endchar;
+
+beginchar("T", 6u# + 2s#, cap_height#, 0);
+	"Rustic T";
+	pickup rustic_pen;
+	x1 = w - x2; top y1 = h;
+	draw_serif(1, 2)(w - 2s);
+	x3 = w - x4; bot y3 = 0;
+	draw_serif(3, 4)(serif_width);
+	draw 1/2 [z1, z2] .. 1/2 [z3, z4];
+	labels(range 1 thru 4);
+endchar;
+
+beginchar("V", 6u# + 2s#, cap_height#, 1/2 u#);
+	"Rustic V";
+	pickup rustic_pen;
+	lft x1 = s + spur_width; rt x3 = rt x4 = rt x5 = w - s - u/2;
+	top y1 = h + o; bot y3 = u; top y4 = h + o; bot y5 = -d;
+	bot y2 = 0; lft x2 = 5/2 u + s;
+	draw z1{down} .. z2 .. z3{right};
+	z1 - z1.l = spur_width * dir spur_angle; draw z1.l .. z1; % Spur
+	draw z4{dir -85} .. z5;
+	labels(range 1 thru 5);
+endchar;
+
+beginchar("X", 7u# + 2s#, cap_height#, 0);
+	"Rustic X";
+	pickup rustic_pen;
+	top y1 = h + o; bot y2 = 0; rt x2.r = w - s;
+	draw_diag_stroke(1, 2)(diag_angle);
+	draw (x1, y2) .. (x2, y1);
+	labels(range 1 thru 4);
+endchar;
+
+beginchar("Y", 8u# + 2s#, cap_height#, 0);
+	"Rustic Y";
+	pickup rustic_pen;
+	x2 = x3 = w/2;
+	lft x1 = s; rt x4 = w - s;
+	bot y3 = 0;
+	top y1 = top y4 = h + o; y2 = crossbar_height;
+	draw z1 .. z2 .. tension 2 .. z3;
+	draw z4{left} .. z2;
+	% Serif
+	1/2 (z3.l + z3.r) = z3;
+	draw_serif(3.l, 3.r, serif_width);
+	labels(range 1 thru 4);
+endchar;
+
+beginchar("Z", 6u# + 2s#, cap_height#, 0);
+	"Rustic Z";
+	pickup rustic_pen;
+	lft x1 = s; top y1 = h;
+	draw_serif(1, 2)(w - 2s);
+	lft x3 = s; bot y3 = 0;
+	draw_serif(3, 4)(w - 2s);
+	draw z2 .. z3;
+	labels(range 1 thru 4);
+endchar;
+
+ligtable "A": "T" kern -1.5u#, "Y" kern -1.5u#;
+ligtable "B": "C" kern .5u#, "M" kern -u#;
+ligtable "F": "A" kern -.5u#, "M" kern -u#, "T" kern -u#;
+ligtable "G": "C" kern .5u#, "Q" kern .5u#, "G" kern .5u#, "O" kern .5u#;
+ligtable "K": "C" kern -u#, "G" kern -u#, "T" kern -u#, "Y" kern -u#;
+ligtable "L": "T" kern -u#, "Y" kern -2u#;
+ligtable "M": "T" kern -u#;
+ligtable "O": "M" kern -.5u#;
+ligtable "P": "A" kern -.5u#, "M" kern -.5u#;
+ligtable "R": "C" kern -.5u#, "O" kern -u#, "T" kern -u#, "Y" kern -1.5u#;
+ligtable "T": "A" kern -u#, "H" kern -u#, "M" kern -u#;
+ligtable "V": "M" kern -u#;
+ligtable "Y": "M" kern -u#;
+
+end;
+


Property changes on: trunk/Master/texmf-dist/fonts/source/public/ruscap/ruscap10.mf
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/ruscap/ruscap10.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/ruscap/ruscap10.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/ruscap/ruscap10.tfm	2024-04-29 17:34:15 UTC (rev 71122)
+++ trunk/Master/texmf-dist/fonts/tfm/public/ruscap/ruscap10.tfm	2024-04-29 20:27:51 UTC (rev 71123)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/ruscap/ruscap10.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2024-04-29 17:34:15 UTC (rev 71122)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2024-04-29 20:27:51 UTC (rev 71123)
@@ -737,7 +737,7 @@
     rrgtrees rsc rsfs rsfso
     rterface rtkinenc rtklage
     rubik ruhyphen ruler rulerbox rulercompass
-    runcode runtexshebang russ rutitlepage
+    runcode runtexshebang ruscap russ rutitlepage
     rviewport rvwrite ryersonsgsthesis ryethesis
   sa-tikz sacsymb sageep sanitize-umlaut sankey
     sanskrit sanskrit-t1 sansmath sansmathaccent sansmathfonts

Modified: trunk/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc	2024-04-29 17:34:15 UTC (rev 71122)
+++ trunk/Master/tlpkg/tlpsrc/collection-fontsextra.tlpsrc	2024-04-29 20:27:51 UTC (rev 71123)
@@ -302,6 +302,7 @@
 depend romande
 depend rosario
 depend rsfso
+depend ruscap
 depend sansmathaccent
 depend sansmathfonts
 depend sauter

Added: trunk/Master/tlpkg/tlpsrc/ruscap.tlpsrc
===================================================================


More information about the tex-live-commits mailing list.