[lucida] Scaling the Lucida font

Raúl Martínez rm.tech at mac.com
Wed May 4 16:23:56 CEST 2022



Hi Bruno,

Thanks for your reply, which is precisely what I was looking for. It seems that entering the Lucida world requires one to learn about font details that I thought were solely the purview of font designers. I’m glad to do that…up to a point.

Your answers are precisely what I was looking for, and I greatly appreciate your help.

But there’s an issue still open that I thought about after posting my query. The issue is that the document class specifies the font size, either as an option or by default. It’s not clear to me how font scaling plays with the font-size specification by the document class. I’ll dig into those documents you pointed me to. I’m sure I’ll find my answer there. I think the tables of point sizes and scalings you list may answer my question.

I’m going to try various scalings to see which looks best for my purposes.

Thanks again.

Best wishes,

Raúl

> On May 4, 2022, at 5:07 AM, Bruno Voisin <bvoisin at icloud.com> wrote:
> 
>> 
>> On 4 May 2022, at 09:09, R Martinez <rm.tech at mac.com> wrote:
>> 
>> I am puzzled by the scaling command. I’ve never seen a font scaled.
>> ---------------------------
>> % Slightly reduce size.
>> \defaultfontfeatures{Scale=.92}
>> --------------------------
>> My question is:
>> 
>> 1. Is it necessary to scale the font? If so, why? And if scaling is needed, what are the scaling rules? 
>> 2. Is this common with Lucida? Lucida only?
> 
> Hi Raul,
> 
> 
> Regarding question 1:
> 
> From lcdplain.tex, which is Lucida's plain TeX support file by Y&Y (the creators <https://tug.org/yandy/> in the early 1990s of the original TeX distribution of the Type 1 fonts):
> 
>    % LucidaBright has larger x-height and cap-height than CM, so it is
>    % desirable to use a somewhat smaller font size (95%), as is done here.
>    % Also, since smaller sizes are derived by scaling, it is better to
>    % increase the relative size of super/sub-scripts a bit, as shown here.
> 
>    % set up the basic set of fonts needed - for additional ones see later
> 
>    % plain CM uses:  5,   6,   7,   8,   9,   10,  11,   12,   14,   18
>    % plain LB uses:  5.2, 6.1, 6.9, 7.8, 8.6,  9.5, 10.4, 11.2, 12.9, 16.4
> 
> The file is copyrighted, so unfortunately I cannot attach it here. It may be found in the Extras folder of
> 
>    http://mirrors.ctan.org/systems/mac/oztex/oztex52.sit
> 
> When the lucidabr LaTeX support package was created, it kept the scaling, applying it to size ranges instead of the discrete sizes used by plain TeX. You have three options:
> 
> - nolucidascale: no scaling at all
> 
> - lucidascale:
> 
>    below 5.5:        * 1.04    (5 -> 5.2)
>    between 5.5 and 6.5:    * 1.02    (6 -> 6.12)
>    between 6.5 and 7.5:    * 0.99    (7 -> 6.93)
>    between 7.5 and 8.5:    * 0.97    (8 -> 7.76)
>    between 8.5 and 9.5:    * 0.96    (9 -> 8.64)
>    between 9.5 and 10.:    * 0.95    (10 -> 9.5)
>    between 10.5 and 11.5:    * 0.94    (11 -> 10.34)
>    between 11.5 and 13:    * 0.93    (12 -> 11.16)
>    between 13 and 15.5:    * 0.92    (14 -> 12.88)
>    between 15.5 and 18.5:    * 0.91    (18 -> 16.38)
>    between 18.5 and 22.5:    * 0.90    (20 -> 18)
>    between 22.5:        * 0.89    (25 -> 22.25)
> 
> - lucidasmallscale:
> 
>    below 5.5:        * 0.98    (5 -> 4.9)
>    between 5.5 and 6.5:    * 0.96    (6 -> 5.76)
>    between 6.5 and 7.5:    * 0.94    (7 -> 6.58)
>    between 7.5 and 8.5:    * 0.92    (8 -> 7.36)
>    between 8.5 and 9.5:    * 0.91    (9 -> 8.19)
>    between 9.5 and 10.5:    * 0.90    (10 -> 9)
>    between 10.5 and 11.5:    * 0.89    (11 -> 9.79)
>    between 11.5 and 13:    * 0.88    (12 -> 10.56)
>    between 13 and 15.5:    * 0.87    (14 -> 12.18)
>    between 15.5 and 18.5:    * 0.86    (18 -> 15.48)
>    between 18.5 and 22.5:    * 0.85    (20 -> 17)
>    above 22.5:        * 0.84    (25 -> 21)
> 
> I don't know the precise rules if any. A possibility is that lucidascale makes text in Lucida the same length as Computer Modern, and lucidasmallscale the same as Times. (To be tested, I don't have the time right now.)
> 
> The commercial support package lucimatx from PCTeX offers a "scale=" option for linear scaling in addition to the nonlinear scaling options above, and mentions using \linespread to adjust the line spacing if need be. See §3 of the free version of the documentation at
> 
>    https://pctex.com/files/managed/b/bf/lucimatxAbbrev.pdf
> 
> By combining SizeFeatures, Size and Scale in fontspec it should be possible to reproduce the nonlinear scalings with the OpenType fonts. (I'm not enough of a font expert to appreciate the differences in the output.)
> 
> I generally use lucidasmallscale with the Type 1 fonts and \defaultfontfeatures{Scale=.9} with the OpenType fonts. The lucidaot doc uses \defaultfontfeatures{Scale=.92}.
> 
> 
> Regarding question 2:
> 
> Scaling fonts is not uncommon. This is a possibility offered by outline fonts.
> 
> The first widespread package that used it, to my knowledge, is helvetic from the PSNFSS package, allowing (among other things) Computer Modern to be replaced by Times/Helvetica/Courier when these became available in TeX. The fonts weren't designed to be used together, so Helvetica required a bit of rescaling to blend well with the other two. The "scaled=" option of helvetic allows a rescaling factor to be specified, and just "scaled" selects 0.95 by default. See "texdoc psnfssx".
> 
> The same option now appears in other packages, as in lucimatx with name "scale" or in tgheros (for TeX Gyre Heros).
> 
> fontspec takes things a step further for OpenType fonts, by allowing to specify as Scale not only a given scale factor but also MathUppercase or MatchLowercase, to match the height of the uppercase or lowercase letters of the main font.
> 
> 
> Good luck with your font experiments,
> 
> Bruno Voisin



More information about the lucida mailing list.