Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
On Thu, 13 Jan 2011, Fr. Michael Gilmary wrote: I couldn't find the source code for the OpenType features in Latin Modern Roman; Voilà! otfinfo -f lmroman10-regular.otf I'd been hoping for the source code as such - i.e. the *.fea files. Looking at the substitution tables after they're compiled into the *.otf files can be difficult with a complicated feature like arbitrary-length fractions; the table format isn't designed to be human-readable. Nonetheless, I did take a look at the tables for Latin Modern Roman in FontForge, and it appears to me that it's just substituting precomposed glyphs - so that one fraction two will become onehalf and so on, but it won't work on arbitrary fractions with a large number of digits. I haven't dug into Junicode myself, but Alexey Kryukov's posting suggests that that's how Junicode does it as well. The problem is in the interaction between arbitrary-length fractions and digit sequences that are not fractions: I don't think it's possible to support arbitrary-length fractions and also leave non-fraction digit sequences untouched. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
On Mon, Jan 17, 2011 at 12:04:33AM +0300, Alexey Kryukov wrote: On Sun, 16 Jan 2011 11:09:40 -0600 (CST) msk...@ansuz.sooke.bc.ca wrote: I'd been hoping for the source code as such - i.e. the *.fea files. Looking at the substitution tables after they're compiled into the *.otf files can be difficult with a complicated feature like arbitrary-length fractions; the table format isn't designed to be human-readable. Note that OT layouts aren't always generated from Adobe's feature files: *.fea is just one of possible human-readable formats. FontForge and MS Volt don't use this format, but instead provide a visual GUI for designing OT features, while Rogier van Dalen's OTComp utility uses an alternate feature description format. However, LM fonts were done using feature files a AFDKO, but they don't usually publish the feature files (for whatever the reason), but IIRC they offer them upon request. Regards, Khaled -- Khaled Hosny Arabic localiser and member of Arabeyes.org team Free font developer -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
� wrote: Bonjour Bonjour François Who can explain (and correct if possible) this strange behaviour of the Linux Libertine fonts if you add the option Fractions=On AFAICT, this is a font issue. Curiously, other fonts render all the numbers as superscripts and when you add ``/'' between them, you get the fraction. This works with Minion Pro, Myriad Pro, Garamond Premier Pro --- but with fonts like Junicode and Latin Modern Roman (the otf font), you'll get *none* of the numbers superscript, but after adding the ``/'' you'll get the fraction. Different types of defaults, I guess ...? HTH. -- United in adoration of Jesus, fr. michael gilmary, mma Most Holy Trinity Monastery 67 Dugway Road Petersham, MA 01366-9725 www.MaroniteMonks.org -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
On Thu, 13 Jan 2011, François Patte wrote: Who can explain (and correct if possible) this strange behaviour of the Linux Libertine fonts if you add the option Fractions=On If you put a number with more than one digit, only the last number has the normal size, the preceding digits are written like exponants before it. You should only turn the fractions option on where you actually want a fraction; it assumes that all sequences of digits will be parts of fractions and attempts to translate them appropriately. Leaving it on for general text will result in non-fraction digit sequences being messed up, as you've discovered. The reason it can't detect the presence of a slash, and only translate digits when the slash is present, is because glyph substitution rules can't do arbitrary-length look-ahead. When it sees the first digits of the numerator it has to make a decision on whether to raise them, even before it sees the slash. This posting on my Web log gives some technical details of how such features are implemented, which may be illuminating: http://ansuz.sooke.bc.ca/entry/131 Suppress the option Fractions=On and everything is OK... That's what you have to do, unfortunately: you can't both have automatic translation of arbitrary-length fractions, and leave digit sequences without a slash intact. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Le 13/01/2011 15:30, msk...@ansuz.sooke.bc.ca a écrit : On Thu, 13 Jan 2011, François Patte wrote: Who can explain (and correct if possible) this strange behaviour of the Linux Libertine fonts if you add the option Fractions=On If you put a number with more than one digit, only the last number has the normal size, the preceding digits are written like exponants before it. You should only turn the fractions option on where you actually want a fraction; So no other solution that: {\addfontfeature{Fractions=On} 1/2} Or a macro doing the same job? Thanks for the answer. - -- François Patte UFR de mathématiques et informatique Université Paris Descartes Tél. +33 (0)1 8394 5849 http://www.math-info.univ-paris5.fr/~patte -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/ iEYEARECAAYFAk0vKVUACgkQdE6C2dhV2JUxAACgre4GSZqpujJyU4nZVXkRIK3x 5QYAoIve689WVV9aoYu3CuCqJj2xRJac =J4KK -END PGP SIGNATURE- -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
msk...@ansuz.sooke.bc.ca wrote: Fr. Michael said that Latin Modern Roman and Junicode don't have this effect, and that's very interesting because I thought (for the reasons described) that it was impossible to avoid at the level of OpenType substitution. Matthew, might it have something to do also with the lack of a sups feature in LMR? Junicode, however, /does/ have the sups feature as well as fractions. I couldn't find the source code for the OpenType features in Latin Modern Roman; Voilà! otfinfo -f lmroman10-regular.otf aaltAccess All Alternates cpspCapital Spacing dligDiscretionary Ligatures fracFractions kernKerning ligaStandard Ligatures lnumLining Figures onumOldstyle Figures pnumProportional Figures sizeOptical Size tnumTabular Figures zeroSlashed Zero -- United in adoration of Jesus, fr. michael gilmary, mma Most Holy Trinity Monastery 67 Dugway Road Petersham, MA 01366-9725 www.MaroniteMonks.org -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
Re: [XeTeX] strande behavior of Linux Libertine fonts with optio Fractions=On
On Thu, 13 Jan 2011 10:44:31 -0600 (CST) msk...@ansuz.sooke.bc.ca wrote: Fr. Michael said that Latin Modern Roman and Junicode don't have this effect, and that's very interesting because I thought (for the reasons described) that it was impossible to avoid at the level of OpenType substitution. As far as I can see, Junicode just substitutes precomposed vulgar fractions instead of corresponding 3-character sequences. Naturally, this method doesn't have side effects like turning arbitrary numbers into superscripts, but, of course, it allows to support only a limited number of combinations. For this reason this is not the recommended way of implementing the 'frac' feature: the preferred one is exactly what Linux Libertine does. -- Regards, Alexey Kryukov anagnost at yandex dot ru Moscow State University Historical Faculty -- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex