From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <7d1bd2a8baa2058604a87d63c495ea42@quanstro.net> From: erik quanstrom Date: Wed, 22 Mar 2006 20:03:29 -0600 To: 9fans@cse.psu.edu Subject: Re: [9fans] ttf2subf MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-nabnpbncepsqjqzqvhmnxrqzlu" Topicbox-Message-UUID: 1bc3b776-ead1-11e9-9d60-3106f5b1d025 This is a multi-part message in MIME format. --upas-nabnpbncepsqjqzqvhmnxrqzlu Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit i've been using a version that makes an attempt to generate as few subfonts as possible. the last time i goggled ttf2subf the website located was down. i've been working with code2000, which looks hideous in mono mode, but is pretty readable subpixel or antialias mode, but ttf2subf is too agressive in its antialiasing and does not snap near-grid vertical or horizontal lines to the grid. i cleaned up the code a bit and think that in subpixel mode, it generates non-grey pixels. that is pixels like char a,b,c; (a<<24) | (b<<16) | (c<<8) | 0xff where a, b, c are not all equal. but i have not yet come up with a good solution to either issue. - erik On Wed Mar 22 18:51:46 CST 2006, mirtchovski@gmail.com wrote: > i did for a while and you can find the latest source on sources or on > the web. i heard there's another ttf2subf which gets better results > generating less subfonts (which is what i worked last on, and i think > i made reasonable success). i have no idea whether the other one has > made it out. > > On 3/22/06, erik quanstrom wrote: > > has anybody been working on this program? (it converts truetype fonts > > to plan9 subfonts by using freefont.) > > > > - erik > > --upas-nabnpbncepsqjqzqvhmnxrqzlu Content-Type: multipart/mixed; boundary="upas-gfcvgmbfhtpkoymldepptkbwcc" Content-Disposition: inline This is a multi-part message in MIME format. --upas-gfcvgmbfhtpkoymldepptkbwcc Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit from postmaster@ethel: The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Type: application/octet-stream Content-Disposition: attachment; filename=ttf2subf.tar.bz2 Content-Transfer-Encoding: base64 --upas-gfcvgmbfhtpkoymldepptkbwcc Content-Type: application/octet-stream Content-Disposition: attachment; filename="ttf2subf.tar.bz2.suspect" Content-Transfer-Encoding: base64 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 --upas-gfcvgmbfhtpkoymldepptkbwcc--