Eine Schriftart -Testkurs für Diete.
Mit der Schriftart können Sie PDF -Schriftart -Testdokumente erstellen, ohne mit InDesign oder anderen manuellen Seitenlayout- oder Textverarbeitungsprogrammen zu fummeln. Sie können eines der vorgefertigten Testdokumente anwenden (um später hinzugefügt zu werden) oder mit der Sie mit Schriftart ein eigenes benutzerdefiniertes Schriftart -Testdokument erstellen können.
Beachten Sie, dass Schriftproof eine Arbeit in der Arbeit ist. Es gibt also noch viel, was noch nicht funktioniert oder nicht sehr elegant funktioniert. Verwenden Sie auf eigenes Risiko und helfen Sie uns, es besser zu machen.
Schriftlich benötigt der DisplaysTter. Sie müssen SILE gemäß den Anweisungen dieses Pakets installieren.
Beachten Sie, dass sich SILE schnell ändert. Die aktuelle Klasse wurde für die Release 0,14.0 oder neuer entwickelt und getestet. Zur Unterstützung älterer Versionen von siil siehe ältere Versionen von Schriftof.
Die Installation von Schriftproof erfolgt hauptsächlich über Lua -Gesteine:
$ luarocks install fontproofEine funktionierende Installation von Sile V0.14.0 oder neuer wird zur Installationszeit nicht überprüft.
Sie können auch manuell aus dem Quellverzeichnis installieren:
$ luarocks make Das rennensfeste Schreiben erfolgt über eine eigene CLI:
$ fontproof --help
Usage: fontproof [OPTIONS] [--] [SILEARGS-1 [SILEARGS-2 [...]]]
ARGUMENTS:
SILEARGS All remaining args are passed directly to SILE
(optional)
OPTIONS:
-F, --family=VALUE Specify the font to be tested as a family name
(ignored if --filename used)
-f, --filename=VALUE Specify the font to be tested as a path to a
font file
-o, --output=FILE output file name
-p, --features=VALUE Specify the test font features
-s, --size=VALUE Specify the test font size
-S, --style=VALUE Specify the test font style (ignored if
--filename used)
-t, --template=VALUE Use the bundled template by name (full,
gutenberg, test, unichar);
-w, --weight=VALUE Specify the test font weight (ignored if
--filename used)
-h, --help display this help, then exit
-v, --version display version information, then exit Vier Startervorlagen werden aus der Schachtel bereitgestellt. Um sie anzupassen, ist das Beste, was Sie tun können, wahrscheinlich den, der dem am ähnlichsten ist, wo Sie sich selbst bewegen und selbst ändern möchten. Die Hauptmerkmal einer Vorlage ist, dass sie die Schriftklasse mit der Schriftart verwendet. Die Verwendung der von ihnen definierten Spezialbefehle ist nach Bedarf.
Zum Beispiel:
$ cp /usr/local/share/lua/ < version > /fontproof/templates/full.sil mytemplate.sil
$ fontproof -- mytemplate.silZu diesem Zeitpunkt gibt es eine Hauptvorlage - fpful.Sil - aber mehr wird folgen. Diese Vorlage zeigt Ihnen fast alles, was geschrieben werden kann. Sile selbst ist in der Lage, weit, weit, mehr zu sein, und Sie sind sehr herzlich eingeladen, damit herumzuspielen.
Als alternative Methode zur Verwendung von Schriftofest -Docker -Bildern sind Docker -Bilder bei Docker Hub oder der GitHub -Containerregistrierung mit Dise und der Schriftklasse erhältlich, die eingebacken und verwendet werden. Die veröffentlichten Versionen sind mit dem mit dem übereinstimmen (z. B. v2.0.5 ), die neueste Version wird latest mit dem Tag gekennzeichnet, und ein master -Tag ist auch mit dem frischesten Entwicklungsbau erhältlich. Um nützlich zu sein, müssen Sie dem Docker -Run -Befehl eine Möglichkeit mitteilen, Ihre Quelldokumente zu erreichen (und somit auch einen Platz zum Schreiben der Ausgabe zu geben) und ihm mitzuteilen, wer Sie auf der Host -Maschine sind, damit die im Container erzeugte Ausgabe mit den erwarteten Eigentümereigenschaften erstellt werden kann. Möglicherweise finden Sie es am einfachsten, mit einem Alias wie folgt zu laufen:
$ alias fontproof= ' docker run -it --volume "$(pwd):/data" --user "$(id -u):$(id -g)" siletypesetter/fontproof:latest '
$ fontproof proofs.sil Jedes Remote -CI -System, das Docker -Bilder als Auftragslaufer verwenden kann, kann so konfiguriert werden, dass er fontproftigen Jobs ausführt. Zusätzlich ist auf dem Markt eine fertige Github-Aktion erhältlich:
name : FontProof
on : [push, pull_request]
jobs :
fontproof :
runs-on : ubuntu-latest
name : FontProof
steps :
- name : Checkout
uses : actions/checkout@v4
- name : FontProof
uses : sile-typesetter/fontproof@latest
with :
args : proofs.sil Fügen Sie Ihrem Repository als .github/workflows/fontproof.yml . In diesem Arbeitsfluss geht davon aus, dass Ihr Projekt eine Quelldatei proofs.sil hat und eine fontproof.pdf hinterlässt. Beachten Sie, dass die Kommentare im Abschnitt zu Docker zu Tagged -Versionen neben latest gleichermaßen gelten. GitHub -Aktionen verwenden jedoch einen @ -trennzeichen anstelle von Docker : .
Jede Vorlage kann eine vollständige Auswahl von Tests enthalten. Jeder Test wird unter Verwendung eines Befehls in diesem allgemeinen Format angegeben:
commandname[set of parameters]{text to be typeset}
Einige Tests dürfen nur Parameter oder nur Text oder nicht wie in diesem Beispiel in der SILE selbst nativ angezeigt werden:
pangrams
Weitere Details zum Ausführen von Befehlen in SILE finden Sie im SILE -Handbuch.
Standardmäßig listet der laufende Kopf den Dateinamen, die Schriftart (Familie oder Dateiname), Datum und Uhrzeit auf. Der Inhalt ist nicht (derzeit) konfigurierbar, aber Sie können die Schriftart und Größe mit dem Befehl setRunHeadStyle festlegen. Beachten Sie, dass dies keinen Zusammenhang mit der Testschrift hat.
%setRunHeadStyle[filename="Example-Bold.ttf", size="12pt"]
So fügen Sie einen Abschnitt und Unterabschnittsüberschriften hinzu:
section{Heading text}
subsection{Heading text}
Der Stil ist derzeit nicht konfigurierbar, aber Sie können sie für alle Schriftrichter -Dokumente manuell optimieren, indem Sie die Einstellungen in Klassen/Schriftof. LUA ändern.
Die folgenden Arten von Tests werden unterstützt und in fpful.Sil veranschaulicht:
Details zu den Befehlen, mit denen diese angegeben werden, finden Sie unten.
Fontproof ist das Copyright © 2016 SIL International und lizenziert im Rahmen der MIT -Lizenz. Übrigens - Trotz der Ähnlichkeit des Namens wird Sile selbst von SIL International nicht entwickelt, obwohl wir das Projekt sehr gut mögen. Sie sind sehr willkommen, um sowohl zu Schriftfest als auch zu sitzend beizutragen.
Diese Befehle werden derzeit unterstützt.
Dies ist der Hauptbefehl der Schriftart der Schrift und kann verwendet werden, um sowohl einfache Testtexte als auch Wasserfälle festzulegen. Zu den optionalen Parametern gehören Schriftart (nach Familie oder Dateiname) und Größe (en). Sie können hier auch eine Testüberschrift festlegen, anstatt einen separaten section Abschnittsbefehl zu verwenden.
proof{This is basic proof text using the test font}
proof[family="Gentium Plus",heading=A basic family test]{This is basic text with a font defined by family}
proof[size="10pt",filename="Example-Light.ttf",heading=A basic filename test]{This is another basic text with common parameters}
proof[size="10pt,11pt,12pt,16pt"]{This is basic proof text in a range of sizes}
proof[size="10,11,12,13,20"]{This is basic proof text in a range of sizes with numbers only}
proof[features="Ligatures=Rare, Ligatures=Discretionary"]{This is a proof with rare ligatures turned on}
proof[features="+dlig,+hlig"]{This is a proof with features manipulated manually}
proof[language="grk",direction = "rtl"]{Here are some options which are passed on to the font command}
proof[color="green"]{Here are some options which are passed on to the color command}
proof[shapers="ot,fallback"]{Here we pass a list of subshapers to Harfbuzz}
Dies erzeugt mehrere Kopien eines Textes mit einer Reihe von Zeichen, die an wichtigen Stellen ersetzt werden. Diese werden manchmal als "Frame -Tests" bezeichnet. Traditionell war ein häufiger Test dieses Typs der "Hobonop" -Test. Ein "Hobonop" für die Buchstaben ABCD würde aussehen wie:
haoabaoanaoap hbobbBobnbobp hcocbcocncocp Hdodbdodndodp
Der Befehl, dies zu erzeugen, wäre:
pattern[chars="@",reps="abcd"]{h@o@b@o@n@o@p}
Dies definiert ein Platzhaltercharakter, dann die Menge der Buchstaben, die zum Ersetzen verwendet werden, und dann das Textmuster, das die Platzhalter (en) enthält.
Sie können auch mehrere Platzhalter verwenden, um alle Kombinationen zu erstellen, wie in:
ooaxoo oobxoo oocxoo
Ooayoo Oobyoo Oocyoo
Der Befehl hierfür wäre: (Achten Sie darauf, dass Sie genau die Syntax befolgen, oder Sie können sehr verwirrende Fehler erhalten!)
pattern[chars="@,#",reps="abc,xy"]{oo@#oo}
Es gibt einige Charaktere, die für Dise und Lua etwas Besonderes sind und nicht als Zeichen verwendet werden sollten. (Eine Liste der vorgeschlagenen sicheren wäre hier eine gute Ergänzung!) Es ist auch eine schlechte Idee, einen Charakter zu verwenden, der in Wiederholungen ist.
Der Befehl pattern gibt es noch einen optionalen Parameter:
Es ist einfacher, dies zu demonstrieren, als zu erklären. Zuerst das formatierte Beispiel, dann der Befehl zum Erstellen:
ooaxoo oobxoo oocxoo
Ooayoo Oobyoo Oocyoo
pattern[chars="@,#",reps="abc,xy",format="table"]{oo@#oo}
ooaxoo
oobxoo
Oocxoo
ooayoo
Oobyoo
Oocyoo
pattern[chars="@,#",reps="abc,xy",format="list"]{oo@#oo}
ooaxoo oobxoo oocxoo ooayoo oobyoo oocyoo
pattern[chars="@,#",reps="abc,xy",format="para"]{oo@#oo}
Das ist cool! Sagen Sie, Sie haben eine Gruppe von Buchstaben, die Sie in mehreren Mustertests verwenden möchten, möchten sie aber nicht immer wieder definieren müssen. Sie können diese als Mustergruppe mit einem bestimmten Namen definieren. Beachten Sie, dass Sie diese Gruppen in Ihrem Dokument definieren müssen, bevor Sie sich darauf verweisen. Beachten Sie auch, dass dieser Befehl nichts auf der Seite selbst produziert. Es ist nur für spätere pattern Musterbefehle nützlich.
patterngroup[name="vowels"]{aeiou}
Um dies in einem pattern -Befehl zu verweisen, Präfix des Gruppennamens mit "Group_" und verwenden Sie im Parameter reps . Zum Beispiel:
pattern[chars="@,#",reps="group_vowels,xy",format="table"]{oo@#oo}
Es gibt auch einige vordefinierte Gruppen, wie unten aufgeführt. Sie können auch Ihre eigenen dauerhaften Gruppen in Paketen/font -ProofGroups.lua definieren.
| Gruppenname | Beschreibung |
|---|---|
| Group_az | Basis -Kleinbuchstaben -Alphabet |
| Group_az | Basic -Großbuchstaben Alphabet |
| Gruppe_combdiacs | grundlegende Kombination von Diakritikern |
| Group_09 | Grundzahlen |
| gruppe_punct | Grundzahlen |
Die Schriftart enthält eine Reihe integrierter Testtexte. Setzen Sie den Inhalt eines proof oder pattern -Befehls auf einen der folgenden voreingestellten text_xxxx -Namen. Sie können auch Ihre eigenen Texte in Paketen/fontproofTexttexts.lua hinzufügen.
| Inhalt | Beschreibung |
|---|---|
| text_az | Basis -Kleinbuchstaben -Alphabet |
| text_az | Basic -Großbuchstaben Alphabet |
| text_combdiacs | grundlegende Kombination von Diakritikern |
| text_spacingdiacs | grundlegende Abstandsdiakritik |
| text_09 | Grundzahlen |
| text_numsym | Ziffern und verwandte Symbole |
| text_nummath | mathematische Symbole |
| text_symbols | Gemeinsame Symbole |
| text_punct | Grundzahlen |
| text_pangram | Einfacher Pangram |
| text_verne | Auszug aus 20.000 Meilen unter dem Meer |
| text_vernecaps | Großbuchstaben |
| text_reveng | Auszug aus Offenbarung 7 (Englisch) |
| text_revfin | Auszug aus Offenbarung 7 (Finnisch) |
| text_revger | Auszug aus Offenbarung 7 (Deutsch) |
| text_revdut | Auszug aus Offenbarung 7 (Niederländisch) |
| text_revind | Auszug aus Offenbarung 7 (Indonesien) |
| text_revswa | Auszug aus Offenbarung 7 (Swahili) |
| text_arrowroot | Traditioneller Textextestentext |
| text_capslower | Lateinische Hauptstädte gegen die Kleinbuchstaben /O und /n |
| text_bringhurst | Kerning -Test aus Bringhursts „Elemente des typografischen Stils“ |
| text_allkernpairs | Text, der alle Kombinationen von lateinischen Ober- und unteren Fallbuchstaben enthält |
| text_jafkerns | Kerning -Test aus dem Textgenerator eines anderen Gießereis |
Damit werden Wörterbücher verwendet, um Mülltext aus echten Wörtern zu erzeugen, ähnlich wie lorem . Die Wörter würden jedoch nur Buchstaben aus einem Satz enthalten, den Sie angeben:
adhesion[characters=hamburgefonsiv]
Optionale Argumente sind words , die Anzahl der Wörter (auf 120) und den dict einer Wörterbuchdatei. Die Klasse schaut in /usr/share/dict/words und /usr/dict/words aus, wenn die dict -Option nicht bereitgestellt wird. Wörter werden aus der Wörterbuchdatei ausgewählt, wenn sie nur die angegebenen Zeichen enthalten.
Dadurch wird ein Text von Project Gutenberg heruntergeladen und enthält.
gutenberg[id=100] % The complete works of Shakespeare
Typen ein paar Ziffern von PI:
pi[digits=500]
Dies erzeugt eine einfache, nicht angeordnete Tabelle, die eine Reihe von Unicode und Glyphen anzeigen würde, die die USVs in diesem Bereich darstellen.
Einige Beispiele:
unicharchart[type="all",columns="12",rows="16"]
Dies erzeugt eine Tabelle, die jedes codierte Charakter in der Schriftart zeigt, das als Tabelle formatiert ist, wobei zunehmend USV eine Spalte, 16 Zeichen pro Spalte, mit einem Maximum von 12 Spalten vor dem Einbruch in eine neue Tabelle herabsteigt. Dies ist den Tabellen in den Unicode -Standard -Code -Diagrammen sehr ähnlich und könnte die Standardeinstellungen für einen einfachen unicharchart sein.
unicharchart[type="range",start="AA80",end="AADF"]
Dies erzeugt dasselbe, außer nur den angegebenen Bereich von USVs zu zeigen.
Diese funktionieren auch ohne Schriftart in Diile, obwohl Sie sie dann mit script[src=packages/specimen] laden müssten.
Dies erzeugt eine Reihe vordefinierter Pangrams.
Dies erzeugt Mülllorem Ipsum -Text mit der Anzahl der angegebenen Wörter.
Dies erzeugt eine schön angeordnete Tabelle aller Glyphen in der Schriftart.
Hier sind einige Befehle, die wir eines Tages unterstützen, mit empfohlenen Befehlsformaten. Einige werden möglicherweise nie implementiert. Vorschläge willkommen!
Wir würden gerne noch mehr potenzielle Parameter zu proof sehen:
proof[
size = "10, 11/13, 12/16",
columns = 3,
lines = 12
]{Text}
Oooooh!