MyanmarWeb

Tools and resources for Myanmar Web development

View project on GitHub

Padauk and Padauk Book

Paduak and Paduak Book are TrueType fonts with OpenType and Graphite tables for the Myanmar script.

These notes refer to v. 2.8

Graphite

Graphite features

The following Graphite features can be used to tailor the rendering of the Padauk and Padauk Book fonts. Firefox is the only browser that supports Graphite rendering.

Feature id Desc. Default Other values
khamti kdot Khamti style dots 0
filled fdot Filled dots 0
lldot lldt Lower dot shifts left 0
watri wtri Tear drop style washwe 0
uLong ulon Long U with Yayit, long UU with Hato 0
uTall utal U and UU always full height 0
dottedc dotc Insert dotted circles for errors 1
slanth hsln Slanted hato 0 0=Upright
1=Sgaw style slanted leg with horizontal foot
2=Slanted leg with right angled foot
nnya nnya Disable great nnya 0
vartta vtta Variant tta 0

Default features per language

Padauk and Padauk Book offer language specific rendering for Sgaw Karen, Khamti Shan (Tai Khamti) and Kayah. Each language supports the following features and feature values:

LanguageLanguage codeFeatures (and values)
S'gaw Karenksw"hsln" 1, "wtri" 1, "lldt" 1;
Khamti Shankht"kdot" 1, "fdot" 1;
Kayahkyu"wtri" 1, "hsln" 2;

All other languages use the default values (0) for all the available features. But it is possible to use font-feature-settings to override the default font behaviors.

Opentype

Padauk and Padauk Book offer language specific rendering for Sgaw Karen, Khamti Shan (Tai Khmati) and Kayah. All other languages use the default OpenType language system. The Padauk and Padauk Book OpenType tables do not contain features that allow access to specific features comparable to those available in the Graphite tables.

It contains support the following language systems: dftl (Default), kht (Khamti Shan), ksw (Sgaw Karen), kyu (Western Kayah).

CSS rules

Firefox and Internet Explorer can utilise the value of the language tag in the HTML markup to enable language specific features. This will only work for Firefox with the Padauk font, when Firefox is using Graphite rendering. Internet EXplorer requires the OpenType locl feature to be specifically activated.

font-language-override

Firefox, when using OpenType rendering, can use localised glyph and positioning rules via the CSS font-language-override property. The font-language-override can also be used to activate a langauge system for an alternative language. For instance, Western Pwo Karen has no specific language system in teh Padauk fonts. If the web developer wishes to, it is possible to specify :lang(pwo) {font-language-override: ksw;} to enable S'gaw style rendering for Western Pwo Karen.

Firefox 34 onwards, supports font-language-override. An experimental unprefixed implementation was available since Firefox 24. It was governed by the preference layout.css.font-features.enabled defaulting to true on Nightly and Aurora only.

font-feature-settings

It is possible to tailor rendering using the font-feature-settings CSS property in Firefox. For instance if you wish to use the alternative teardrop glyph for medial wa in Burmese, you could add a rule like :lang(my) {font-feature-settings: "wtri" 1;}.

For language specific rendering to automatically work in Internet Explorer 10 onwards, it is necessary to activate the OpenType locl feature using code similar to:


:lang(ksw) { 
    -ms-font-feature-settings: "locl" 1;
    font-feature-settings: "locl" 1;
}

Suggested CSS for Sgaw Karen, Khamti Shan and Kayah, are:


:lang(ksw) {
	font-language-override: ksw;
	-ms-font-feature-setting: "locl" 1;
	font-feature-setting: "locl" 1;
}
:lang(kht) {
	font-language-override: kht;
	-ms-font-feature-setting: "locl" 1;
	font-feature-setting: "locl" 1;
}
:lang(kyu) {
	font-language-override: kyu;
	-ms-font-feature-setting: "locl" 1;
	font-feature-setting: "locl" 1;
}

Padauk and Padauk Book support the Opentype script mymr, rather than the newer mym2. The mymr script makes use of ligatures and mark positioning to support the correct rendering of Myanmar text. If the rendered inter-letter spacing within an element is non-zero, the shaping engine disables the processing and output of ligatures. This will break the rendering if Myanmar text.

To overcome this, it is necessary to explicitly activate the ligatures for Padauk and Padauk Book for elements with non-zero spacing. The following code illustrates how to overcome this limitation:


html, body, * {
    -webkit-font-feature-settings: "kern" 1, "liga" 1, "clig" 1;
    -ms-font-feature-settings: "kern" 1, "liga" 1, "clig" 1;
    -moz-font-feature-settings: "kern" 1, "liga" 1, "clig" 1;
    font-feature-settings: "kern" 1, "liga" 1, "clig" 1;
}