我已成功下载并安装了 Hoekwater 的“牛字体”,以便可以将它们与 pdflatex 一起使用 - 请参阅下面的示例文档。特别是,我喜欢棕色的牛!
但是如何使用 pdflatex 获取彩色牛字体(或绵羊字体)?(Taco Hoekwater 和 Hans Hagen 撰写的 TUGboat 文章 [第 37 卷(2016 年),第 3 期,第 306-310 页]“Cowfont(koeieletters)更新”展示了如何仅使用 ConTeXt 来做到这一点。
\documentclass[extrafontsizes,48pt]{memoir}
\usepackage[T1]{fontenc}
\DeclareFontFamily{T1}{CowFont}{}
\DeclareFontShape{T1}{CowFont}{m}{n}{<-> koeieletters}{}
\begin{document}
\usefont{T1}{CowFont}{m}{n}
Moo!
\end{document}
摘自 Hoekwater & Hagen TUGboat 文章
以下是文章中的一些代码,在 ConTeXt 中,它们应该可以生成彩色的奶牛(或绵羊):
\definecolor[cowred] [r=.50]
\definecolor[cowgreen] [g= . 50]
\definecolor[cowblue] [b=.50]
\definecolor[cowyellow] [y=.25]
\definefontcolorpalette[cows]
[cowgreen,cowyellow,cowblue,cowred]
\adaptfontfeature[sheepcolored] [colr=cows]
\usetypescript[all] [cowsotf]
\definefontcolorpalette[cows-1] cowyellow,cowblue,cowred]
\definefontcolorpalette[cows-2] [cowred, cowyellow,cowblue,cowgreen]
\definefontcolorpalette[cows-3] [cowgreen, cowyellow,cowred,cowblue]
\definefontfeature[cows-1] [cowscolored] [colr=cows-1]
\definefontfeature[cows-2] [cowscolored] [colr=cows-2]
\definefontfeature[cows-3] [cowscolored] [colr=cows-3]
\definedfont[Cows*cows-1 at 30pt] red\quad
\definedfont[Cows*cows-2 at 30 pt] green\quad
\definedfont[Cows*cows-3 at 30pt] blue
输出应该是:
我不了解 ConTeXt。而且这篇文章没有充分区分(至少对我来说)所涉及的包中的内容和用户文档中的内容——这是 TeX 文档中常见的错误!]。所以我不知道前面代码的哪一部分必须放在实际文档中,也不知道必须包含哪些其他代码才能制作出可用的 ConTeXt 文档。
然后,让我完全困惑的是,文章的最后写了以下内容。
“要快速使用这些字体,您可以使用以下其中一种:
\setupbodyfont[koeieletters]
\setupbodyfont[cows]
\setupbodyfont[coloredcows]
\setupbodyfont[sheep]
\setupbodyfont[coloredsheep]
其中 koeieletters 变体等于羊。”
答案1
我处理了以下事情。
要求
- LuaTeX,版本 1.06.0。我从 w32tex.org 获得了这个二进制文件,幸运的是,我已经设置好了使用它的设置,而不会干扰我正常的 tex 系统。
- 新的字体加载器:
luatex-fonts-merged-lua
从当前上下文最小值中获取并告诉 luaotfload 将其用作带有luaotfload.conf
文件的字体加载器。(旧版字体加载器会出现错误)。 - 更改了 luaotfload-letterspace.lua,因为默认的 luaotfload-letterspace.lua 不适用于新的字体加载器(我在之前的测试中已经拥有它了)。
- 当然还有字体。emoj 字体在我的系统中的某个地方,cow-font 是我从 context minimals 中复制过来的(也许它也在 texlive 的某个地方)。
添加
我上传了一个fontloader-luaotfload
包含替代字体加载器、更改后的 luaotfload-letterspace.lua 的包到 CTAN,并在文档中介绍了一些如何使用开发 luatex 的提示。
结果
我对这些颜色表示抱歉,但要找到如何将它们改得更漂亮并不容易。
\documentclass{article}
\directlua{fonts.handlers.otf.registerpalette("demo", {
{ g = 0 },
{ g =0.5 },
{ r = 1 },
{ r = 1, b= 1},
}
)}
\begin{document}
\font\Emoj={file:seguiemj.ttf:mode=node;colr=yes;}
\Emoj \char"2661 \char"1F34D \char"1F986
\font\Emoj={file:seguiemj.ttf:mode=node;colr=demo;}
\Emoj \char"2661 \char"1F34D \char"1F986
\font\cow={file:koeielettersot.ttf:mode=node;colr=demo;} at 30pt
\cow ABC
\end{document}
添加
我掌握了颜色的窍门。第二个条目用于牛的身体,第四个条目用于斑点和 emoij 字体中的颜色。最好设置所有 rgb 值。所以这里给出橙色和蓝色:
\directlua{fonts.handlers.otf.registerpalette("demo", {
{ g = 0 },
{ g = 0.5, b=0, r=1 },
{ r = 1 },
{ r = 0, b= 1, g= 0},
}
)}