<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://typophile.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Typophile - Question about OT Scripting and file size - Comments</title>
 <link>http://typophile.com/node/46034</link>
 <description>Comments for &quot;Question about OT Scripting and file size&quot;</description>
 <language>en</language>
<item>
 <title>Me too. This was a very</title>
 <link>http://typophile.com/node/46034#comment-282635</link>
 <description>&lt;p&gt;Me too. This was a very useful thread!&lt;/p&gt;
</description>
 <pubDate>Fri,  6 Jun 2008 11:28:55 -0700</pubDate>
 <dc:creator>Eben Sorkin</dc:creator>
 <guid isPermaLink="false">comment 282635 at http://typophile.com</guid>
</item>
<item>
 <title>Hello Miguel, very belated</title>
 <link>http://typophile.com/node/46034#comment-282582</link>
 <description>&lt;p&gt;Hello Miguel, very belated thanks for the information! Karsten&lt;/p&gt;
</description>
 <pubDate>Fri,  6 Jun 2008 07:16:58 -0700</pubDate>
 <dc:creator>k.l.</dc:creator>
 <guid isPermaLink="false">comment 282582 at http://typophile.com</guid>
</item>
<item>
 <title>When I was a kid, we had to</title>
 <link>http://typophile.com/node/46034#comment-282248</link>
 <description>&lt;p&gt;When I was a kid, we had to walk 5 miles through the snow to get to school, uphill both ways . . .&lt;/p&gt;
