Hans, I still have some problems with my fonts in the latest beta. Maybe it has to do with the latest optimizations. I'm just wondering: in my Greek typescripts, I define several fontfeatures and connect them with featurefiles, like so (just an example, the list is longer): \installfontfeature[otf][gent] \installfontfeature[otf][kori] \definefontfeature [korinthia] [mode = node ,language = dflt ,script =latn,kern=yes,tlig=no,trep=no,kori=yes,featurefile=korinthia.fea] \definefontfeature [gentiumgreek] [mode=node,language=dflt,script=latn,kern=yes,tlig=no,trep=no, gent=yes,featurefile=gentium.fea] \starttypescript [serif] [GreekGentiumAlt] [name] \definefontsynonym [Serif] [name:GenAR102] [features=gentiumgreek] \definefontsynonym [SerifItalic] [name:GenAI102] [features=gentiumgreek] \definefontsynonym [SerifBold] [Serif] \definefontsynonym [SerifBoldItalic] [SerifItalic] \stoptypescript \starttypescript [serif] [GreekKorinthia] [name] \definefontsynonym [Serif] [name:Korinthia] [features=korinthia] \definefontsynonym [SerifItalic] [Serif] \definefontsynonym [SerifBold] [Serif] \definefontsynonym [SerifBoldItalic] [Serif] \stoptypescript The main font definition is of this form: \starttypescript[greek] \definetypeface[greek][rm][serif][\currentmoduleparameter{font}] [default][rscale=\currentmoduleparameter{scale}] \stoptypescript \usetypescript[greek] So I'm just wondering: must the "features=" be included into the \definetypeface as well? I have the impression that the different features I define are not used at all... Thomas
Thomas A. Schmitz wrote:
Hans,
I still have some problems with my fonts in the latest beta. Maybe it has to do with the latest optimizations. I'm just wondering: in my Greek typescripts, I define several fontfeatures and connect them with featurefiles, like so (just an example, the list is longer):
hard to test without test files and fonts -) you can try \ctxlua{fonts.trace=true} and see what is handled % test file % % \starttypescript[serif][mine-1] % \definefontsynonym[Serif] [TeXGyrePagella-Regular] % \definefontsynonym[TeXGyrePagella-Regular][file:texgyrepagella-regular] % \stoptypescript % % \starttypescript[serif][mine-2] % \definefontsynonym[Serif] [TeXGyrePagella-Regular] [features=default] % \definefontsynonym[TeXGyrePagella-Regular][file:texgyrepagella-regular] [features=oldstyle] % \stoptypescript % % \starttypescript[serif][mine-3] % \definefontsynonym[Serif] [TeXGyrePagella-Regular] [features=oldstyle] % \definefontsynonym[TeXGyrePagella-Regular][file:texgyrepagella-regular] [features=default] % \stoptypescript % % \starttypescript[serif][mine-4] % \definefontsynonym[Serif] [TeXGyrePagella-Regular] [features=default] % \definefontsynonym[TeXGyrePagella-Regular][file:texgyrepagella-regular] [features=default] % \stoptypescript % % \starttypescript[serif][mine-5] % \definefontsynonym[Serif] [TeXGyrePagella-Regular] [features=oldstyle] % \definefontsynonym[TeXGyrePagella-Regular][file:texgyrepagella-regular] [features=oldstyle] % \stoptypescript % % \starttext % \dorecurse {5} { % \expanded{\definetypeface[mine-\recurselevel][rm][serif][mine-\recurselevel][default]} % \expanded{\setupbodyfont [mine-\recurselevel] mine-\recurselevel: text 1234567890 done} % \par % } % \blank % \dorecurse {5} { % \expanded{\definetypeface[more-\recurselevel][rm][serif][mine-\recurselevel][default][features=oldstyle]} % \expanded{\setupbodyfont [more-\recurselevel] mine-\recurselevel: text 1234567890 done} % \par % } % \stoptext ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
On Oct 9, 2008, at 11:22 AM, Hans Hagen wrote:
hard to test without test files and fonts -)
Yes, I can see that :-) Your crystal ball is broken, then?
you can try
\ctxlua{fonts.trace=true}
and see what is handled
Well, that kind of confirms my suspicion. I attach the relevant stuff from the log file. Basically, ConTeXT registers Korinthia with the feature gentiumgreek (instead of feature korinthia). I'll see if I can narrow it down to a more manageable test file and send it to you. Thanks Thomas define font | registering Korinthia as otf define font | using real font with id ?, n:/Users/tas/texmf/fonts/ opentype/greek/korinthia/Korinthia.otf s:865080 b:2 e:unicode p:Korinthia f:Korinthia.otf define font | loading at 2 id 38, hash: Korinthia @ analyze=true +featurefile=gentium.fea+gent=true+kern=true+language=dflt+mode=node +script=latn @ 865080 define font | defining Korinthia with id 38 as \*greek12ptrmtfrm* (,gentiumgreek,) define font | memory usage after: 51 MB (ctx: 52 MB) define font | Serif sa 1 -> lookup: [file], name: Serif, sub: -, method: -, detail: - define font | memory usage before: 51 MB (ctx: 52 MB) define font | registering Korinthia as otf define font | using real font with id ?, n:/Users/tas/texmf/fonts/ opentype/greek/korinthia/Korinthia.otf s:504630 b:2 e:unicode p:Korinthia f:Korinthia.otf define font | loading at 2 id 39, hash: Korinthia @ analyze=true +featurefile=gentium.fea+gent=true+kern=true+language=dflt+mode=node +script=latn @ 504630 define font | defining Korinthia with id 39 as \*greek7ptrmtfrm* (,gentiumgreek,) define font | memory usage after: 51 MB (ctx: 52 MB) define font | Serif sa 1 -> lookup: [file], name: Serif, sub: -, method: -, detail: - define font | memory usage before: 51 MB (ctx: 52 MB) define font | registering Korinthia as otf define font | using real font with id ?, n:/Users/tas/texmf/fonts/ opentype/greek/korinthia/Korinthia.otf s:648810 b:2 e:unicode p:Korinthia f:Korinthia.otf define font | loading at 2 id 40, hash: Korinthia @ analyze=true +featurefile=gentium.fea+gent=true+kern=true+language=dflt+mode=node +script=latn @ 648810 define font | defining Korinthia with id 40 as \*greek9ptrmtfrm* (,gentiumgreek,) and then later define font | loading at 2 id 45, hash: lmsy9 @ unknown @ 589824 define font | defining lmsy9 with id 45 as \*greek9ptmmsyrm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | cmsy10 at 12pt -> lookup: [file], name: cmsy10, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing lmsy10 with id 10 as \*greek12ptmmsyrm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | cmex10 at 12pt -> lookup: [file], name: cmex10, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing lmex10 with id 11 as \*greek12ptmmexrm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | msam7 sa 1 -> lookup: [file], name: msam7, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing msam7 with id 12 as \*greek7ptmmmarm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | msam10 sa 1 -> lookup: [file], name: msam10, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing msam10 with id 13 as \*greek9ptmmmarm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | msam10 sa 1 -> lookup: [file], name: msam10, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing msam10 with id 14 as \*greek12ptmmmarm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | msbm7 sa 1 -> lookup: [file], name: msbm7, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing msbm7 with id 15 as \*greek7ptmmmbrm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | msbm10 sa 1 -> lookup: [file], name: msbm10, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing msbm10 with id 16 as \*greek9ptmmmbrm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | msbm10 sa 1 -> lookup: [file], name: msbm10, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing msbm10 with id 17 as \*greek12ptmmmbrm* (,,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | SerifBold sa 1 -> lookup: [file], name: SerifBold, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing Korinthia with id 39 as \*greek7ptrmbfrm* (,gentiumgreek,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | SerifBold sa 1 -> lookup: [file], name: SerifBold, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing Korinthia with id 40 as \*greek9ptrmbfrm* (,gentiumgreek,) define font | memory usage after: 52 MB (ctx: 53 MB) define font | SerifBold sa 1 -> lookup: [file], name: SerifBold, sub: -, method: -, detail: - define font | memory usage before: 52 MB (ctx: 53 MB) define font | reusing Korinthia with id 38 as \*greek12ptrmbfrm* (,gentiumgreek,) define font | memory usage after: 52 MB (ctx: 53 MB)
Thomas A. Schmitz wrote:
Hans,
I still have some problems with my fonts in the latest beta. Maybe it has to do with the latest optimizations. I'm just wondering: in my Greek typescripts, I define several fontfeatures and connect them with featurefiles, like so (just an example, the list is longer):
\installfontfeature[otf][gent] \installfontfeature[otf][kori]
\definefontfeature [korinthia]
[mode = node ,language = dflt ,script =latn,kern=yes,tlig=no,trep=no,kori=yes,featurefile=korinthia.fea]
\definefontfeature [gentiumgreek] [mode=node,language=dflt,script=latn,kern=yes,tlig=no,trep=no, gent=yes,featurefile=gentium.fea]
\starttypescript [serif] [GreekGentiumAlt] [name] \definefontsynonym [Serif] [name:GenAR102] [features=gentiumgreek] \definefontsynonym [SerifItalic] [name:GenAI102] [features=gentiumgreek] \definefontsynonym [SerifBold] [Serif] \definefontsynonym [SerifBoldItalic] [SerifItalic] \stoptypescript
\starttypescript [serif] [GreekKorinthia] [name] \definefontsynonym [Serif] [name:Korinthia] [features=korinthia] \definefontsynonym [SerifItalic] [Serif] \definefontsynonym [SerifBold] [Serif] \definefontsynonym [SerifBoldItalic] [Serif] \stoptypescript
The main font definition is of this form:
\starttypescript[greek] \definetypeface[greek][rm][serif][\currentmoduleparameter{font}] [default][rscale=\currentmoduleparameter{scale}] \stoptypescript \usetypescript[greek]
So I'm just wondering: must the "features=" be included into the \definetypeface as well? I have the impression that the different features I define are not used at all...
it binds to Serif i.e. the left part of the definefontsynonym (used to be a complex sometimes left/right thing) but it should work out well because eventually it's bound to greekSerif an option indeed it to delay it and assign it in the \definetypeface (or use [name:GenAR102*gentiumgreek]) i'm still not sure what is the best way to implement this abstraction Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
participants (2)
-
Hans Hagen
-
Thomas A. Schmitz