Giter Site home page Giter Site logo

clauseggers / playfair Goto Github PK

View Code? Open in Web Editor NEW
495.0 15.0 32.0 953.81 MB

Playfair is a general purpose Open Source typeface family

Home Page: https://forthehearts.net/playfair2_0/

License: SIL Open Font License 1.1

Python 82.90% Shell 17.10%
font typeface latin open-source cyrillic

playfair's Introduction

Playfair 2.1 banner

I have prepared a number of specimen pages that shows Playfair in context.
A sample of the many combinations of axes and other font features available
A dictionary​​​​​​
A newspaper
A stage play
A scientific paper
Legislation
The entirety of Darwin’s ‘On the Origin of Species’
The Open Font License agreement

Playfair 2.1 extends and improves on Playfair Display. Playfair 2.1 is now a three axes variable font. This means that you, the designer, can choose any combination of width, weight, and optical size contained within these design extrema.

Playfair 2.1 is well suited for general purpose typesetting. It has an extra large x-height and short des­cend­ers. Because it is now a variable font, you the designer can seamlessly interpolate Playfair in three dimensions:

  • Widths from Semi-Condensed to Semi-Expanded
  • Weights from Normal to Black
  • Optical sizes from Agate to Needlepoint

Playfair 2.1 animation

The optical size axis is the most extreme of the axes. Along that axis you can seamlessly change the letterforms from the extremely small Agate to the extremely big Needlepoint. The Agate has a very low contrast between the thickest and thinnest parts of its strokes, in fact the contrast is even slightly negative, meaning the the horizontal strokes are heavier than the vertical strokes. At the other end the Needlepoint is as high contrast as practically possible. The thinnest strokes are but a single unit wide, meaning that if you were to typeset in 1000 points using a Needlepoint weight, the resulting thinnest strokes would be one point wide.

The weight axis adds a second dimension by allowing you to seamlessly change from a light regular to a dark black.

Playfair 2.1 animation

Playfair 2.1 has been designed with context-dependant alternate designs of some glyphs. These alternates are automatically applied based on the optical size, the width, and the weight of the text.

The third axis allows you to seamlessly change from Semi-Condensed to Semi-Expanded. Any combination within this design-envelope is now available to you. This kind of flexibility means that you the designer can find the perfect expression in any context. You can make subtle changes to harmonise the way renderings vary across media, devices, or even specific web browsers.

Playfair 2.1 is stylistically a trans­itional design. From the time of enlight­en­ment in the late 18th cen­tury, the broad nib quills were replaced by poin­ted steel pens. This influ­enced typo­graph­ical let­ter­forms to become increas­ingly detached from the writ­ten ones. Devel­op­ments in print­ing tech­no­logy, ink, and paper mak­ing made it pos­sible to print let­ter­forms of high con­trast and del­ic­ate hairlines.

Playfair 2.1 supports both the Latin and Cyrillic scripts with a glyph complement for the most used languages using these scripts.

Playfair 2.1 has been designed with context-dependant alternate designs of some glyphs. These alternates are automatically applied based on the optical size, the width, and the weight of the text. These substitutions are primarily instantiated in the smallest sizes. The smaller, the narrower, and the darker you typeset, the more of these substitutions you will encounter.

Playfair 2.1 Contains several stylistic alternate letterforms so that you the designer can change how your text appears to the world. Additionally Playfair 2.1 includes a full complement of small-caps for both the Latin and Cyrillic scripts, common lig­at­ures, rare ligatures including ſ, and dis­cre­tion­ary lig­at­ures.

  • Pol­ish altern­ate kreska forms are included.
  • Catalan punt volat is supported.
  • Dutch IJ and ij is supported.
  • Case-transformation of Turkic languages is supported.
  • Icelandic and Faroese and ligatures included.
  • Romanian comma accents are supported.
  • Serbian Cyrillic letterforms are included.
  • Bulgarian Cyrillic letterforms are included.
  • Special design of the її combination for Ukrainian is included.
  • Vietnamese double-stacked diacritical marks are included.
  • Mark-to-mark positioning and composition of diacritical marks is supported.
  • Five figure styles included: Old-style proportional, lining proportional, tabular old-style, tabular lining, and small-caps lining. All in both upright and italic styles.
  • An expanded range of currency symbols.
  • Special tabular versions of punctuation and currency symbols for table use with tabular figures.

Playfair 2.1 animation