&lt;p&gt;But actually, I did start withe a PC-XT &amp;#8212; which used the 8088 chip. We typeset using TeX. The way you did it was to kick off your files when you went home at night; it took about 6 hours to run a typical book. Last time I used TeX, the same chore would take around a minute.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m not a machine oriented guy, but the moral is it may seem a bit slow today; it won&amp;#8217;t be tomorrow.&lt;/p&gt;
&lt;p&gt;Now all I gotta figure out is how Nick got one of my Photoshop files (and Nick, add that you&amp;#8217;re using the 16-bit mode for the intermediate, working file . . .)&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 17:42:17 -0700</pubDate>
 <dc:creator>charles_e</dc:creator>
 <guid isPermaLink="false">comment 282248 at http://typophile.com</guid>
</item>
<item>
 <title>There is a lag time in</title>
 <link>http://typophile.com/node/46034#comment-282235</link>
 <description>&lt;p&gt;There is a lag time in opening up a file, or changing a font, when a font with a lot of contextual lookups is involved.&lt;/p&gt;
&lt;p&gt;A user might think this is an issue with the font, but probably not, as the wait time is quite short compared to, say, opening a gigabyte Photoshop file with dozens of layers.&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 15:52:05 -0700</pubDate>
 <dc:creator>Nick Shinn</dc:creator>
 <guid isPermaLink="false">comment 282235 at http://typophile.com</guid>
</item>
<item>
 <title>Speaking of optimization,</title>
 <link>http://typophile.com/node/46034#comment-282217</link>
 <description>&lt;p&gt;Speaking of optimization, Read Roberts explained to me that there&amp;#8217;s not much a font developer can do to reduce the font file size. If the designer really thinks that the typeface is better served by having 30 OpenType features implemented in the font, or 20 contextual lookups, then there&amp;#8217;s no way you can compress that data to become half its size. Surely, sometimes lookups can be shared between features (e.g. you can define a lookup to be used by &amp;#8217;subs&amp;#8217;, and then reference that same lookup in &amp;#8217;sinf&amp;#8217;), but for the most part each feature has its own unique lookup.&lt;/p&gt;
&lt;p&gt;Having said that, from a text engine point of view, contextual lookups will definitely make a bigger dent on the processing performance than one-to-one lookups do, obviously. So, if you need to use contextual lookups try to keep their number low and each context as short as possible. (Contextual lookups are like &lt;a class=&quot;freelinking-external&quot; href=&quot;http://en.wikipedia.org/wiki/Regular_expressions&quot;&gt;regular expressions&lt;/a&gt;, the more complex they are, the longer they take to process. No way to avoid that.)&lt;/p&gt;
&lt;p&gt;Of course there are some good practices a font developer should observe, which will help keep the font file size low. A simple one is to arrange the glyphs in the font into groups. So for example, putting the a–z glyphs into a continuos range, and then ordering their corresponding small cap glyphs (a.sc–z.sc) in the same way, will keep the size of the lookup generated by this substitution rule,&lt;/p&gt;
&lt;p&gt;&lt;code&gt;sub [a b c ... y z] by [a.sc b.sc c.sc ... y.sc z.sc];&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;at its minimum. This is because the GID ranges will be continuos and the offset from the original glyph to the resulting glyph is constant. I should stress that the secret to make this work relies on the way the glyphs are ordered throughout the font, not the way the features are written. This means that, if the glyphs are neatly ordered in the font, it doesn&amp;#8217;t matter if you use the code above, or any of the substitutions below.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;sub [z y ... c b a] by [z.sc y.sc ... c.sc b.sc a.sc];&lt;br /&gt;
sub [c y a ... z b] by [c.sc y.sc a.sc ... z.sc b.sc];&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Actually, recently I did an experiment in this area with one of our biggest Western fonts, Arno Pro. I took the original GlyphOrderAndAliasDB file, randomized the order of its lines (with the exception of the first line which must correspond to the .notdef glyph), and rebuilt one of the Italic fonts. Keep in mind I didn&amp;#8217;t change anything else; the OT code used, the PFA source font and all the supporting files were exactly the same. The results were interesting: 9% increase of the file size (460Kb to 504Kb). I guess the takeaway is, it pays-off to spend some time rationalizing the glyph order.&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 14:45:58 -0700</pubDate>
 <dc:creator>Miguel Sousa</dc:creator>
 <guid isPermaLink="false">comment 282217 at http://typophile.com</guid>
</item>
<item>
 <title>&gt; Do you know in which</title>
 <link>http://typophile.com/node/46034#comment-282198</link>
 <description>&lt;p&gt;&amp;gt; &lt;em&gt;Do you know in which version this was fixed?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;It was fixed in OS X 10.4.9, &lt;a href=&quot;http://support.apple.com/kb/HT1525&quot; title=&quot;http://support.apple.com/kb/HT1525&quot;&gt;http://support.apple.com/kb/HT1525&lt;/a&gt; This problem only affects name-keyed OT-CFF fonts. Here are some screenshots I took at that time. Don&amp;#8217;t try this at home! The likelihood of getting a &lt;a class=&quot;freelinking-external&quot; href=&quot;http://en.wikipedia.org/wiki/Kernel_panic&quot;&gt;kernel panic&lt;/a&gt; is quite high.&lt;br /&gt;
&lt;div class=&quot;imageWrap&quot;&gt;&lt;img src=&quot;/files/Arno_Fontbook_1_5345.png&quot; /&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;imageWrap&quot;&gt;&lt;img src=&quot;/files/Arno_Fontbook_2_6100.png&quot; /&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;imageWrap&quot;&gt;&lt;img src=&quot;/files/Arno_Fontbook_3_6139.png&quot; /&gt;&lt;/div&gt;&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 12:59:57 -0700</pubDate>
 <dc:creator>Miguel Sousa</dc:creator>
 <guid isPermaLink="false">comment 282198 at http://typophile.com</guid>
</item>
<item>
 <title>Must have to do with our</title>
 <link>http://typophile.com/node/46034#comment-282121</link>
 <description>&lt;p&gt;Must have to do with our initials.&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 07:51:44 -0700</pubDate>
 <dc:creator>k.l.</dc:creator>
 <guid isPermaLink="false">comment 282121 at http://typophile.com</guid>
</item>
<item>
 <title>Karsten, I’m still running</title>
 <link>http://typophile.com/node/46034#comment-282093</link>
 <description>&lt;p&gt;Karsten, I&amp;#8217;m still running OSX 10.3.9 also. ;-)&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 06:02:43 -0700</pubDate>
 <dc:creator>kentlew</dc:creator>
 <guid isPermaLink="false">comment 282093 at http://typophile.com</guid>
</item>
<item>
 <title>Thomas — 1) Mac OS used to</title>
 <link>http://typophile.com/node/46034#comment-282072</link>
 <description>&lt;p&gt;Thomas &amp;#8212; &lt;cite&gt;1) Mac OS used to have a limit on the total length of glyph name strings, as well. That has been fixed at some point.&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;Do you know in &lt;em&gt;which&lt;/em&gt; version this was fixed? I wonder if we need to pay tribute to this issue in future ...&lt;br /&gt;
My impression is that someone who wants to use an ultra-plus font simply needs to accept some minimal system requirements &amp;#8212; like with any other piece of software too. (And me being the last OSX 10.3 user anyway.)&amp;nbsp;&amp;nbsp;:)&lt;/p&gt;
&lt;p&gt;Karsten&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 02:09:57 -0700</pubDate>
 <dc:creator>k.l.</dc:creator>
 <guid isPermaLink="false">comment 282072 at http://typophile.com</guid>
</item>
<item>
 <title>I must confess that large</title>
 <link>http://typophile.com/node/46034#comment-282061</link>
 <description>&lt;p&gt;I must confess that large size of GSUB table in presence of complex lookups is the result of VOLT compiler not doing enough optimization work. As I understand, AFDK is doing better job. But contextual lookups usually do not have functional problems (resulting table may be too big for my taste, but will still work), positioning is much more problematic.&lt;/p&gt;
&lt;p&gt;But this does not make John&amp;#8217;s work less complex and less amazing. Besides quality, his fonts are always my best VOLT testbed :).&lt;/p&gt;
&lt;p&gt;Sergey&lt;/p&gt;
</description>
 <pubDate>Wed,  4 Jun 2008 00:23:37 -0700</pubDate>
 <dc:creator>sergeym</dc:creator>
 <guid isPermaLink="false">comment 282061 at http://typophile.com</guid>
</item>
<item>
 <title>Surely this is a ’Build’</title>
 <link>http://typophile.com/node/46034#comment-282035</link>
 <description>&lt;p&gt;&lt;cite&gt;Surely this is a ’Build’ question?&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;Quite so. Thanks for moving it, whoever that was!&lt;/p&gt;
&lt;p&gt;I had sort of assumed that what you have said here was so, but then I realized that it was quite an assumption to be leaning on if it was false. So, thanks John!&lt;/p&gt;
</description>
 <pubDate>Tue,  3 Jun 2008 19:34:21 -0700</pubDate>
 <dc:creator>Eben Sorkin</dc:creator>
 <guid isPermaLink="false">comment 282035 at http://typophile.com</guid>
</item>
<item>
 <title>PPS. Surely this is a</title>
 <link>http://typophile.com/node/46034#comment-282016</link>
 <description>&lt;p&gt;PPS. Surely this is a &amp;#8217;Build&amp;#8217; question?&lt;/p&gt;
</description>
 <pubDate>Tue,  3 Jun 2008 17:35:54 -0700</pubDate>
 <dc:creator>John Hudson</dc:creator>
 <guid isPermaLink="false">comment 282016 at http://typophile.com</guid>
</item>
<item>
 <title>PS. All my OTL work is done</title>
 <link>http://typophile.com/node/46034#comment-282015</link>
 <description>&lt;p&gt;PS. All my OTL work is done in VOLT, so I don&amp;#8217;t know what kind of tool issues you might hit with FontLab/FDK.&lt;/p&gt;
</description>
 <pubDate>Tue,  3 Jun 2008 17:33:31 -0700</pubDate>
 <dc:creator>John Hudson</dc:creator>
 <guid isPermaLink="false">comment 282015 at http://typophile.com</guid>
</item>
<item>
 <title>I’m playing with</title>
 <link>http://typophile.com/node/46034#comment-282014</link>
 <description>&lt;p&gt;I&amp;#8217;m playing with interleaved contextual and stylistic set stuff for display type that goes way beyond anything that I would anticipate in a text face, and I have not hit any size limits in terms of software support &amp;#8212; at least not in my test environments, which in this case are InDesign and WPF &amp;#8212;, although I have hit (anticipated) feature implementation issues. Sergey Malkin at MS confirms that my VOLT source for this project is the largest and most complex he has seen (a record I previously held with SBL Hebrew), and the GSUB table takes up something like 40% of the compiled font. This is the stuff I&amp;#8217;ll be showing at TypeCon this year.&lt;/p&gt;
&lt;p&gt;I can&amp;#8217;t imagine anything on that magnitude being necessary in a text face, even presuming that some characters have multiple forms for improved fit. Also, from my perspective there is an important net gain in not using ligature glyphs any more, since it massively simplifies the GPOS mark positioning work.&lt;/p&gt;
</description>
 <pubDate>Tue,  3 Jun 2008 17:32:35 -0700</pubDate>
 <dc:creator>John Hudson</dc:creator>
 <guid isPermaLink="false">comment 282014 at http://typophile.com</guid>
</item>
<item>
 <title>There’s a 64K limit on the</title>
 <link>http://typophile.com/node/46034#comment-282013</link>
 <description>&lt;p&gt;There&amp;#8217;s a 64K limit on the size of a subtable offset (I think I have that right). This can be worked around with the &amp;#8220;extension&amp;#8221; function and appropriate subtable breaks, although not all possible clients will recognize that. Usually this comes up with kerning for really big fonts (e.g. Arno Pro).&lt;/p&gt;
&lt;p&gt;There are a couple of size limits related to glyphs rather than features, as well:&lt;/p&gt;
&lt;p&gt;1) Mac OS used to have a limit on the total length of glyph name strings, as well. That has been fixed at some point.&lt;/p&gt;
&lt;p&gt;2) There&amp;#8217;s the limit of 64K glyphs in the font.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;T&lt;/p&gt;
</description>
 <pubDate>Tue,  3 Jun 2008 17:09:15 -0700</pubDate>
 <dc:creator>Thomas Phinney</dc:creator>
 <guid isPermaLink="false">comment 282013 at http://typophile.com</guid>
