Fonts: Difference between revisions

From OpenMW Wiki
Jump to navigation Jump to search
No edit summary
(Wipe out the page, RTD it is)
 
Line 1: Line 1:
'''Morrowind .fnt fonts'''
Font support information has moved to our official documentation on [https://openmw.readthedocs.io/en/master/reference/modding/font.html ReadTheDocs].
 
Morrowind uses a custom .fnt file format. It is not compatible with the Windows Font File .fnt format, nor compatible with .fnt formats from any other Bethesda games. To our knowledge, the format is undocumented and no tools for viewing or editing these fonts exist.
 
OpenMW can load this format and convert it on the fly into something usable (see font loader
[https://github.com/OpenMW/openmw/blob/master/components/fontloader/fontloader.cpp#L210 source code]). In OpenMW 0.32, an --export-fonts command line option was added to write the converted font (a PNG image and an XML file describing the position of each glyph in the image) to the current directory.
 
'''TrueType fonts'''
 
Unlike vanilla Morrowind, OpenMW directly supports TrueType (.ttf) fonts. This is the recommended way to create new fonts.
 
'''Pre-0.45 way'''
 
* To replace the primary "Magic Cards" font:
:* Download the [http://isaskar.github.io/Pelagiad/ Pelagiad font] by Isak Larborn (aka Isaskar).
:* Install the openmw_font.xml file into resources/mygui/openmw_font.xml in your OpenMW installation.
:* Copy Pelagiad.ttf into resources/mygui/ as well.
:* If desired, you can now delete the original Magic_Cards* files from your Data Files/Fonts directory.
* You can also replace the Daedric font:
:* Download [https://github.com/georgd/OpenMW-Fonts Ayembedt] by Georg Duffner.
:* Install OMWAyembedt.otf into /resources/mygui/ folder in your OpenMW installation.
:* Add the following lines to openmw_font.xml:
 
    <Resource type="ResourceTrueTypeFont" name="Daedric">
        <Property key="Source" value="OMWAyembedt.otf"/>
        <Property key="Size" value="24"/>
        <Property key="Resolution" value="50"/>
        <Property key="Antialias" value="false"/>
        <Property key="TabWidth" value="8"/>
        <Property key="OffsetHeight" value="0"/>
        <Codes>
            <Code range="32"/>
            <Code range="65 90"/>
            <Code range="97 122"/>
        </Codes>
    </Resource>
:* This font is missing a few glyphs (mostly punctuation), but is complete in the primary glyphs.
:* If desired, you can now delete the original daedric* files from your Data Files/Fonts directory.
* Another replacement for the Daedric font is the [http://www.uesp.net/wiki/File:Obliviontt.zip Oblivion] font by Dongle.
:* Install the Oblivion.ttf file resources/mygui/.
:* The openmw_fonts.xml entry is:
 
    <Resource type="ResourceTrueTypeFont" name="Daedric">
        <!-- <Property key="Source" value="OMWAyembedt.otf"/> -->
        <Property key="Source" value="Oblivion.ttf"/>
        <Property key="Size" value="30"/>
        <Property key="Resolution" value="50"/>
        <Property key="Antialias" value="false"/>
        <Property key="TabWidth" value="8"/>
        <Property key="OffsetHeight" value="0"/>
        <Codes>
            <Code range="32 34"/>
            <Code range="39"/>
            <Code range="44 46"/>
            <Code range="48 59"/>
            <Code range="63"/>
            <Code range="65 90"/>
            <Code range="97 122"/>
            <Code range="172 173"/>
            <Code range="255"/>
            <Code range="376"/>
            <Code range="894"/>
            <Code range="8211 8212"/>
            <Code range="8216 8217"/>
            <Code range="8220 8221"/>
        </Codes>
    </Resource>
 
 
'''0.45+ way'''
 
:* Download the [http://isaskar.github.io/Pelagiad/ Pelagiad font] by Isak Larborn (aka Isaskar).
:* Download [https://github.com/georgd/OpenMW-Fonts Ayembedt] by Georg Duffner or the Daedric font is the [http://www.uesp.net/wiki/File:Obliviontt.zip Oblivion] font by Dongle.
:* Create the Fonts directory near your openmw.cfg.
:* Install *.ttf/*.otf files into Fonts folder.
:* Create openmw_font.xml in the Fonts folder and copy entries from openmw_font.xml attached to downloaded fonts. An example for Pelagiad + Oblivion:
 
    <?xml version="1.0" encoding="UTF-8"?>
    <MyGUI type="Resource" version="1.1">
        <Resource type="ResourceTrueTypeFont" name="Magic Cards">
            <Property key="Source" value="Pelagiad.ttf"/>
            <Property key="Antialias" value="false"/>
            <Property key="TabWidth" value="8"/>
            <Property key="OffsetHeight" value="0"/>
            <Codes>
                <Code range="33 126"/>
                <Code range="161"/>
                <Code range="173"/>
                <Code range="180"/>
                <Code range="191 255"/>
                <Code range="260 263"/>
                <Code range="268 271"/>
                <Code range="280 283"/>
                <Code range="305"/>
                <Code range="321 324"/>
                <Code range="327 328"/>
                <Code range="339"/>
                <Code range="344 347"/>
                <Code range="352 353"/>
                <Code range="356 357"/>
                <Code range="366 367"/>
                <Code range="377 382"/>
                <Code range="1025"/>
                <Code range="1040 1103"/>
                <Code range="1105"/>
            <Code range="8208 8212"/>
                <Code range="8216 8217"/>
                <Code range="8220 8221"/>
                <Code range="8228 8230"/>
                <Code hide="198"/>
                <Code hide="208"/>
                <Code hide="215 216"/>
            <Code hide="222"/>
                <Code hide="230"/>
                <Code hide="240"/>
                <Code hide="247 248"/>
                <Code hide="254"/>
            </Codes>
        </Resource>
    <Resource type="ResourceTrueTypeFont" name="Daedric">
        <Property key="Source" value="Oblivion.ttf"/>
        <Property key="Antialias" value="false"/>
        <Property key="TabWidth" value="8"/>
        <Property key="OffsetHeight" value="0"/>
        <Codes>
            <Code range="32 34"/>
            <Code range="39"/>
            <Code range="44 46"/>
            <Code range="48 59"/>
            <Code range="63"/>
            <Code range="65 90"/>
            <Code range="97 122"/>
            <Code range="172 173"/>
            <Code range="255"/>
            <Code range="376"/>
            <Code range="894"/>
            <Code range="8211 8212"/>
            <Code range="8216 8217"/>
            <Code range="8220 8221"/>
        </Codes>
    </Resource>
    </MyGUI>
 
Note: Resolution and Size keys have no effects since they are handled by settings.cfg.
:* Tweak fonts resolution and size by editing the settings.cfg to fit your DPI and resolution. Since Pelagiad glyphs are quite small, it is recommended to increase its size:
 
    [GUI]
    font size = 17
    ttf resolution = 96
 
Note: you do not need to take UI scaling factor - OpenMW will take it in account automatically.
:* If desired, you can now delete the original Magic_Cards* files from your Data Files/Fonts directory.
 
 
In theory, you can use any TrueType font in the same manner.
 
 
'''Bitmap fonts'''
 
Morrowind .fnt files are essentially a bitmap font, but using them is discouraged because of no Unicode support.
MyGUI has its own format for bitmap fonts. An example can be seen by using the --export-fonts command line option (see above), which converts Morrowind .fnt to a MyGUI bitmap font. This is the recommended format to use if you wish to edit Morrowind's bitmap font or create a new bitmap font.

Latest revision as of 15:31, 30 December 2018

Font support information has moved to our official documentation on ReadTheDocs.