Playfair 2.1 is pub­lished under the SIL Open Font License Version 1.1, grant­ing you license to use the fonts free of charge, and enables you to extend & modify the fam­ily should you wish to. The com­plete source-files are avail­able in this repository.

Supported languages

Playfair 2.1 supports the following languages Acheron, Achinese, Achuar-Shiwiar, Afar, Afrikaans, Aguaruna, Amahuaca, Amarakaeri, Amis, Andaandi, Dongolawi, Anuta, Ao, Naga, Apinayé, Aragonese, Arbëreshë Albanian, Arvanitika Albanian, Asháninka, Ashéninka Perené, Asu (Tanzania), Atayal, Balinese, Bari, Basque, Batak Dairi, Batak Karo, Batak Mandailing, Batak Simalungun, Batak Toba, Bemba (Zambia), Bena (Tanzania), Bikol, Bini, Bislama, Borana-Arsi-Guji, Oromo, Bosnian, Breton, Buginese, Candoshi-Shapra, Caquinte, Caribbean Hindustani, Cashibo-Cacataibo, Cashinahua, Catalan, Cebuano, Central Aymara, Central Kurdish, Chachi, Chamorro, Chavacano, Chiga, Chiltepec Chinantec, Chokwe, Chuukese, Cimbrian, Cofán, Congo Swahili, Cook Islands Māori, Cornish, Corsican, Creek, Crimean Tatar, Croatian, Czech,Danish, Dehu, Dimli, Dutch, Eastern Abnaki, Eastern Arrernte, Eastern Oromo, Embu, English, Ese Ejja, Faroese, Fijian, Filipino, Finnish, French, Friulian, Gagauz, Galician, Ganda, Garifuna, Ga’anda, German, Gheg, Albanian, Gilbertese, Gooniyandi, Guadeloupean Creole French, Gusii, Haitian, Hani, Hawaiian, Hiligaynon, Ho-Chunk, Hopi, Huastec, Hungarian, Hän, Icelandic, Iloko, Inari, Sami, Indonesian, Irish, Istro, Romanian, Italian, Ixcatlán Mazatec, Jamaican Creole English, Japanese, Javanese, Jola-Fonyi, K’iche’, Kabuverdianu, Kaingang, Kala, Lagaw, Ya, Kalaallisut, Kalenjin, Kamba (Kenya), Kaonde, Kaqchikel, Kara-Kalpak, Karelian, Kashubian, Kekchí, Kenzi,, Mattokki, Khasi, Kikuyu, Kimbundu, Kinyarwanda, Kirmanjki, Kituba (DRC), Kongo, Konzo, Kuanyama, Kven Finnish, Kölsch, Ladin, Ladino, Lakota, Latgalian, Latin, Ligurian, Lithuanian, Lombard, Low German, Lower Sorbian, Lozi, Luba-Lulua, Lule Sami, Luo (Kenya and Tanzania), Luxembourgish, Macedo-Romanian, Makhuwa, Makhuwa-Meetto, Makonde, Makwe, Malagasy, Malaysian, Maltese, Manx, Maore Comorian, Maori, Mapudungun, Marshallese, Matsés, Mauritian Creole, Meriam Mir, Meru, Mezquital, Otomi, Minangkabau, Mirandese, Mohawk, Montagnais, Montenegrin, Munsee, Murrinh-Patha, Muslim Tat, Mwani, Mískito, Naga Pidgin, Ndonga, Neapolitan, Ngazidja Comorian, Niuean, Nobiin, Nomatsiguenga, North Azerbaijani, North Marquesan, North Ndebele, Northern Kurdish, Northern Qiandong Miao, Northern Sami, Northern Uzbek, Norwegian, Nyanja, Nyankole, Occitan, Ojitlán Chinantec, Orma, Oroqen, Otuho, Palauan, Paluan, Pampanga, Papantla Totonac, Papiamento, Paraguayan Guaraní, Pedi, Picard, Pichis Ashéninka, Piemontese, Pijin, Pintupi-Luritja, Pipil, Pite Sami, Pohnpeian, Polish, Portuguese, Potawatomi, Purepecha, Páez, Quechua, Romanian, Romansh, Rotokas, Rundi, Rwa, Samburu, Samoan, Sango, Sangu (Tanzania), Saramaccan, Sardinian, Scottish Gaelic, Secoya, Sena, Serbian, Seri, Seselwa Creole French, Shambala, Shawnee, Shipibo-Conibo, Shona, Shuar, Sicilian, Silesian, Skolt Sami, Slovak, Slovenian, Soga, Somali, Soninke, South, Azerbaijani, South Marquesan, South Ndebele, Southern Aymara, Southern Qiandong Miao, Southern Sami, Southern Sotho, Spanish, Sranan Tongo, Standard Estonian, Standard Latvian, Standard Malay, Sundanese, Swahili, Swati, Swedish, Swiss German, Tagalog, Tahitian, Taita, Talysh, Tedim, Chin, Teso, Tetum, Tetun Dili, Tiv, Toba, Tok, Pisin, Tokelau, Tonga (Tonga Islands), Tonga (Zambia), Tosk Albanian, Totontepec Mixe, Tsakhur, Tsonga, Tswana, Tumbuka, Turkish, Turkmen, Tzeltal, Tzotzil, Uab, Meto, Umbundu, Ume Sami, Upper Guinea Crioulo, Upper Sorbian, Venetian, Veps, Vietnamese, Võro, Wallisian, Walloon, Walser, Wangaaybuwan-Ngiyambaa, Waorani, Waray (Philippines), Warlpiri, Wayuu, Welsh, West Central Oromo, Western Abnaki, Western Frisian, Wik-Mungkan, Wiradjuri, Wolof, Xavánte, Xhosa, Yanesha’, Yao, Yapese, Yindjibarndi, Yucateco, Zapotec, Zulu, Zuni, and Záparo.