</item>
<item>
 <title>Question about OT Scripting and file size</title>
 <link>http://typophile.com/node/46034</link>
 <description>&lt;p&gt;I was thinking about the practical issues involved in using Calt/Liga for text faces today, and I started wondering about how much larger a file might be if it has has 10, 50, 100, 1000 or 10,000 feature entries. And what the real practical limitations might be in terms of the file size, for the Operating System (OSX, Windows Vista, XP etc.) , and applications, any one of which might potentially choke on an overly big file. Maybe file size per se isn&amp;#8217;t the only technical issue. I am BTW deliberately leaving out any mention of managing large #s of features which is essentially a different issue.&lt;/p&gt;
&lt;p&gt;It&amp;#8217;s a broad question, and I know the answers are probably very specific and potentially very case dependent.&lt;/p&gt;
&lt;p&gt;Still, what is your take on this? Have you run into problems regarding this kind of thing as an OS, application, or font developer you would like to share?&lt;/p&gt;
</description>
 <comments>http://typophile.com/node/46034#comments</comments>
 <category domain="http://typophile.com/taxonomy/term/4">General Discussions</category>
 <category domain="http://typophile.com/taxonomy/term/6">Build</category>
 <pubDate>Tue,  3 Jun 2008 14:15:58 -0700</pubDate>
 <dc:creator>Eben Sorkin</dc:creator>
 <guid isPermaLink="false">46034 at http://typophile.com</guid>
</item>
</channel>
</rss>
