Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

It should be possible to slant glyphs to the left for italics/oblique #17

Open
r12a opened this issue Jan 22, 2021 · 2 comments
Open

It should be possible to slant glyphs to the left for italics/oblique #17

r12a opened this issue Jan 22, 2021 · 2 comments
Labels
doc:nkoo gap The first comment in this issue is read by the gap-analysis document. i:letterforms Letterform slopes, weights, & italics l:nqo N'Ko script & language p:basic The gap-analysis priority is Basic. s:nkoo x:alreq x:blink x:hlreq x:nkoo x:webkit

Comments

@r12a
Copy link
Contributor

r12a commented Jan 22, 2021

This issue is applicable to Arabic/Persian, Hebrew, & N'Ko.

Typography for N’Ko is still at an early stage of development, but when JamraPatel reached out to communities to see if an Italic typeface would be beneficial, they expressed a desire to have one. Over the past few years, the need to be able to set more complex copy has increased as well. Since neither script had any precedent for a drawn italic typeface, JamraPatel asked the community how they would like to see it drawn. The preference was for N'ko to have a leftward lean. To JamraPatel's knowledge, their typeface has the first drawn italicized N'ko.

nko_italics

The following is a photo of an Arabic newspaper letterhead. See the oblique text in the middle line.

More:

Priority

Marking this as basic priority, given that incorrect synthesis is likely to occur often.

The Gap

If a font is applied to create italicised or oblique text, there should be no problem here. But such font styles are sometimes achieved using font-synthesis, in which case the correct lean needs to be applied.

CSS provides for 'negative oblique' values of the font-style property, which can be used to achieve this. Set font-style to the desired value, such as -14deg and set font-synthesis-style to auto. Gecko supports that value, but Blink and WebKit do not.

However, there is a problem with the CSS approach because it suggests that if an italic font face is available for the font in use, then the font should be used rather than applying the oblique synthesis. (And this is what browsers appear to do.) In most cases, currently, this will result in right-leaning, italic glyphs (which may also have different shapes to oblique glyphs) rather than the specified left-leaning synthesized oblique or fallback to an oblique font face.

The following diagram shows the result of the second interactive test below, where no font-family property is specified, and font-style:oblique -14deg is applied to all lines. There is only one N'Ko font on the system and the system has no associated italic font file. The font set in browser preferences for Arabic text is also unaccompanied on the system by an italic font file. The Hebrew and Ukrainian texts are both represented by fonts for which an italic font file is also present on the system. The directive to apply -14 degree oblique to the latter two is overridden, and the text leans the wrong way. (And the letterforms for the cyrillic text are very different from those that would be produced by synthesising the oblique on the regular font.)

Result of applying oblique to 4 scripts.

Tests

interactive test: It is possible to make synthetic oblique slant letterforms to the left.

interactive test: It is possible to slant glyphs to the left when the system has an italic font face.

Action taken

CSS issue: (css-fonts) It should be possible to slant glyphs to the left for italics/oblique #8914

Browser bug reports: WebKitBlink

Outcomes

tbd

@r12a r12a added gap The first comment in this issue is read by the gap-analysis document. i:letterforms Letterform slopes, weights, & italics p:basic The gap-analysis priority is Basic. doc:nkoo labels Jan 22, 2021
@r12a
Copy link
Contributor Author

r12a commented Feb 16, 2021

The first comment in this issue contains text that will automatically appear in one or more gap-analysis documents as a subsection with the same title as this issue. Any edits made to that comment will be immediately available in the document. Proposals for changes or discussion of the content can be made in comments below this point.

Relevant gap analysis documents include:
Arabic/PersianHebrewN'Ko

@xfq
Copy link
Member

xfq commented Jul 25, 2023

Related issue: #3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc:nkoo gap The first comment in this issue is read by the gap-analysis document. i:letterforms Letterform slopes, weights, & italics l:nqo N'Ko script & language p:basic The gap-analysis priority is Basic. s:nkoo x:alreq x:blink x:hlreq x:nkoo x:webkit
Projects
Status: Bug fix in progress
Development

No branches or pull requests

2 participants