<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>OpenGL text rendering library</title>
		<link>http://www.allegro.cc/forums/view/587775</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Wed, 04 Oct 2006 16:40:19 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>As it looks like I might finally have some spare time coming up, I thought I&#39;d start working on my (AllegroGL) projects again. However, I need a decent text rendering library to proceed.</p><p>I need at least:
</p><ul><li><p>printf() equivalent functionality.</p></li><li><p>Text justification.</p></li><li><p>Unicode (UTF-8) support.</p></li><li><p>TTF support.</p></li></ul><p>&lt;/li&gt;</p><p>AllegroGL&#39;s built-in text functionality doesn&#39;t handle justification (and I haven&#39;t managed to wrangle it to do Unicode either) and Glyph keeper had no official support for OpenGL last I checked (which is right before it was left to bit rot). So what else is out there?</p><p>[EDIT]<br />Added the cross-platform requirement I forgot earlier.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (gnolam)</author>
		<pubDate>Thu, 28 Sep 2006 16:23:24 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><a href="http://fudgefont.sourceforge.net/moin/">Fudgefont</a> if your on linux, I had trouble with building on mingw. I don&#39;t know if it meets all of your requirements but must be worth a look.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kikabo)</author>
		<pubDate>Thu, 28 Sep 2006 16:40:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>And of course, it comes with a non-make own build system and Yet Another Dependency (and LF endings in the Readmes). <b>sigh</b><br />I&#39;ll try to check it out and report back. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /></p><p>[EDIT]<br />Nope. No dice. Didn&#39;t manage to compile it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (gnolam)</author>
		<pubDate>Tue, 03 Oct 2006 04:32:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Nope. No dice. Didn&#39;t manage to compile it.
</p></div></div><p>
Well, that makes me feel better then.</p><p>It&#39;s a shame because it looks really useful, I did mean to write a makefile, someone must really hate make to use python as a build system which is only likely to work on systems where make would have worked anyway ...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kikabo)</author>
		<pubDate>Wed, 04 Oct 2006 00:42:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Gnolam:</p><p>Fix GlyphKeeper, or FreeType in OpenLayer for us. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Wed, 04 Oct 2006 00:43:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Fix GlyphKeeper
