Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!elroy.jpl.nasa.gov!decwrl!adobe!heaven!glenn From: glenn@heaven.woodside.ca.us (Glenn Reid) Newsgroups: comp.lang.postscript Subject: Re: UniqueId in Font Dictionaries: Why? Message-ID: <341@heaven.woodside.ca.us> Date: 3 Dec 90 05:21:48 GMT References: <90327.103524SMITHM@QUCDN.QueensU.CA> <1990Nov26.174933.24043@cl.cam.ac.uk> Reply-To: glenn@heaven.woodside.ca.us (Glenn Reid) Organization: RightBrain Software, Woodside, CA Lines: 27 In article <1990Nov26.174933.24043@cl.cam.ac.uk> cet1@cl.cam.ac.uk (C.E. Thompson) writes: >In article <90327.103524SMITHM@QUCDN.QueensU.CA> SMITHM@QUCDN.QueensU.CA writes: >> The Green Book >>program assumes that it is generating a unique ID by adding 1 to the >>base font's ID. This is true for the font in the example (Helvetica-Bold). >>It wouldn't work for Century Schoolbook Bold Italic because its ID is one >>less than Century Schoolbook Bold. Well, since I was responsible for writing that code, I suppose I should respond. My recollection is that the font cache uses both the font name and the UniqueID, not just the UniqueID, so adding one works okay, even if the UniqueID happens to match another font (with a different name). I recall testing it, in any case, and not running into any problems, but that doesn't mean that it's actually the right thing to do. I always thought it would be great to be able to flip the sign of the UniqueID, so it's still the same number, but it becomes negative if you modify it, but it's an unsigned value (besides, it wouldn't nest very well for repeated derivative fonts). I've never really seen precise documentation on this, however, and there is certainly a lot of voodoo surrounding generation of UniqueID values. It is getting increasingly important for all of us to understand it and do the right thing, though, as there are more and more fonts in the world every day, and some even have the same PostScript names as each other, from what I'm told. Glenn Reid Brought to you by Super Global Mega Corp .com