Playfair 2.1 supports the following Cyrillic-script languages Abaza, Belarusian, Bulgarian, Chinese Buriat, Crimean Tatar, Dungan, Erzya, Halh Mongolian, Kalmyk, Karachay-Balkar, Kazakh, Kirghiz, Kumyk, Macedonian, Moksha, Mongolian Buriat, Montenegrin, Nogai, Russian, Russian Buriat, Rusyn, Serbian, Tatar, Tuvinian, and Ukrainian.

Playfair 2.1 animation

Playfair 2.1 is designed by Claus Eggers Sørensen in 2005–2023, and is published under the SIL Open Font License Version 1.1.

playfair's People

Contributors

aleksamul avatar clauseggers avatar davelab6 avatar m4rc1e avatar stephanemagnenat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

playfair's Issues

OpenType math support

Hello, I really like this font, and use it in university work when I can.

It would be really nice if it supported OpenType math, and could be used for mathematical formulae in software like TᴇX or Typst. There's not many beautiful fonts around that can do both.

Maybe that is too big of an undertaking, and/or out of scope; feel free to close if so!

/tcedilla in Needlpoint Black SemiExpanded

The /cedillacomb component doesn't reach the /t component in Needlpoint Black SemiExpanded master. The thin diagonal stroke of the /cedillacomb cannot be made longer, as in that case it will cross the bottom horizontal of the /s component in /scedilla.
Screen Shot 2019-11-13 at 13 45 28

Fonts are little minor than usual

Hello, @clauseggers, I compared the fonts that I got from transfonter.org (Transfonter is a service where you upload your ttf and it gives your the other file formats you need, as you may know, Google Fonts only let you download the ttf format).

The reason I came to this repository is because the font is breaking in Google Chrome of Mac OSX, I don't know if is because of Transfonter.

I don't know why the fonts of this repository and from Transfonter are different if they are the same font. Maybe you can help me, thank you!

See for yourself the test I did comparing them:

https://lwxbr.github.io/font-playfair-display-sample/

PS.: The font of this repository is represented in the right column, the left column are the fonts of transfonter.org, the ttf source file of conversion is from Google Fonts.

Google Fonts Static Playfair Fonts

I know this isn't the right spot to report, but maybe Claus knows who.

The Google Font download has only 9pt and 144pt cuts in it.

Thank you for providing sane static fonts here.

But can you nudge the Google fonts edition to also have more rational choices?

Build Alpha VF

I'd like to get an alpha VF TTF to help with some engineering testing.

I noticed that the Playfair-2*.glyphs files have opsz data from 0 to 1000, but I would like to have them use pt values.

My GlyphsApp would not build the TTF VF, from GlyphsApp File > Export > GX or fontmake, due to lots of errors.

I need the font to build reliably with fontmake, and recommend setting up the masters and instances correctly now, and complete planned glyph sets even if glyphs are empty or just have a notdef component placed manually, so that the build iterations are simply adding/refining glyphs and other aspects of the project, but it stays in a buildable state constantly :)

Here's the fontmake errors for Roman:

