[scribus] Kerning with combining diacriticals

Pierre Marchand capparis at free.fr
Mon Aug 10 19:18:49 CEST 2009


Vous (John Jason Jordan) avez écrit :
> On Mon, 10 Aug 2009 14:27:55 +0200
>
> Pierre Marchand <capparis at free.fr> dijo:
> > Vous (John Jason Jordan) avez écrit :
> > > Using 1.3.5 Rc3 on Jaunty.
> > >
> > > I do work in linguistics which requires frequent use of combining
> > > diacriticals. Unfortunately, the combining diacriticals are spaced so
> > > they are pretty well centered on letters like n or x, but not on a thin
> > > letter like an l or a thick letter like an m. To see what I am talking
> > > about. type "l n m" and after each enter the combining diacritic for
> > > voiceless, which is Unicode 325. If no diacritic appears switch to a
> > > font that has combining diacriticals. The voiceless character is a
> > > small circle that should appear centered under the letter.
> > >
> > > If you followed me so far you should see that the circle is centered
> > > under the n, but not under the l or the m.
> > >
> > > If I am just doing a quick and dirty term paper I don't care. But when
> > > I am preparing a book that I intend to sell I want perfection. I can
> > > kern the character using Story Editor so the diacritic is perfectly
> > > centered, but then the letter and its combining diacritic are both
> > > kerned so they appear incorrect next to adjacent letters.
> > >
> > > As an exercise to see what I am talking about, type "plosive" and put a
> > > voiceless diacritic under the l. Now kern the diacritic and the l so
> > > the diacritic is centered (about -8% should do it). The diacritic will
> > > be centered, but the l will suddenly be spaced too far from the p. That
> > > is because to select the diacritic you also have to select the l.
> > >
> > > I've tried everything I can think of, but I can't get it to work right.
> > > Does anyone have any suggestions?
> >
> > Composite  glyphs are well composed by means of mark to mark (mkmk)
> > positioning feature, which Scribus does not support atm. Your best chance
> > is to get a font having all glyphs you need accessible through the
> > regular Unicode cmap.
>
> Unfortunately, such a font does not exist.
>
> There is a PDF here which shows all the diacritics that I need:
>
> http://www.langsci.ucl.ac.uk/ipa/fullchart.html
>
> I have several fonts that have all the combining diacritics. Using the
> diacritics I can create any character. But for a font to contain every
> possibility as individual glyphs would exceed the number of slots
> available in Unicode. Even if such a font existed it would be
> impossible to locate the individual glyph you need.
>
> I need to study more how composite glyphs work. Maybe I can figure out
> a workaround.

It becomes challenging :-)
In fact you can have it without smartness in fonts but it’s a bit hacky. The 
first thing that comes in mind is to use a monospace fonts. Which is not that 
idiot since I guess you won’t write long texts in phonetic. You could have 
PostScript Type1 fonts with positioning of diacritics achieved by means of 
kerning (I don’t want to see the AFM but it can work!). It would be possible 
to compute a kern table based on mkmk feature with a Fontforge script and 
therefore regenerate a TTF. Or almost the same apart that you would compute a 
kern feature and generate an OTF that Scribus 1.5.0+ would be able to use.

But still these are workaround and i feel the shame to late so much at 
implementing proper support of OpenType technologies.

-- 
Pierre Marchand




More information about the scribus mailing list