## page was renamed from DebianInstallerGUIFonts = Intro = One of the main advantages of the graphical version of the installer is that it can support languages that use combining characters. We are currently using only TTF fonts. The following issues are open with respect to fonts: * Translators should check if their languages are displayed correctly and check for missing characters. Special attention should be given to non-latin languages (Indic languages, Arabic, Hebrew and Vietnamese). Help from translators may be needed to decide the optimal font for the installer (taking into consideration both quality and space required). Please note that the screenshots are a little outdated currently. * Ideal would be to have each character we need present in only one font. The current fonts have a lot of overlap which wastes space. * Display has to be good both when no language has yet been selected (language selection screen) and when it has. * Possibly font configuration can be improved. It would be very nice if we could influence which font is used for a specific language. == Requirements for packaging fonts == * Total amount of space used for fonts should be minimized. * Only font files that are actually used in the installer should be included. * Minimize overlap between fonts. It is possible to "strip" characters from a font (This is currently done in the developement versions with a fontforge script) We ''really'' need to add characters as we need them, not to strip them from fonts. The fonts overlap too much - CJK fonts provide also codes for Latin scripts. Latin scripts are provided by most fonts, but they can be fixed with some [[http://fontforge.sourceforge.net/scripting.html|Fontforge scripting]] Davide Viti created [[https://salsa.debian.org/installer-team/d-i/blob/master/scripts/g-i/README.strip_glyphs|a fontforge script]], that will allow stripping unnecessary glyphs or glyph ranges from the fonts. If needed, one can [[https://salsa.debian.org/installer-team/d-i/blob/master/scripts/g-i/README.strip_glyphs|read the usage hints]]. Information on how to play around with fonts is included in [[DebianInstaller/GUIBuild]]. ---- = Fonts configuration for the G-I = Infos for language codes were fetched from: * http://czyborra.com/charsets/iso8859.html * http://rudhar.com/lingtics/uniclnks.htm * http://aspell.sourceforge.net/man-html/Supported.html * [[https://salsa.debian.org/installer-team/localechooser|localechooser]] * [[http://cvs.savannah.gnu.org/viewcvs/freefont/freefont/AUTHORS?rev=1.13&view=auto|AUTHORS]] file included in the [[http://cvs.savannah.gnu.org/viewcvs/freefont/freefont/|freefont source package]] Font packages currently used: * [[https://packages.debian.org/unstable/debian-installer/fonts-android-udeb|fonts-android-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-freefont-udeb|fonts-freefont-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-farsiweb-udeb|fonts-farsiweb-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-tibetan-machine-udeb|fonts-tibetan-machine-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-dejavu-udeb|fonts-dejavu-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-khmeros-udeb|fonts-khmeros-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-thai-tlwg-udeb|fonts-thai-tlwg-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-taml-udeb|fonts-taml-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-mlym-udeb|fonts-mlym-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-knda-udeb|fonts-knda-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-telu-udeb|fonts-telu-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-sil-abyssinica-udeb|fonts-sil-abyssinica-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-noto-hinted-udeb|fonts-noto-hinted-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-lao-udeb|fonts-lao-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-ukij-uyghur-udeb|fonts-ukij-uyghur-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-sil-padauk-udeb|fonts-sil-padauk-udeb]] * [[https://packages.debian.org/unstable/debian-installer/fonts-lohit-guru-udeb|fonts-lohit-guru-udeb]] Color codes below: * Green: rendering has been checked and confirmed correct with the mentioned setup * Yellow: we have the recommended configuration but the rendering has not been confirmed correct * Red: we're missing something to properly build g-i with the recommended font = Latin-1 = Base characters (Latin) are taken from fonts-dejavu (existing udeb). || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || br || Breton || fonts-dejavu || fonts-freefont ||ok || || ca || Catalan || fonts-dejavu || fonts-freefont ||ok || || ca@valencia || Valencian-Catalan || fonts-dejavu || fonts-freefont ||ok || || da || Danish || fonts-dejavu || fonts-freefont ||ok || || de || German || fonts-dejavu || fonts-freefont ||ok || || en || English || fonts-dejavu || fonts-freefont ||ok || || es || Spanish || fonts-dejavu || fonts-freefont ||ok || || eu || Basque || fonts-dejavu || fonts-freefont ||ok || || fi || Finnish || fonts-dejavu || fonts-freefont ||ok || || fr || French || fonts-dejavu || fonts-freefont ||ok || || ga || Irish || fonts-dejavu || fonts-freefont ||ok || || gl || Galician || fonts-dejavu || fonts-freefont ||ok || || id || Indonesian || fonts-dejavu || fonts-freefont ||ok || || is || Icelandic || fonts-dejavu || fonts-freefont ||ok || || it || Italian || fonts-dejavu || fonts-freefont ||ok || || ms || Malay || fonts-dejavu || fonts-freefont || Language is not supported yet but uses only ASCII characters || || nb || Norwegian Bokmal || fonts-dejavu || fonts-freefont ||ok || || nl || Dutch || fonts-dejavu || fonts-freefont ||ok || || nn || Norwegian Nynorsk || fonts-dejavu || fonts-freefont ||ok || || pt || Portuguese || fonts-dejavu || fonts-freefont ||ok || || pt_BR || Portuguese (Brazil) || fonts-dejavu || fonts-freefont ||ok || || sq || Albanian || fonts-dejavu || fonts-freefont ||ok || || sv || Swedish || fonts-dejavu || fonts-freefont ||ok || || tl || Tagalog || fonts-dejavu || fonts-freefont ||ok || || xh || Xhosa || fonts-dejavu || fonts-freefont ||ok || = Latin-other = These are also covered by fonts-dejavu. || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || ast || Asturian || fonts-dejavu || fonts-freefont ||ok || || bs || Bosnian || fonts-dejavu || fonts-freefont ||ok || || cs || Czech || fonts-dejavu || fonts-freefont ||ok || || cy || Welsh || fonts-dejavu || fonts-freefont ||ok || || eo || Esperanto || fonts-dejavu || fonts-freefont ||ok || || et || Estonian || fonts-dejavu || fonts-freefont ||ok || || hu || Hungarian || fonts-dejavu || fonts-freefont ||ok || || ku || Kurdish || fonts-dejavu || fonts-freefont ||ok || || lv || Latvian || fonts-dejavu || fonts-freefont ||ok || || lt || Lithuanian || fonts-dejavu || fonts-freefont ||ok || || mg || Malagasy || fonts-dejavu || fonts-freefont ||ok || || pl || Polish || fonts-dejavu || fonts-freefont ||ok || || ro || Romanian || fonts-dejavu || fonts-freefont ||ok || || hr || Croatian || fonts-dejavu || fonts-freefont ||ok || || se || Sami || fonts-dejavu || fonts-freefont ||ok || || sk || Slovak || fonts-dejavu || fonts-freefont ||ok || || sl || Serbian (Latin) || fonts-dejavu || fonts-freefont ||ok || || sl || Slovenian || fonts-dejavu || fonts-freefont ||ok || || tr || Turkish || fonts-dejavu || fonts-freefont ||ok || || vi || Vietnamese || fonts-dejavu || fonts-freefont;[[http://www.vn.net/staticpages/index.php/VietUniFont-HanNomSet|HanNomSet]],[[http://www.vn.net/staticpages/index.php/VietUniFont-TriChlorSet|TriChlorSet]] ||The licenses for [[http://www.vn.net/staticpages/index.php/VietUniFont-HanNomSet|HanNomSet]] have not been studied. [[http://www.vn.net/staticpages/index.php/VietUniFont-TriChlorSet|TriChlorSet]] is "all rights reserved". || || wo || Wolof || fonts-dejavu || fonts-freefont ||Display is correct with fonts-freefont, even the "ŋ" characters; dejavu state is unknown || = Non-Latin scripts = == Armenian script == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || hy || Armenian || fonts-dejavu || ||Language not yet in the installer || == Georgian script == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || ka || Georgian || fonts-dejavu || fonts-freefont, ttf-bpg-georgian-fonts || Udeb OK || == Greek script == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || el || Greek || fonts-dejavu || fonts-freefont || With fonts-freefont, Greek is a little blurred but ok: see [[http://lists.debian.org/debian-boot/2006/02/msg00662.html|this]] thread || == Hebrew script == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || he ||Hebrew || fonts-dejavu || fonts-freefont || OK for translator || == Indic family scripts == || '''Lang Code''' || '''Language Name''' || '''Script''' || '''Current Font pkg''' || '''Other Font pkg''' || '''Status / Observations''' || || bn || Bengali || Bengali || fonts-freefont || ttf-bengali-fonts || MuktiNarrow in ttf-bengali-fonts recommended by translators (udeb requested with DebianBug:375475) || || gu || Gujarati || Gujarati || fonts-freefont || ttf-gujarati-fonts || || || hi || Hindi || Devanagari || fonts-freefont || ttf-devanagari-fonts || Gargi_1.7.ttf in ttf-devanagari-fonts also possible. || || kn || Kannada || Kannada || fonts-knda || || Uses Kannada script. Kadige-* in ttf-kannada-fonts suggested by indlinux contributors. || || ml || Malayalam || Malayalam || fonts-mlym || || Rachana_w01.otf is used. || || mr || Marathi || Devanagari || fonts-freefont || ttf-devanagari-fonts || Gargi_1.7.ttf in ttf-devanagari-fonts also possible || || ne || Nepali || Devanagari || fonts-freefont || ttf-devanagari-fonts || Gargi_1.7.ttf in ttf-devanagari-fonts recommended by Paras pradhan || || pa || Punjabi || Gurmukhi || fonts-freefont || ttf-punjabi-fonts || Saab.ttf of lohit_pa.ttf from ttf-punjabi-fonts also possible (soumyadip: well I was reading somewhere that !AnmolUni was better) - this font should be (apparently) in ttf-punjabi-fonts, but is not currently (1:0.4.7) || || sa || Sanskrit || Devanagari || fonts-freefont || ttf-devanagari-fonts || Language not yet in the installer || || si || Sinhala || Sinhala || fonts-noto-hinted || || || || ta || Tamil || Tamil || fonts-taml || || TSCu_Paranar in ttf-tamil-fonts || || te || Telugu || Telugu || fonts-telu || || Pothana2000 suggested by translator. || || ks || Kashmiri || Devanagari || fonts-freefont || ttf-devanagari-fonts || Gargi_1.7.ttf in ttf-devanagari-fonts also possible. Doubts about complete support in Freefont. It seems that Kashmiri has special glyphs wrt other Devanagari-based languages. See [ http://pravins.fedorapeople.org/Draft/kashmiri_draft.html that link] for more details || Resources: ''#indlinux'' IRC channel on ''irc.freenode.net'' and eventually < debian-in-workers@lists.alioth.debian.org > There was [[http://lists.debian.org/debian-boot/2005/12/msg00338.html|a report]] stating that Bengali does not look right. DebianBug:343446 tries to analyze the problem. Bengali: Mukti Narrow looks great, but there is some more stripping to be done (apparently) because this font is silently overridden by freefont (probably). (by silent I mean that "fc-list :lang:bn" does not list nothing other than Mukti, but the installer uses something else, anyway). Update: DebianBug:343446 confirms that MuktiNarrow should be used. Although freefont has support for Bengali, it seems that there are still some problems. == Ethiopic script == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || am ||Amharic || fonts-sil-abyssinica || || Abyssinica_SIL to be used. || == Tibeto-Burman family scripts == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Font pkg''' || '''Status / Observations''' || || dz ||Dzongkha || fonts-tibetan-machine || ttf-dzongkha || udeb OK || == South-East Asian scripts == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Font pkg''' || '''Status / Observations''' || || km || Khmer || fonts-khmeros || || KhmerOSsys.ttf udeb OK || || lo || Lao || fonts-dejavu || ttf-lao || Font named Phetsarath (ttf-lao) || || my ||Burmese || fonts-sil-padauk || || Translators recommend a font named Myanmar3 from [http://www.myanmarnlp.net.mm/ MyanmarNLP]. Needs to be packaged. padauk can be used in the meantime || || th || Thai || fonts-thai-tlwg || none || Font named Loma. udeb OK || == Arabic scripts == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || ar || Arabic || fonts-farsiweb || fonts-arabeyes || Font named Nazli ae_!AlMohanad from ttf-arabeyes also possible || || fa || Persian || fonts-farsiweb || || Font named Nazli || || sd || Sindhi || || || Translator recommends Scheherazade from fonts-sil-scheherazade. udeb requested through DebianBug:660819. Language not yet in the installer || || ur || Urdu || fonts-nafees || fonts-paktype || Font named NafeesWeb. Language not yet in the installer || || ug || Uyghur || fonts-ukij-uyghur || Font named UKIJ Tuz Tom || udeb OK || Resources: ''#arabeyes'' IRC channel on ''irc.freenode.net'' == Chinese/Japanese/Korean scripts == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || ja || Japanese || fonts-android || || || || ko || Korean || fonts-android || || || || zh_CN || Chinese (Simplified) || fonts-android || || || || zh_TW || Chinese (Traditional) || fonts-android || || || We no longer use ttf-cjk-compact-udeb for CJK for some time now! Following are historical information for CJK languages, no longer up-to-date: Japanese: Sazanami-Gothic recommended. A stripped ttf is about 160KB. Still there is a [[http://lists.debian.org/debian-boot/2006/02/msg00936.html|issue]] with the kana and kanji glyphs which are not well mixed for Japanese. Kenshi Muto confirmed personally that the issue is present. No solution for this problem, yet. Korean: Korean fonts are taken from !UnDotum confirmed OK by translator For Chinese and Japanese [[http://lists.debian.org/debian-boot/2005/12/msg00150.html|we currently use the fonts prepared by Kenshi Muto]] (ttf-compact-fonts). For an overview, see [[http://people.debian.org/~kmuto/d-i/cjk/cjk.html|this page]]. We should make sure that none of the fonts below provides glyphs for other scripts than the ones which they were introduced (currently there are latin glyphs provided by them which take up space and harm us a lot for latin scripts). Chinese and Japanese have an [[http://en.wikipedia.org/wiki/Han_unification|unification problem]]. Unicode defines same codepoint against different glyphs between Japanese/Chinese(/Korean, but the Korean translation does not use any glyphs from this Unified Ideographs region so Korean is free from this issue). Furthermore Chinese font face and Japanese font face are different (do you think Helvetica and !NewCentury are same? :-P ). So they don't like to use them together. For Korean we now use [[http://lists.debian.org/debian-boot/2005/12/msg00150.html|ttf-compact-fonts]], which has stripped !UnDotum.ttf from ttf-unfonts (maintained by Changwoo Ryu < cwryu@debian.org >) We previous included complete ttfs, but these took a lot of space: * !UnDotum.ttf * !UnDotumBold.ttf We did have report stating that the !UnDotum looked right: http://lists.debian.org/debian-boot/2005/11/msg01409.html == Cyrillic scripts == || '''Lang Code''' || '''Language Name''' || '''Current Font pkg''' || '''Other Fonts pkg''' || '''Status / Observations''' || || be || Belarusian || fonts-dejavu || || || || bg || Bulgarian || fonts-dejavu || || || || ky || Kirghiz || fonts-dejavu || || Language not yet in the installer || || kk || Kazakh || fonts-dejavu || || || || mk || Macedonian || fonts-dejavu || || || || os || Ossetian || fonts-dejavu || ||Language not yet in the installer || || ru || Russian || fonts-dejavu || || || || sr || Serbian || fonts-dejavu || || || || tg || Tajik || fonts-dejavu || || || || uk || Ukrainian || fonts-dejavu || || || == Creating screenshots == As a prerequisite your machine must have been started with support for framebuffer * get a minimal g-i image (around 62MB) and create the test environment: {{{ $ mkdir -p g-i/tree && cd g-i $ wget https://d-i.debian.org/daily-images/amd64/daily/netboot/gtk/mini.iso $ mount -t iso9660 mini.iso /mnt -o loop $ cd tree/ $ zcat /mnt/initrd.gz | cpio -i $ cd .. $ umount /mnt }}} * put all you need for taking the screenshots (text files, application, etc) in the test environment: {{{ $ wget http://d-i.alioth.debian.org/gtk-frontend/screenshots/samples.tgz $ tar xzf samples.tgz -C tree/ }}} * grab the [[https://salsa.debian.org/installer-team/d-i/blob/master/scripts/g-i/chroot_g-i.txt|script]] which does some black magic and execute it: {{{ $ wget -O chroot_g-i.txt 'https://salsa.debian.org/installer-team/d-i/blob/master/scripts/g-i/chroot_g-i.txt' $ sh chroot_g-i.txt $ chroot tree /bin/ash }}} You can take a screenshoot for Italian language: {{{ $ ./gtk_font_tester it.txt 800 600 $ mv /var/log/test_0.png /var/log/it.png }}} or if you want to take a screenshot for all supported languages (script available here: [[attachment:take_shots.sh]]): {{{ $ take_shots.sh }}} It's now possible to leave the chroot (CTRL-d) and see the pictures inside tree/var/log