fontTools.feaLib.error.FeatureLibError: github.com/clauseggers/Playfair-Display/sources/master_ufo/Playfair-DisplaySemiCondensed.ufo:1000:1064: "hook-cy" is not a glyph in the font, and it can not be split into a range of known glyphs

and Italic:

AssertionError: Location for axis 'Weight' (mapped to 1300.0) out of range for 'Playfair Display SemiCondensed' [400.0..900.0]

Full output: https://gist.github.com/davelab6/dee5f221f4a6566a9767bda96bd9508b

Size of numbers

The sizes of numbers 0-9 varies quite much.
While in the example image, there are examples of different numbers.

  • 82° looks same when I write it
  • §2· 5 looks different, that charachter "2" is not available it seems.

All in all this makes numbers looks strange.
like 20%

pdg

I tried by download the ttf font from here, and tested in Word .. made no difference.

Is this intended? I mean it certain number combinations look great - despite different size.
But not all combinations, especially when mathematical signs are add.

v2.100 afrc figure 9 dnom and numr broken in static

v2.100 afrc figure 9 dnom and numr broken

File: Playfair-Regular.otf (static)

Glyphs: /nine.dnom.afrc /nine.numr.afrc

I was testing the new afrc feature and the 7/9 test did not look right.
It appears something happened to the afrc figure nine dnom and numr in the static fonts.

See image below of some of the afrc figures.
I added the /eight.numr.afrc in the preview for size comparison.

afrc-figure-nine

Opentype ligatures

On the regular font the ligatures ct and st seen to be not working properly in the otf, at least in my Mac's font book. I can't see the arc between those letters. Plus, if you could add the long s symbol (old-style s) it will be great. Thanks for the great work.

Complete language support for all 98%+ languages

I'd like to request just a few languages which have over 90% character support and are just missing a few characters according to Unicode CLDR :)

Language (code) Coverage %Coverage Missing Characters
Hungarian (hu) 131/133 98 \u27e8 (⟨), \u27e9 (⟩)
Uzbek (uz) 86/87 98 \u02bb (ʻ)

Support of DIN 91379 (Unicode subset for Europe)

Support of DIN 91379 (Unicode subset for Europe)

Please support all letters and sequences of DIN 91379 "Characters and defined character sequences in Unicode for the electronic processing of names and data exchange in Europe"

Current rendering

Some letters and diacritics are missing or positioned incorrectly.
(Rendering using
hb-view (HarfBuzz) 2.8.1
Ubuntu 22.04.2 LTS)

latin_letters_all_PlayfairRomanVF.pdf
latin_list_all_PlayfairRomanVF.pdf

Rendering with Arimo

latin_letters_all_Arimo-Regular.pdf
latin_list_all_Arimo-Regular.pdf

See also

Disappearing and reappiring features on different axis

I'm not a type designer, so I'm not sure if it's a feature or an intentional design choice, but why are some features appearing and disappearing when changing axis? Mainly with optical size

Untitled.mp4

Same happens with the Italics version

Untitled2.mp4

spacing and size failure in PDF

