Fonts for OpenSim dynamic textures

OpenSim has functions to generate dynamic textures, including text, but what fonts can it use?

For OpenSim on OS X (Server) it turns out that all fonts installed in /Library/System/Fonts in addition to fonts installed in ~/Library/Fonts for the user that OpenSim is running under is available to mono and therefore to OpenSim. 

A discussion on how to make fonts available for OpenSim running on Linux and Windows can be found in the Kitely Blog, where they also provide a script for testing the fonts available. 

A modified script that includes some of the Apple installed fonts is below. Place the script in a prim and scale it so the texture with the fonts becomes readable. Fonts existing on the system will show properly formatted, the rest will be set in the same type. 

//fonttest MT


list lFonts = ["Abadi MT","Agency FB","Algerian","Andale Mono","Arial","Arial Rounded MT","Avant-Garde","Baskerville Old Face","Bauhaus 93","Beesknees ITC","Bell MT","Berlin Sans FB","Bernard MT","BernhardMod BT","Bitstream Vera Sans","Bitstream Vera Sans Mono","Bitstream Vera Serif","Blackadder ITC","Blackletter 686 BT","Book Antiqua","Bookman Old Style","Bradley Hand ITC","Braggadocio","Britannic","Broadway","Brush738 BT","Brush Script MT","Brushwood Italic","Californian FB","Calisto MT","CaslonOpenface BT","Castellar","Centaur","Century Gothic","Century Schoolbook","Chiller","Colonna MT","Comic Sans MS","Cooper","Copperplate Gothic","Courier","Courier New","Curlz MT","Desdemona","Edwardian Script ITC","Elephant","Engravers MT","EngraversGothic BT","Eras ITC","Eurostile","Felix Titling","Flexure","Footlight MT","Forte","Franklin Gothic Book","Freestyle Script","French Script MT","Garamond","Georgia","Gigi","Gill Sans MT","Gloucester MT","Goudy Old Style","Goudy Stout","Gradl","Haettenschweiler","Harlow Solid Italic","Harrington","Helvetia","High Tower Text","Hippo","Humanist521 Bold Cn BT","Impact","Imprint MT Shadow","Informal Roman","Jokerman","Juice ITC","Kino MT","Kristen ITC","Kunstler Script","LcdD","Lucida Blackletter","Lucida Calligraphy","Lucida Fax","Lucida Handwriting","Lucida Sans","Lucida Sans Typewriter","Magneto","Maiandra GD","Matisse ITC","Matura MT Script Capitals","Mead","Mercurius Script MT","Mistral","Modern No. 20","Monotype Corsiva","MS Sans Serif","News Gothic MT","Niagara Engraved","Niagara Solid","

OCR A","Old English Text MT","Onyx","Onyx BT","Oz Handicraft BT","Palace Script MT","Palatino Linotype","Papyrus","Parchment","Perpetua Titling MT","Placard Condensed","Playbill","Poor Richard","Pristina","QuickType","Rage","Ransom","Ravie","Ribbon131 Bd BT","Rockwell","Script MT","ShelleyVolante","Showcard Gothic","Snap ITC","Stencil","Swiss721 BlkEx BT","Tahoma","Tempus Sans ITC","Terminal","Times New Roman","T-Roman","Transam","Trebuchet MS","Tw Cen MT","Utopia","Verdana","Viner Hand ITC","Vivaldi","Vladimir Script","Westminster","Wide Latin","Xerox Sans Serif","Xerox Serif","Utopia","Zapf Chancery",


// Microsoft fonts

"Andale Mono", "Arial", "Arial Black", "Calibri", "Cambria", "Comic Sans MS", "Candara", "Consolas", "Constantia", "Corbel", "Courier New", "Georgia",  "Impact", "Times New Roman", "Webdings",


// urw-fonts

"Bookman", "Zapf Chancery", "URW Gothic L", "Palatino", "New Century Schoolbook",


// Apple fonts

"Helvetica","Palatino","Markerfelt","LucidaGrande","Avenir"

];


string sContentType = "vector";

string sData = "";                               

string sExtraParams = "width:1024,height:1024";

integer i;

integer j;

integer k;


draw_fonts(list fonts)

{

    sData += "PenSize 5; ";

    sData += "PenColour Red; "; 

    sData += "FontSize 14; ";    

    for (i = 0; i <= llGetListLength(fonts); ++i)

    {

        j=i;

        k=1;

        if (i>=40)

        {

            j= i-40;

            k= 250;

        }

        if (i>=80)

        {

            j= i-80;

            k= 500;

        }

        if (i>=120)

        {

            j= i-120;

            k= 750;

        }                 

        //llOwnerSay((string)i+","+(string)j+","+(string)k+llList2String(fonts,i));

        sData += "MoveTo "+(string)k+","+(string)(20*j)+"; ";

        string name = llList2String(fonts,i);

        sData += "FontName "+name+"; Text "+name+";";

    }

    osSetDynamicTextureData("", sContentType, sData, sExtraParams, 0);

}


default

{

    state_entry()

    {

        draw_fonts(lFonts);

    }

}


hypergrid address: hop://grid.xmir.org:8002                                             xmir © 2014-2022