<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8321278963329431663</id><updated>2011-04-21T12:18:39.557-07:00</updated><category term='font drawing in c#'/><title type='text'>The Jubbernaut</title><subtitle type='html'>c# coding examples</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jubbernaut.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8321278963329431663/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jubbernaut.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>jubber</name><uri>http://www.blogger.com/profile/08323930285552268375</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8321278963329431663.post-2792692889594241962</id><published>2006-12-12T02:28:00.000-08:00</published><updated>2006-12-12T03:20:05.277-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='font drawing in c#'/><title type='text'>How to draw a game font</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_ShNzg9W4tAM/RX6IzmKpF6I/AAAAAAAAAAM/8VKlKO63fcw/s1600-h/font1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5007590255682459554" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_ShNzg9W4tAM/RX6IzmKpF6I/AAAAAAAAAAM/8VKlKO63fcw/s320/font1.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Make a font sprite, 10 blocks by 10 blocks - each block 32 by 32 pixels. Of course you can change these numbers for a bigger font.&lt;br /&gt;&lt;br /&gt;Here is one I made earlier - there is no copyright on this font as I made it. I'm a coder though, so my idea of art is a bit different from most artists :-)&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Fill it with ascii characters 32 onwards. 32 top left (ie space)&lt;br /&gt;&lt;br&gt;&lt;br /&gt;Load the graphics into c#, .net, Basic, c or the language of your choice. &lt;br /&gt;&lt;br&gt;&lt;br /&gt;Create a draw font command - something like the following&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;div style="color:#3333ff;"&gt;const int FONT_WIDTH = 32;&lt;br /&gt;const int FONT_HEIGHT = 32&lt;br /&gt;const int GRID_SIZE = 10;&lt;br /&gt;const int FONT_SPACING = 4; // Number of pixels between each character to aid legibility&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br /&gt;void draw_font(int x, int y, string data )&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Rectangle rec1, rec2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;int character;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec1.X = x; rec1.Y = y;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec1.Width = FONT_WIDTH; rec1.Height = FONT_HEIGHT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec2.Width = FONT_WIDTH; rec2.Height = FONT_HEIGHT;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for (int loop = 0; loop &amp;#60; data.Length; loop++ )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec2.X = FONT_WIDTH * ((character-SPACE_CHAR) % GRID_SIZE);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec2.Y = FONT_HEIGHT * ((character-SPACE_CHAR) / GRID_SIZE);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec1.Y = y;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if( character &amp;#62; SPACE_CHAR )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;spriteBatch.Draw(texture_font, rec1, rec2, Color.White);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rec1.X += FONT_SPACING;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;And that's pretty much it. Of course you can add kerning by moving some of the characters around - typically i and l will need you to move back a bit and m and w the other way - for instance;&lt;br /&gt;&lt;div&gt;&lt;span style="color:#3333ff;"&gt;if ((character == 'M') (character == 'W') (character == 'm') (character == 'w'))&lt;br /&gt;rec1.X += 8;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;compensates for most fonts having larger m and w characters&lt;br /&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;Ever yours,&lt;div&gt;&lt;strong&gt;The Jubbernaut&lt;/strong&gt;&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8321278963329431663-2792692889594241962?l=jubbernaut.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jubbernaut.blogspot.com/feeds/2792692889594241962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8321278963329431663&amp;postID=2792692889594241962' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8321278963329431663/posts/default/2792692889594241962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8321278963329431663/posts/default/2792692889594241962'/><link rel='alternate' type='text/html' href='http://jubbernaut.blogspot.com/2006/12/how-to-draw-game-font.html' title='How to draw a game font'/><author><name>jubber</name><uri>http://www.blogger.com/profile/08323930285552268375</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ShNzg9W4tAM/RX6IzmKpF6I/AAAAAAAAAAM/8VKlKO63fcw/s72-c/font1.jpg' height='72' width='72'/><thr:total>2</thr:total></entry></feed>