</p></div></div><p>
I have neither the time nor will to fix a library whose internals I&#39;m unfamiliar with.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
FreeType in OpenLayer
</p></div></div><p>
I don&#39;t use it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (gnolam)</author>
		<pubDate>Wed, 04 Oct 2006 01:03:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You could just rip the text rendering methods if you wanted...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Fladimir da Gorf)</author>
		<pubDate>Wed, 04 Oct 2006 01:33:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>well I fudged <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> a makefile just to link the examples locally but with mixed results <img src="http://www.allegro.cc/forums/smileys/sad.gif" alt=":(" /></p><p>...oh, I had to change include &lt;&gt; to include &quot;&quot; and add END_OF_MAIN() to examples 2 and 3</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><span class="p"># make gl=1   == build allegrogl examples</span></td></tr><tr><td class="number">2</td><td>&#160;</td></tr><tr><td class="number">3</td><td>cc<span class="k3">=</span>gcc</td></tr><tr><td class="number">4</td><td>CFLAGS<span class="k3">=</span><span class="k3">-</span>Wall <span class="k3">-</span>Isrc  <span class="k3">-</span>fomit-frame-pointer <span class="k3">-</span>O2 <span class="k3">-</span>ffast-math <span class="k3">-</span>funroll-loops</td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td>OBJDIR <span class="k3">=</span> build<span class="k3">/</span>shared<span class="k3">/</span>release</td></tr><tr><td class="number">7</td><td>&#160;</td></tr><tr><td class="number">8</td><td>&#160;</td></tr><tr><td class="number">9</td><td>ifdef MINGDIR</td></tr><tr><td class="number">10</td><td>&#160;</td></tr><tr><td class="number">11</td><td>  ifdef gl</td></tr><tr><td class="number">12</td><td>    CFLAGS<span class="k3">=</span><span class="k3">-</span>DALLEGROGL</td></tr><tr><td class="number">13</td><td>    LDFLAGS<span class="k3">=</span><span class="k3">-</span>lagl <span class="k3">-</span>lopengl32 <span class="k3">-</span>lglu32 </td></tr><tr><td class="number">14</td><td>    suffix<span class="k3">=</span>_gl</td></tr><tr><td class="number">15</td><td>  endif</td></tr><tr><td class="number">16</td><td>&#160;</td></tr><tr><td class="number">17</td><td>  LDFLAGS<span class="k3">+</span><span class="k3">=</span><span class="k3">-</span>lm <span class="k3">-</span>mwindows <span class="k3">-</span>Wl,<span class="k3">-</span><span class="k3">-</span>subsystem,windows <span class="k3">-</span>lalleg <span class="k3">-</span>luser32 <span class="k3">-</span>lgdi32  <span class="k3">-</span>lfreetype</td></tr><tr><td class="number">18</td><td>  ext<span class="k3">=</span>.exe</td></tr><tr><td class="number">19</td><td><span class="k1">else</span></td></tr><tr><td class="number">20</td><td>&#160;</td></tr><tr><td class="number">21</td><td>  ifdef gl</td></tr><tr><td class="number">22</td><td>    CFLAGS<span class="k3">=</span><span class="k3">-</span>DALLEGROGL</td></tr><tr><td class="number">23</td><td>    LDFLAGS<span class="k3">=</span><span class="k3">-</span>lagl <span class="k3">-</span>lGL <span class="k3">-</span>lGLU</td></tr><tr><td class="number">24</td><td>  endif</td></tr><tr><td class="number">25</td><td>&#160;</td></tr><tr><td class="number">26</td><td>  LDFLAGS<span class="k3">+</span><span class="k3">=</span><span class="k3">-</span>lm `allegro-config <span class="k3">-</span><span class="k3">-</span>libs` `freetype-config <span class="k3">-</span><span class="k3">-</span>libs`</td></tr><tr><td class="number">27</td><td>  CFLAGS<span class="k3">+</span><span class="k3">=</span>`freetype-config <span class="k3">-</span><span class="k3">-</span>cflags`</td></tr><tr><td class="number">28</td><td>endif</td></tr><tr><td class="number">29</td><td>&#160;</td></tr><tr><td class="number">30</td><td>FILES   <span class="k3">=</span> example1.c example2.c example3.c</td></tr><tr><td class="number">31</td><td>EXBINS <span class="k3">=</span> $<span class="k2">(</span>addprefix src<span class="k3">/</span>, $<span class="k2">(</span>addsuffix $<span class="k2">(</span>suffix<span class="k2">)</span>$<span class="k2">(</span>ext<span class="k2">)</span>, $<span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_58.html" target="_blank">basename</a> $<span class="k2">(</span>FILES<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">32</td><td>EXOBJS <span class="k3">=</span> $<span class="k2">(</span>addprefix $<span class="k2">(</span>OBJDIR<span class="k2">)</span><span class="k3">/</span>, $<span class="k2">(</span>addsuffix $<span class="k2">(</span>suffix<span class="k2">)</span>.o, $<span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_58.html" target="_blank">basename</a> $<span class="k2">(</span>FILES<span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span></td></tr><tr><td class="number">33</td><td>LIB <span class="k3">=</span> $<span class="k2">(</span>OBJDIR<span class="k2">)</span><span class="k3">/</span>fudgefont.o</td></tr><tr><td class="number">34</td><td>&#160;</td></tr><tr><td class="number">35</td><td>all:  library examples</td></tr><tr><td class="number">36</td><td>&#160;</td></tr><tr><td class="number">37</td><td>library: $<span class="k2">(</span>LIB<span class="k2">)</span></td></tr><tr><td class="number">38</td><td>&#160;</td></tr><tr><td class="number">39</td><td>examples: $<span class="k2">(</span>EXBINS<span class="k2">)</span></td></tr><tr><td class="number">40</td><td>&#160;</td></tr><tr><td class="number">41</td><td>$<span class="k2">(</span>BINARY<span class="k2">)</span> <span class="k2">:</span> $<span class="k2">(</span>OBJS<span class="k2">)</span></td></tr><tr><td class="number">42</td><td>  $<span class="k2">(</span>cc<span class="k2">)</span> <span class="k3">-</span>o $<span class="k2">(</span>BINARY<span class="k2">)</span> $<span class="k2">(</span>OBJS<span class="k2">)</span> $<span class="k2">(</span>LDFLAGS<span class="k2">)</span></td></tr><tr><td class="number">43</td><td>&#160;</td></tr><tr><td class="number">44</td><td>src<span class="k3">/</span>example%$<span class="k2">(</span>ext<span class="k2">)</span> <span class="k2">:</span> $<span class="k2">(</span>OBJDIR<span class="k2">)</span><span class="k3">/</span>example%.o</td></tr><tr><td class="number">45</td><td>  $<span class="k2">(</span>cc<span class="k2">)</span> <span class="k3">-</span>o $@ $<span class="k2">(</span>LIB<span class="k2">)</span> $<span class="k3">&lt;</span> $<span class="k2">(</span>LDFLAGS<span class="k2">)</span></td></tr><tr><td class="number">46</td><td>&#160;</td></tr><tr><td class="number">47</td><td>$<span class="k2">(</span>EXBINS<span class="k2">)</span> <span class="k2">:</span> $<span class="k2">(</span>EXOBJS<span class="k2">)</span></td></tr><tr><td class="number">48</td><td>&#160;</td></tr><tr><td class="number">49</td><td>&#160;</td></tr><tr><td class="number">50</td><td>$<span class="k2">(</span>OBJDIR<span class="k2">)</span><span class="k3">/</span>%$<span class="k2">(</span>suffix<span class="k2">)</span>.o: src<span class="k3">/</span>%.c</td></tr><tr><td class="number">51</td><td>  $<span class="k2">(</span>cc<span class="k2">)</span> $<span class="k2">(</span>CFLAGS<span class="k2">)</span> <span class="k3">-</span>Isrc <span class="k3">-</span>c $<span class="k3">&lt;</span> <span class="k3">-</span>o $@</td></tr><tr><td class="number">52</td><td>&#160;</td></tr><tr><td class="number">53</td><td>clean:</td></tr><tr><td class="number">54</td><td>  del $<span class="k2">(</span>OBJDIR<span class="k2">)</span><span class="c">/*.*</span></td></tr><tr><td class="number">55</td><td><span class="c"></span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (kikabo)</author>
		<pubDate>Wed, 04 Oct 2006 16:40:19 +0000</pubDate>
	</item>
</rss>