Dear Claus,
The letter spacing and font size of Playfair-Display Bold (as downloaded in OTF from https://www.ctan.org/tex-archive/fonts/playfair/opentype on 2019-01-20) seems to be different across PDF viewers. This failure also appeared in print.

I enclosed a photo of a part of the printed version of the PDF file below. The characters appeared approximately twice as big as in the PDF, also touching each other.
playfair_display_issue.pdf
playfair_display_issue

PDF viewers that display my specimen correctly:

  • Okular (Version 0.25.0, KDE Dev. Platform 4.14.22, Linux Mint KDE)
  • Firefox 65.0 (64-bit) for Linux Mint
  • Hancom PDF Viewer on Android 4.4.2
  • Overleaf online preview

PDF viewers that display my specimen incorrectly, reproducing the failure on the photo:

  • Adobe Acrobat 17.0 on Android 4.4.2
  • unknown software at the publishers workshop

The PDF was generated from TeX source on overleaf.com, using XeLaTeX compiler.
Font import from uploaded OTF:

\usepackage{anyfontsize}
\usepackage{soulutf8} % \so{} for spaced out text
\usepackage{fontspec}
\newfontfamily{\pfd}[
    Path = ./,
    Extension = .otf,
    UprightFont = *-Regular,
    BoldFont = *-Bold,
    ItalicFont = *-Black,
]{PlayfairDisplay}

The problematic text was the result of:

{\fontsize{22}{20}\selectfont\textcolor{RedViolet}{\pfd\textbf{\so{TÁNCMŰHELY}}}}\\[2em]

This issue seemed to be specific to Playfair Display (all weights), other Didone fonts from LaTeX font catalogue were displayed correctly with the same settings and context, in the same problematic PDF viewers (printing has not been tested yet with other fonts).

Please inform me if you know some solution or workaround for this problem, or if additional details are required to find the bug.
Best regards,
Attila

Interpolation problems in `PlayfairDisplay-Italic[wght].ttf`

Hello!

This is an automatically-generated report about possible interpolation problems in PlayfairDisplay-Italic[wght].ttf, as found in the Google Fonts catalog.

To download a PDF version of this report with helpful visuals of the problems, click here; Or to view it on the GitHub website, click here.

The report follows:

Glyph parenleft.case was not compatible:
  Masters: '', 'wght=900.0':
    Contour 0 start point differs: 0 in '', 14 in 'wght=900.0'; reversed: True
Glyph parenright.case was not compatible:
  Masters: '', 'wght=900.0':
    Contour 0 start point differs: 0 in '', 14 in 'wght=900.0'; reversed: True

This report was generated using the fonttools varLib.interpolatable tool. We understand that sometimes the tool generates false-positives. Particularly for more complicated font designs. If you did not find this report useful, please accept our apologies and ignore / close it.

To give feedback about this report, please file an issue or open a discussion at fonttools.

Interpolation problems in `PlayfairDisplay[wght].ttf`

Hello!

This is an automatically-generated report about possible interpolation problems in PlayfairDisplay[wght].ttf, as found in the Google Fonts catalog.

To download a PDF version of this report with helpful visuals of the problems, click here; Or to view it on the GitHub website, click here.

The report follows:

Glyph uni2196 was not compatible:
  Masters: '', 'wght=900.0':
    Contour order differs: [0, 1, 2, 3] in '', [1, 0, 2, 3] in 'wght=900.0'
Glyph uni2197 was not compatible:
  Masters: '', 'wght=900.0':
    Contour order differs: [0, 1, 2, 3] in '', [1, 0, 2, 3] in 'wght=900.0'
Glyph uni2198 was not compatible:
  Masters: '', 'wght=900.0':
    Contour order differs: [0, 1, 2, 3] in '', [1, 0, 2, 3] in 'wght=900.0'

This report was generated using the fonttools varLib.interpolatable tool. We understand that sometimes the tool generates false-positives. Particularly for more complicated font designs. If you did not find this report useful, please accept our apologies and ignore / close it.

To give feedback about this report, please file an issue or open a discussion at fonttools.

Make lining numerals default

Would it be possible to make lining numerals a default option?

Google Fonts strips all non-default variants so we can't use the lining numerals.

I know this is a Google Fonts issue, but Google Fonts reccomends that all included fonts should have lining numerals by default.
Most people probably use this font through Google Fonts and if they don't want old style numerals than they can't use it.

You could say it's not your problem, but I think it would help a lot if you made the lining numerals default.

Autohinting?

Will there be versions of Playfair 2 that are run through ttfautohint?

IPA and GF Latin SSA

Several Latin African orthographies are based on the International African Alphabet, published in 1927 and in the 1930 Practical Orthography of African Languages, which is directly derived from the IPA of the time. The IPA has slightly evolved since but there are no major relevant differences.

Samples from the Practical Orthography of African Languages

The style used in Practical Orthography of African Languages may useful.

Notes:

  • /A/a in italic are confusable with /Alpha-latin/alpha-latin from a later General Alphabet of Cameroon Languages (also borrowing from IPA). In Playfair, /a/alpha-latin need to be distinct. One solution is to have /alpha-latin as a more traditional Greek-like alpha with not vertical stem but the in-stroke of the loop crossing the out-stroke of the loop, with a hook terminal on the out-stroke. Unicode does not distinguish between IPA’s script-a and GACL’s Latin alpha, as both sometimes have the other’s shape. Alternatively, the /a could have an alternate slanted shape, this is not common but can be useful.
  • Ɓ had the shape of Latin Ƃ /Btopbar or Б /Be-cy. The B-shape is used instead nowadays, except in Liberia where the Ƃ-shape is still used. locl variant Bhook needed for Toma TOD0, Dan-Gio DNJ , Kpelle Liberia XPE language systems.
  • Ə and ə are used here and are still used in several language orthographies. In some countries, the Ǝ and ǝ are used instead. No locl feature is required in this case.
  • ƒ needs to be different from f in italic in Ewe EWE , Avatime AVN , Lelemi LEF , Waci Gbe WCI language system. The ƒ and f are already good for these languages in Playfair. If that wasn’t the case an alternate /f would be needed for the locl feature in those language systems. Keep in mind that English, French or other languages used in the countries where those languages are used may have borrowed words or proper names with ƒ. So either the default f needs to not have a hook, or at least a ssXX or cvXX feature needs to also provide the alternative f without hook.
  • Ŋ had and still most often has the n-form instead of the N-form in African languages. However while the n-form is often preferred by editors, readers don’t seem to care either way. So depending on the style, both may not be necessary, especially when one hardly fits. In Playfair both seem to fit. The n-form can be the default as there is a larger number of languages that use that form, several of which do not have an OpenType Language System Tag, and the N-form should be the locl variant for Northern Sami NSM or other Sami languages which may use it in borrowed names: Inari Sami ISM , Lule Sami LSM , Skolt Sami SKS , Souther Sami SSM -- it’s not clear for KSM as it used the n-form in the 1930s -- or other adjacent languages (Swedish, Norwegian, Finnish).
  • Ʃ had the shape of Greek Σ /Sigma, the ʃ-shape (or Cyrillic Ꚃ-shape) is used in the Gabon Scientic Alphabet reference and the Guine National Alphabet reference. locl variant Esh Greek Σ-shape could be added for the Ga GAD , Xhosa XHS , Zulu ZUL language systems that used it between the 1930s and the 1950s or 1960s.
  • Ʋ /Vhook had a squarish shape. The shape nowadays is more round like the ʋ /vhook. In Playfair the ʋ /vhook will be confusable with /v. In some works of the period, /vhook has a closed loop. The locl variant with an angular-v shape and an above-x-height hook is used in the Toma TOD0.
  • Ʒ had the shape of a reversed Greek Σ /Sigma, it has a baseline large ʒ-shape nowadays instead. The old shape is not needed. The a reversed Greek Σ shape could be added for the GAD language system.
  • the bold has some issues in this work:
    • ɓ /bhook has its hook too high, the regular is good
    • ɣ /gamma-latin is a bit out of balance, the regular looks better

IPA consonants and vowels (only lowercase, note ɬ and ɮ are only used as IPA symbols)
Practical Orthography of African Languages

Capital letters and written forms.
Practical Orthography of African Languages 1
Alphabetical order of the letters
Practical Orthography of African Languages 3

Samples from The New Script 1930

See https://archive.org/details/the-new-script-and-its-relation-with-the-languages-of-the-gold-coast

This shows a lot of letters with a modern style.

Notes:

  • There no appropriate Ɛ.
  • The Ga Ʒ ʒ /Ezh/ezh and Ʃʃ /Esh/esh have been replaced by J j and digraph Sh sh in the 1960s.

Sample from A. Burssens & G. van Bulck, "De Africa-spelling en de Kongoleesche talen", Kongo-Overzee, vol. 2, no. 2,‎ December 1935, p. 65-93

(sorry for quality)

  • These are lowercase, directly from the same type as used in Maitre Phonétique, the journal of the IPA.
  • ɑ /alpha-latin has a script-a shape. It’s not clear the authors intended to use italic at all.
  • ꭓ /chi-latin is raised by mistake. In any case, the letter isn’t used in African orthographies but was or may used in phonetic transcriptions. It’s not SSA so don’t worry about it.
  • ʔ /glottalstop is a cut question mark. This should be avoided and the letter should be drawn from baseline to ascender-height.
Screenshot 2023-11-08 at 15 17 38

Samples from UNESCO Niamey meetings 1978

See https://unesdoc.unesco.org/ark:/48223/pf0000060064

These aren’t super useful for Playfair but are still an important reference for letter identity.

Screenshot 2023-11-08 at 15 36 20

Notes:

  • Several shapes are poorly designed (like Ɛ being a cut reversed B, or Ɣɣ or Ʊʊ or ʒ).
  • Here ɑ /alpha-latin and Ɑ /Alpha-latin do not have the script-a form but are closer to the loop-form in some way.
  • The special /Eth nor /eth are used in Latin African orthographies so it can be ignored.
  • The hooks on ƁƊƘƳ /Bhook/Dhook or /Khook/Yhook are mild or slightly off, they should be better defined and more pronounced.
  • Ƒ /Fhook has a centered crossbar but no hook. This should be avoided, it should have a bottom hook (on the baseline or below).
  • Ɩ ɩ have the shapes of Ɪ ɪ as IPA used both ɩ and ɪ as alternates of the same symbols for a while. Nowadays they are distinct. Ɩ ɩ should be distinct from iıl /i/idotless/l in particular in italic. The hook terminal of Ɩ ɩ can be more pronounced, like a milder reversed J and milder reversed ᴊ in italic. The distinction is less needed in roman in some styles, like Playfair roman styles.
  • Ʈ /Tretroflexhook has a peculiar Ŧ-shape instead of a T-shape with a bottom right hook, like ʈ /tretroflexhook. This should be avoided, the T-shape with a bottom right hook is more appropriate. This letter is rare or not used in orthographies, it still need to do some research on its current use.
  • The z with hook isn’t used in orthographies and hasn’t been encoded in Unicode. It can be ignored.
  • The Ʃ has the ʃ-shape (like in the Gabon Scientific Alhpabet and the latest Guinea National Alphabet).
  • Ʋʋ are boxy but this can work with the style.

Turned letters

Turned letters are not necessarily turned (also in IPA), these are actually nicer: ɥ /hturned can be a u with a q-terminal, ɯ /mturned can be a u-u ligature, ʌ /vturned can be angular even when v is round.

Ismall and its capital

Ɪ ɪ is used in at least on language in Côte d’Ivoire. Historically it’s a variant of Ɩ ɩ, at least ɪ and ɩ being variants in IPA as mentionned above.

Like in IPA, ɪ /Ismall should be noticeably distinct from i or ı. That seems straightforward in Playfair, the serif can still be slightly more pronounced on ɪ /Ismall.
The capital /uniA7AE should have top and bottom bars instead of serifs. It’ a bit of a Frankenstein letter, it can be built from a narrow T and turned narrow T.

Vhook

Regarding the /vhook/v issue, in Le Maître phonétique, April-June 1932, p. 34, two solution are presented.
f463b9067b400dde

Here it is in print in Clement M. Doke, English-Lamba Vocabulary, 1933
Screenshot 2023-11-08 at 14 54 12

This solution seems to not have been used recently, rather the distinction is made with angular-v for /v and round-v for /vhook.
Since Playfair has a round-v for /v, one could consider this old form as a solution.

Alternatively, in italic, the /vhook could have a hook in-stroke terminal (like i, n, etc.) and a shape closer to a slanted roman.

Note the Toma TOD0 locl variant with the angular-v shape and above-x-height hook mentionned above likely wouldn’t work in several languages as in many cases /vhook is used as a vowel (due to its similarity with Ʊ ʊ /Upsilon-latin/upsilon-latin).

ramshorn and capital

ɤ /ramshorn is used in two languages in Côte d’Ivoire and the capital uniA7CB will be in Unicode 16 this year. Both should be distinct from Ɣɣ /Gamma-latin/gamma-latin. The IPA symbol ɤ used to be a "baby-gamma" (small capital Ɣ on the baseline) but since 1989 it has hook terminals on both in- and out-strokes.

Size differences between fonts.google.com version

left: this repo | right: fonts.google.com version
screen shot 2017-07-10 at 11 17 03

Seems the upms are different, this repo 1240 | fonts.google.com 2048

I think we need to retain the same scale for the fonts.google.com version, even if its an error. Users will now be used to this scale. I suggest we add a gen_gf_version.py script so we can create a set fonts for gf which keeps the scaling.

This came about whilst trying to solve, google/fonts#7

cc @davelab6

Design space location of the original Playfair Display?

I assumed that 2-3-4 (×2 for italics) of the masters in the current design space would be 1:1 with the original Playfair Display masters, but it seems this is not the case. Do you have a recommendation for the design space location that best matches the original static fonts?

I ask because I would like to upgrade the original family in the Google Fonts API so that it's a 1:1 with the new Playfair family, and makes it easy for users to upgrade from the original to the new.

However, for that upgrade to go smoothly, the new instances should be very close to the originals, ideally with the same metrics

Deviating width axis

Hi @emmamarichal With Playfair 2.1 done and Glyphs unable to fully generate working fonts, I wanted to try out fontmake. This came with a number of other issues, the mapping/location of axes but one of them. So I pulled up the version of Playfair you have in your fork, and compared it with the one I have from Glyphs. It turns out that the optical and weight axes match fairly close (probably kerning differences), but the width axis is quite different.

Screen.Recording.2023-06-01.at.07.54.14.mov

I am guessing that Glyphs is using all my defined static instances to create a compile-time axis mapping? Do you know?

Since Glyphs can’t generate working variable fonts, I’m pondering the idea of moving to using fontmake and I had a look at it yesterday. But there were many other issues, and many changes needs to be made for this to work. So here is the question: Can you compile a list or outline of things that need to be changed for the Glyphs files to be successfully generated in fontmake? I need first to find out if this manoeuvre is practically feasible.

Glyph review

@clauseggers Just some minor issues to deal with

Black Italic
Dot accent positioning
screen shot 2017-11-02 at 20 12 30
screen shot 2017-11-02 at 20 12 17
screen shot 2017-11-02 at 20 12 08

Italic
Glyph should look like this:
screen shot 2017-11-02 at 20 08 07

but its top accent is missing
screen shot 2017-11-02 at 20 08 02

v2.101 STAT table issue with Regular weight

I want to use Playfair as an example to try to convince the folks at Affinity to add STAT table support while they are in the current beta phase where they are adding variable font support.
(the opsz names are very cool).

So I was going to create some screenshots using Samsa.
And I found the Weight axis showed SemiExpanded twice where Regular should be.
I have highlighted this in the image below.
SemiExpanded should be Regular

So using ttx I dumped just the STAT table to take a look.
PlayfairRomanVF.STAT.only.ttx.zip
Below are lines 122-144

      <AxisValue index="15" Format="1">
        <AxisIndex value="2"/>
        <Flags value="0"/>
        <ValueNameID value="763"/>  <!-- SemiLight -->
        <Value value="360.0"/>
      </AxisValue>
      <AxisValue index="16" Format="1">
        <AxisIndex value="2"/>
        <Flags value="0"/>
        <ValueNameID value="760"/>  <!-- SemiExpanded -->
        <Value value="400.0"/>
      </AxisValue>
      <AxisValue index="17" Format="3">
        <AxisIndex value="2"/>
        <Flags value="0"/>
        <ValueNameID value="760"/>  <!-- SemiExpanded -->
        <Value value="400.0"/>
        <LinkedValue value="700.0"/>
      </AxisValue>
      <AxisValue index="18" Format="1">
        <AxisIndex value="2"/>
        <Flags value="0"/>
        <ValueNameID value="762"/>  <!-- Medium -->

So there are two for 400 - index 16 & 17.
The second one 17 does include the link to 700.
The first one does not.
NameID 760 is SemiExpanded.
And I thought this should be the Regular weight.

But, it looks like perhaps neither 16 or 17 should be here.
Or should just one of them be there.
Because the Regular is also at the bottom of the STAT dump.
But it has no weight value.
Lines 171-180

      <AxisValue index="23" Format="3">
        <AxisIndex value="3"/>
        <Flags value="2"/>  <!-- ElidableAxisValueName -->
        <ValueNameID value="2"/>  <!-- Regular -->
        <Value value="0.0"/>
        <LinkedValue value="1.0"/>
      </AxisValue>
    </AxisValueArray>
    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
  </STAT>

I assume this is coming from settings in Glyphs.
I use FontLab on Windows so I cannot be much help with that.
Looks like the first two 16 & 17 should go. (or just one)

Hope this is all clear.
Obviously I do not know exactly how STAT should be structured, trying to learn that now.
But I do know it is not working 100% correctly.

Love Playfair, and really want to use it in some STAT examples.
Thanks.

Note: could be related to this old issue with Playfair Display
google/fonts#3649
In that one Word on Mac was showing Regular twice.

Latest sources?

Hi! I’m helping update a number of variable fonts on google fonts and wanted to find out which of your source files are the latest so I make sure I’m using the right version :).

Thanks!

Improve Vietnamese

Some suggestions:

screen shot 11-10-17 at 06 45 pm
screen shot 11-10-17 at 06 53 pm

  • Overall accents are too big. This is a display typeface so it’d lose its elegant when viewed in large sizes. - They should be smaller/narrower. Especially the hookabove, the breve, and the circumflex.
  • The hookabove is being scaled vertically (which shouldn't be, it should be resized, keeping the original ratio/weight instead)
  • The horn in U/O need to be changed, the dot in it is a little bit too big.
    Here is my suggested changes:
    screen shot 11-13-17 at 10 04 pm

untitled-1

  • The lower stem of the horn shouldn’t be pulled horizontally too long, especially in the Ohorn/ohorn.

I'm willing to help contribute the changes directly, by sending you a 'vietnamese only' glyphapp file for you to review and integrate.

Or, you can make changes and then push your work to master and I will give further feedback :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.