A little while back, Tim Ahrens asked me if I’d write a testimonial for his Font Remix Tools (“RMX Tools”), a set of plug-ins for FontLab Studio 5. I was more than happy to share my thoughts:
“The Font Remix Tools are an essential toolkit for anyone who wants to develop sophisticated typefaces with much greater efficiency. I can’t imagine willingly working without them. Type designers owe it to themselves and their sanity to check out RMX Tools.” — Thomas Phinney, Senior Fonts Product Manager at Extensis, designer of Hypatia Sans Pro for Adobe
(FontLab Studio is the primary type design application used by the overwhelming majority of professional type designers. FontForge and DTL FontTools (including FontMaster) are its fellow high-end alternatives, while TypeTool and Fontographer are the primary low to mid-range options.)
Tim has a interesting/useful demo version for free download, while the full version starts at €179 for one computer.
I think of the Remix Tools as having two sets of functions. First are several very useful things that work with just about any typeface:
- “harmonize” curves: this takes the “lumpiness” out of malformed curves. Very cool, even for moderately experienced type designers, though the experts may not need it.
- intelligent slant: slants glyphs while keeping vertical tangents straight. A useful step towards making italics, at least for sans serifs.
- tabular figures from proportional with only a couple of clicks
But the real power of RMX comes when you start with a font file that has a Multiple Master weight axis. Yeah, I know MM fonts are pretty nearly dead as a deliverable format for end users. Apple’s support for MMs is flaky enough that Extensis tech support has suggested Suitcase should warn people they won’t work reliably, and Windows has no reasonable native support (an ATM install can be hacked on Vista and probably Windows 7 to make them work well, or you can do manual registry entries for every single font).
Yet Multiple Master fonts are still very useful as a font development tool, even if what gets delivered is a bunch of separate fonts. Although Adobe hasn’t shipped a new MM font since the 90s, virtually all their internally developed type families use MM technology, and many other typeface designers use it as well. If you start with a font that has master outlines for two different weights, RMX can incredibly easily:
- create true condensed and extended versions (again, generally without distortion!)—or add a full “width” axis for infinite variation
- tune the width, height and weight of single letters interactively
- automatically generate small caps with the “right” weight and width (as determined by you, the designer, but with some very clever defaults)
- generate superiors, inferiors, numerators and denominators similarly
- make even better automatic tabular figures
Most of these functions still seem like magic when I see them working. Most of it works insanely well almost all the time. Of course it still needs to be checked by humans, and there can be problems on occasion, but dang….
What about Superpolator?
Aside from the Font Remix Tools, another insanely powerful option for working with font development using the power of MM space is Superpolator from Just van Rossum and Erik van Blokland, a.k.a. LettError. It has always looked great, but back when I was doing a lot of type design, my main box for doing so was Windows based, and Superpolator is a Mac-only tool, so I never really gave it a fair try. It’s available from €250.
More on MM fonts:
The press releases aren’t out yet, but at work we just came out with a Windows version of the Suitcase Fusion 2 font manager. The web site is live tonight and you can buy it or download it and try it for free for 30 days. All-new Windows version jumps two versions to finally get feature parity with its Mac counterpart. This is one of the big projects I’ve focused on in the last few months at work. Sorry I’ve been so quiet lately… more soon.
The Office 2010 technical preview is due out in July, and one can sign up to test with it. However, copies of Office 2010 have apparently already leaked, and some enterprising souls have posted screen shots of the new support for OpenType typographic features for western fonts.
This is a “technical preview” only, so it is quite possible there will be some changes of features, functionality or user interface prior to release. However, it should be pretty close to the final version overall (except in performance and bugs).
That being said, you may be wondering exactly what is supported. Here’s what the UI posting shows:
- Ligatures (appears to support multiple levels or types)
- Number spacing (presumably proportional and tabular)
- Number forms (presumably oldstyle and lining)
- Stylistic Sets
- Contextual Alternates (this one is a checkbox; all the others are dropdown menus)
None of this stuff is on by default (not even standard ligatures), but then again, neither is kerning. Sigh. So, it’s not perfect, but a huge advance over the status quo. Having this stuff in Word will finally bring some more elements of good typography to the masses….
I can finally talk about this, now that it’s been announced in this press release. Last week I started my new job at Extensis as Senior Product Manager for Font Solutions.
For those who don’t know Extensis, they are the leading vendor of font management applications, whose product line includes Suitcase Fusion and the Universal Type Server, as well as the broader asset management application Portfolio. Extensis is a division of parent Japanese company, Celartem, which also owns LizardTech.
Folks who know me well professionally may recall that I have a long-standing interest in, and passion for, font management. For example:
- I blogged about how Windows font management has lagged behind its Mac OS counterparts in the fall of 2007 (that piece also explains what font management is and why one might need it).
- I have reviewed and contributed bits to Extensis’ article on best practices for font management in OS X several times over the years.
- Back when I was working on my first master’s degree at RIT I developed a font classification system and database of existing fonts that allowed Font Reserve 1.0 to auto-classify most of a user’s font collection—and I’m pleased to see this still in use today in Extensis Suitcase Fusion, the descendant of Font Reserve.
- I have saved my long-sleeved t-shirt for Symantec Suitcase 3.0 for all these years! That was 10 versions ago, before Extensis acquired the product.
On paper I started part time at Extensis on April 1st, though in fact I’ve been ramping up a little more slowly because of two things:
- I’m in Seattle, and they’re in Portland.
- I just had jaw surgery last Monday, the 30th, so I am still recovering from that.
The first problem will be resolved by me and my family moving to Portland. We’re renting a lovely house and move in on May 1st.
The second issue will be solved by gradual healing. Although I could already talk passably well later the same day of the surgery, it’s a bit uncomfortable. Plus to talk on the phone, I have to either take off my ice pack or wedge part of the phone under it in some awkward way…. (Actually, since I wrote this a few days ago, I have gone off the ice packs as well as prescription painkillers. Tomorrow marks a week since the surgery. Things are still uncomfortable, but I’m doing okay.)
Anyway, I am very excited about this new opportunity. Portland is a great city in a great area (we already love the Pacific Northwest), the people at Extensis have been quite fabulous so far, and the work itself is fun and offers new areas to grow in.
I seem to be getting addicted to surveys! Now that I’ve reported the results of the last one, I have some quick UI questions about apps and OSes here.
In Adobe InDesign, there’s a Glyph Panel that allows you to view all the glyphs in a font, and insert ay glyph into your text. Prior to InDesign CS3, the glyphs were displayed in the same physical order they happen to be stored in the font (GID/CID order). In InDesign CS3 and later, the default is to display them in Unicode order, though one can optionally change to Unicode order. Either way, one can also filter to display only specific Unicode ranges such as Latin Extended B or Cyrillic.
Operating systems and font management applications sometimes have similar functionality. I’m doing a brief survey about what you’d like to see.
Thanks! I’ll be happy to report the survey results when I’m done, as usual.
Worst Presentation EVAR
I almost didn’t blog about this, because it was probably the most messed-up presentation I’ve done in the last many years. I was trying to do a PDF-based presentation interleaved with a demo in InDesign, but my keyboard stopped working completely when I was in full-screen mode in Acrobat… meaning I also had no way to get out of Acrobat to do the demo! So I had to reboot, re-order my presentation on the fly, and improvise talking through from memory some stuff I had intended to do with accompanying slides, while waiting for my computer to complete the reboot and then for InDesign to launch (which last took 3x as long because I had rebooted while it was running). I also had a cold, so I am clearing my throat every 30 seconds. On top of that, the guy doing the presentation in the next room was REALLY LOUD and somehow his presentation included loud heavy metal music…. Which you can’t hear it on the recording, but I and the audience could hear it very clearly, and it was seriously distracting. Aaargh!
All of which threw me off my pace a bit, even if I seem to be handling it with aplomb on the recording. So even after I’m out of the part where my computer is totally hosed, I’m not at my best.
That being said there’s still some decent stuff in several spots of this AdobeTV recording from Adobe MAX, November 2008. See below for key bits to watch:
- Preserving OpenType alternate glyphs across apps: 5:25 – 8:20 (audio only)
- OpenType typography features: 13:30 – 35:40 (video)
Just don’t expect me to be at my scintillating best on this one, okay?
This is a guide to options and tools for laying out global text in the CS4 versions of InDesign, Photoshop and Illustrator. None of them are obvious or documented in the regular versions of the application, but there are a dizzying variety of options: templates; scripts; InDesign plug-ins; and special “ME” versions of applications. Prices range from free to more expensive than the base version of the application. This will help you figure out which might be right for your needs, and even provide some basic tools to help you get started, if your needs are not too extensive.
Why would you even need something special for global text layout? For most basic left-to-right languages, if the fonts you are using have all the right glyphs, the regular version of the Adobe application will do an adequate job out of the box. However, many left-to-right languages of south and south-east Asia (such as Thai, Lao and the Indic languages) require additional language-specific processing to get the right glyph output given the incoming character stream. Many Indic languages assemble multiple characters into a single visual “cluster” (sort of like a syllable), using complicated shaping rules. Some languages, notably Thai and Lao, do not even have spaces between words, and therefore need special dictionaries just to get correct line breaking. Then there are right-to-left languages such as Arabic and Hebrew, which require further capabilities. (Note that InDesign added Thai layout functionality in its regular composition engine back in CS3, although with some limitations.)
Standards such as Unicode only provide a framework around which such additional processes must be built—they don’t provide the code. Winsoft has long offered special “ME” versions of Adobe applications (with full support for Arabic and Hebrew, though not the Indic or other Asian languages), but none of this functionality was in the standard versions of Adobe’s Creative Suite applications before CS4.
One cool thing Adobe did in the Creative Suite 4 product cycle was to work on global text support across several products, including InDesign, Illustrator and Photoshop. The CS4 versions of these apps have an alternate composition engine, the World-Ready Composer, which enables support for “complex script” languages such as Arabic, Hebrew, Thai, and the Indic languages. One of the goals of this move was to unify file formats and code between western, CJK, and ME versions of the applications. But unless you have an ME version of an application, the World-Ready Composer isn’t directly accessible in the CS4 applications as shipped.
Why not? Well, the World-Ready Composer was not fully tested and debugged, and hyphenation dictionaries and spell checkers aren’t available for the extra languages. Therefore, the World-Ready Composer is neither documented nor officially supported by Adobe in CS4, and no user interface was provided for the added features in the apps (like selecting the composer, or choosing right-to-left text). Although many people assume this work will be finished in CS5, the last time I checked Adobe was making no promises as to when these capabilities will be finished and formally released.
Native CS4 Capabilities
Now, the capabilities above might seem not very useful, but there are several handy things one can do with the CS4 versions of these applications, right off the bat:
- In CS4 applications, one can now open and print Hebrew and Arabic documents created with Winsoft’s ME versions of the Adobe applications.
- If one opens a document that has text frames, paragraphs, and/or styles which use the World-Ready Composer, one can then copy and paste those into another document, or delete other content and use the original document as the basis of something else, thereby gaining access to the World-Ready Composer.
- If right-to-left text direction is part of the formatting of the frame/paragraph/style, it comes along for the ride.
- In InDesign CS4, all these features are accessible to scripting, and the scripting interface is documented! These features are also open to plug-ins. This decision by the InDesign team opened the way for third-party developers to make scripts and plug-ins to ease access to the added functionality. See below for more details on both.
Options for More Support
There are many ways to get more access to the World-Ready Composer than you get out of the box with the CS4 applications. Further details on each are in the sections below. In order of increasing functionality, they are:
- templates (free, see below)
- scripting (InDesign only, there are free existing scripts or you can make or modify them yourself, see below)
- special plug-ins ($19.99 – $110, InDesign only for now, see below)
- Winsoft’s ME versions of the applications, starting at €270/$270 to upgrade another version of InDesign to CS4 ME, or €978/$945 for a stand-alone copy of InDesign CS4 ME. These are also available in the US from InTools for $350 for the InDesign upgrade, or $1169 for the stand-alone InDesign CS4 ME, including shipping.
FontShop has a nice explanation of the various right-to-left features and related functionality in InDesign ME; it was written for CS3, but is equally applicable to CS4.
Also, if you want to use the World-Ready Composer for Indic languages, Thai, Lao, or others not mentioned previously, be aware that none of these solutions (not even the ME versions, to date) offer spell checking or dictionaries. However, there are some third-party solutions, notably MetaDesign’s SpellPlus for spell-checking some of the Indic languages (currently only for InDesign CS2 and CS3, $149).
Languages (Writing Systems)
Which languages are enabled by the World-Ready Composer? Currently, there are two tiers. First, these writing systems have been implemented, but not fully tested:
- Devanagari (Hindi)
- Cyrillic (Russian, etc.)
- Latin (European and American languages, but also Vietnamese)
- Lao (but without line breaking)
- Thai (including line breaking)
These additional writing systems have been at least partially implemented, but not tested:
- Canadian Aboriginal Syllabics
Because it’s only the UI that is missing in regular InDesign CS4, documents created using special plug-ins, scripts, or templates should be fine to open and print from InDesign CS4 (as much as they are with the plug-ins, anyway). It’s just that the UI for changing things is lacking—editing is possible, for sure, but control over right-to-left directionality vs left-to-right may be troublesome, and access to tweak additional options (like numbering styles) is lacking.
Limitations of CS4 Apps Not Using ME Versions
These limitations apply to anything one does with the templates, scripts and plug-ins.
Issues affecting all CS4 applications:
- Non OpenType “smart font” technologies, such as Apple’s AAT/GX and SIL’s Graphite, are not supported. This means that Apple system fonts for complex scripts don’t work, but Microsoft’s do. (This is also an issue for Winsoft’s ME apps, as far as I know.)
- If you fill a text block with placeholder text, Winsoft’s ME apps automatically select appropriate text based on language, while the Adobe CS4 apps do not (at least, not for the “unsupported” languages, not sure about languages they officially support, such as French or Japanese).
- Currently only the Winsoft ME versions of the applications offer Arabic spell-checking and Hebrew hyphenation.
- The Story Editor and the Notes panel do not render RTL text correctly
- InCopy compatibility is an issue
- Importing Word files is tricky if you want complex scripts to be handled correctly. You need to set “World Ready Composer” in the “No Paragraph Style” style.
Templates for ID, Ai & PS
Unfortunately, Photoshop CS4 doesn’t expose the World-Ready Composer to scripting or plug-ins, and Illustrator CS4 exposes the APIs to plug-ins (only), but nobody has made anything for Illustrator yet. But these two applications do open documents from their ME counterparts, which makes it possible to get the World-Ready Composer and/or RTL text active by opening existing documents with appropriately-formatted text blocks and using copy-paste to transfer the text to new documents. You can also copy-paste text between Illustrator and Photoshop and it retains the World-Ready composer and paragraph direction formatting from one to the other.
Where would you find a document to get at such text? Here are some template documents to get you started, for all three major Adobe applications (see below for the template license terms: by downloading these templates you are agreeing to the terms below):
Note the styles used in the InDesign document. If opening the template gives a missing plug-in warning, just dismiss it.
The templates are a nice option for InDesign folks who don’t want to mess with scripts, and the only option short of an ME application for people needing this functionality in Illustrator or Photoshop.
InDesign Scripts & Scripting
All the scripts in the set start with the “r2l” name so they will sort together.
- r2l Character Direction Flip (reverses default character direction for selection)
- r2l Character Direction r2l (sets default character direction r2l for selection
- r2l Paragraph Direction Flip (reverses paragraph direction for selected paragraphs)
- r2l Paragraph Direction r2l (sets paragraph direction to r2l for selected paragraphs)
- r2l Assign World-Ready Paragraph Composer (to selection)
- r2l Assign World-Ready Single-line Composer (to selection)
- r2l Assign World-Ready Paragraph Composer to Paragraph Style (edits current style(s) to change the assigned composer)
- r2l Paragraph Style Arabic (creates a paragraph style suitable for Arabic)
- r2l Paragraph Style Hebrew (creates a paragraph style suitable for Hebrew)
Follow these simple rules for how/where to install InDesign scripts:
If you want to install scripts for all users on the computer, put them here:
- Mac: Hard Drive/Applications/Adobe InDesign CS4/Scripts/Scripts Panel
- Windows XP or Vista: C:\\Program Files\Adobe\Adobe InDesign CS4\Scripts\Scripts Panel (Note: If you’re on a 64-bit Windows system, that would be “Program Files (x86)” instead of just “Program Files.”)
If you want to install scripts only for a single user, put them here:
- Mac: Hard Drive/Users/<username>/Library/Preferences/Adobe InDesign/Version 6.0/Scripts/Script Panel
- Windows XP: C:\\Documents and Settings\<username>\Application Data\Adobe\InDesign\Version 6.0\Scripts\Scripts Panel
- Windows Vista: C:\\Users\<username>\AppData\Roaming\Adobe InDesign\Version 6.0\Scripts\Scripts Panel
If you want to edit these scripts or write your own, you’ll benefit from some reference material:
- Peter Kahrel put together this great PDF guide to the properties and enumerations you’ll need to use for scripting right-to-left and World-ready Composer settings in InDesign CS4.
End-User License for Scripts & Templates
The scripts and templates (“Software”) provided above are licensed to you under a BSD-style open source license, as described below.
Copyright 2008, 2009, Peter Kahrel & Thomas Phinney.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither Thomas Phinney’s nor Peter Kahrel’s names may be used to endorse or promote products derived from this software without specific prior written permission.
This Software is provided “as is” and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall Thomas Phinney or Peter Kahrel be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this Software, even if advised of the possibility of such damage.
InDesign Plug-ins Available
As discussed on InDesignSecrets.com, some third parties have already taken advantage of the scripting and plug-in access, and released plug-ins which give a UI for the World-Ready Composer in InDesign:
- WorldTools for InDesign CS4, $49 (new lowered price), by Harbs at InTools. Compare functionality vs InDesign alone and InDesign ME.
- idRTL for InDesign CS4, $19.99 through Feb 14, $39.99 thereafter, by Steven F. Bryant. Compare functionality of idRTL vs InDesign ME. Currently Windows-only, but Mac version promised Feb 1 with same pricing.
- IndicPlus, $110 by MetaDesign, for InDesign CS2 and CS3. Note that unlike the other solutions discussed here, it is not based on Adobe’s World-Ready Composer. For this plug-in only, ignore all the discussion here about compatibility, limitations, languages and so on; it is listed for comparison and reference. IndicPlus supports Hindi, Bengali, Gujarati, Kannada, Sanskrit, Tamil, Punjabi, Nepali, Kashmiri, Assamese, Manipuri, Sindhi, Marathi, Konkani, Telugu (with limitations), and Tibetan.
There are several notable differences between current versions of World Tools and idRTL. Broadly, World Tools has more functionality, and idRTL has a more convenient interface. As both products are in active development, one might expect improvements and new features to be added to each, but some further differences are:
- idRTL is a bit cheaper, but World Tools has a free 30-day trial
- idRTL can switch the direction of an existing document
- idRTL has a modeless floating panel approach, well suited to “inspecting” text and style formatting as well as applying it; World Tools settings appear as a sub-menu of the new “API” menu
- idRTL supports Arabic, Hebrew, Hindi and Farsi digit styles; World Tools supports all 20 number formats supported by the World-Ready Composer, as well as CJK numbering options. Numbering can matter for various auto-numbering situations, including page numbers, footnotes, numbered lists, etc.
- idRTL has an installer, while World Tools is installed manually (though it’s not difficult)
- World Tools has a nice “tree” view dialog for setting paragraph and character styles
- World Tools can search specifically for existing Hebrew or Roman text and set a user-specified character style on that text—useful for fixing existing documents or collaborating with someone who doesn’t have World Tools
- InTools offers an upgrade path from World Tools to InDesign ME, so that if you find World Tools doesn’t meet your needs, you can upgrade to ID ME for the same total cost as just buying the ME product in the first place
Broadly speaking, the plug-ins offer a significant degree of functionality in InDesign CS4. If you are doing entire documents in right-to-left or complex scripts, and you don’t need the additional features and bug fixes of InDesign CS4 ME, then the plug-ins may be your best choice. If a document was created using a plug-in, opening it without the plug-in may yield a warning, but the document should be fine.
Bugs & Comments
I am not offering technical support for the scripts and templates, nor for Adobe products. However, I may fix bugs in the scripts and templates, and I welcome discussion of them in comments to this post. Note that Adobe does not officially support the World-Ready Composer in CS4, so I am taking bug reports and problems on the composer itself as comments to a separate post, to make sure Adobe engineers have a place to go to see such reports in one place.
If your needs are basic, the free templates and scripts provided here might do the trick, even for Photoshop and Illustrator. If your concern is strictly InDesign, the idRTL plug-and WorldTools plug-ins offer a bunch more functionality at bargain prices. For folks doing serious work in Arabic or Hebrew, including Photoshop and Illustrator, the ME versions of Adobe applications are the way to go, particularly if you need the built-in dictionaries.
Special thanks to: Peter Kahrel, Harbs, Steven Bryant, and Diane Burns for blazing the way in how to tackle these problems, and reviewing this article. Extra-special thanks to all the engineers at Adobe who did the hard work that made this possible, and shared their expertise with me when I worked at Adobe, including Joe, Margie, Eric, Zak and Niti. Finally, I’d like to thank the good folks at WinSoft who created the foundations this is all built on: I don’t know any of you so well, but without you this wouldn’t be here.
- 27 Jan 2009: new lower price for World Tools, possibility of Illustrator plug-in, minor corrections
- 28 Jan 2009: US pricing for Winsoft, tried to fix plug-in warning with InDesign template (cosmetic but irritating)
- 29 Jan 2009: Corrected that it’s idRTL that has the installer, not WorldTools
- 30 Jan 2009: Fixed some typos, and missing backslashes in Windows path names
- 05 Feb 2009: Updated the InDesign scripts that create Arabic and Hebrew paragraph styles so they set the text to right-justified (thanks to Peter Kahrel for catching that)
- 18 Apr 2009: Fixed description of auto-fill with placeholder text (thanks to Roy McCoy for catching the bug)
If you have bug reports on the underlying World-Ready Composer capabilities in Adobe Creative Suite 4 applications, log them as comments on this post, and I’ll make sure they get seen by the right people.
If you have feedback on scripts, templates, plug-ins, or my big article on the World-Ready Composer, please make comments to that post instead.