summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/s-fnt-23.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/s-fnt-23.mkiv')
-rw-r--r--Master/texmf-dist/tex/context/base/s-fnt-23.mkiv290
1 files changed, 0 insertions, 290 deletions
diff --git a/Master/texmf-dist/tex/context/base/s-fnt-23.mkiv b/Master/texmf-dist/tex/context/base/s-fnt-23.mkiv
deleted file mode 100644
index 17fc5463d86..00000000000
--- a/Master/texmf-dist/tex/context/base/s-fnt-23.mkiv
+++ /dev/null
@@ -1,290 +0,0 @@
-%D \module
-%D [ file=s-fnt-23,
-%D version=2009.03.04,
-%D title=\CONTEXT\ Style File,
-%D subtitle=Tracing Feature Application (3),
-%D author=Hans Hagen,
-%D date=\currentdate,
-%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
-%C
-%C This module is part of the \CONTEXT\ macro||package and is
-%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
-%C details.
-
-\startluacode
- moduledata.fonts = moduledata.fonts or { }
-
- local fontdata = fonts.hashes.identifiers
-
- local last_data = nil -- still relevant
- local format = string.format
-
- function moduledata.fonts.show_shape(n)
- local tfmdata = fontdata[font.current()]
- -- local _, tfmdata = fonts.definers.define { name = fontname, size = fontsize }
- last_data = tfmdata
- local charnum = tonumber(n)
- if not charnum then
- -- charnum = tfmdata.unicodes[n]
- charnum = fonts.helpers.nametoslot(n)
- end
- local c = tfmdata.characters[charnum]
- local d = tfmdata.descriptions[charnum]
- local parameters = tfmdata.parameters
- if d then
- local factor = (parameters.size/parameters.units)*((7200/7227)/65536)
- local llx, lly, urx, ury = unpack(d.boundingbox)
- llx, lly, urx, ury = llx*factor, lly*factor, urx*factor, ury*factor
- local width, italic = (d.width or 0)*factor, (d.italic or 0)*factor
- local top_accent, bot_accent = (d.top_accent or 0)*factor, (d.bot_accent or 0)*factor
- local anchors, math = d.anchors, d.math
- context.startMPcode()
- context("pickup pencircle scaled .25bp ; ")
- context('picture p ; p := image(draw textext.drt("\\gray\\char%s");); draw p ;',charnum)
- context('draw (%s,%s)--(%s,%s)--(%s,%s)--(%s,%s)--cycle withcolor green ;',llx,lly,urx,lly,urx,ury,llx,ury)
- context('draw (%s,%s)--(%s,%s) withcolor green ;',llx,0,urx,0)
- context('draw boundingbox p withcolor .2white withpen pencircle scaled .065bp ;')
- context("defaultscale := 0.05 ; ")
- -- inefficient but non critical
- local function slant_1(v,dx,dy,txt,xsign,ysign,loc,labloc)
- if #v > 0 then
- local l = { }
- for kk, vv in ipairs(v) do
- local h, k = vv.height, vv.kern
- if h and k then
- l[#l+1] = format("((%s,%s) shifted (%s,%s))",xsign*k*factor,ysign*h*factor,dx,dy)
- end
- end
- context("draw ((%s,%s) shifted (%s,%s))--%s dashed (evenly scaled .25) withcolor .5white;", xsign*v[1].kern*factor,lly,dx,dy,l[1])
- context("draw laddered (%s) withcolor .5white ;",table.concat(l,".."))
- context("draw ((%s,%s) shifted (%s,%s))--%s dashed (evenly scaled .25) withcolor .5white;", xsign*v[#v].kern*factor,ury,dx,dy,l[#l])
- for k, v in ipairs(l) do
- context("draw %s withcolor blue withpen pencircle scaled 1bp;",v)
- end
- end
- end
- local function slant_2(v,dx,dy,txt,xsign,ysign,loc,labloc)
- if #v > 0 then
- local l = { }
- for kk, vv in ipairs(v) do
- local h, k = vv.height, vv.kern
- if h and k then
- l[#l+1] = format("((%s,%s) shifted (%s,%s))",xsign*k*factor,ysign*h*factor,dx,dy)
- end
- end
- if loc == "top" then
- context('label.%s("\\type{%s}",%s shifted (0,-1bp)) ;',loc,txt,l[#l])
- else
- context('label.%s("\\type{%s}",%s shifted (0,2bp)) ;',loc,txt,l[1])
- end
- for kk, vv in ipairs(v) do
- local h, k = vv.height, vv.kern
- if h and k then
- context('label.top("(%s,%s)",%s shifted (0,-2bp));',k,h,l[kk])
- end
- end
- end
- end
- if math then
- local kerns = math.kerns
- if kerns then
- for _, slant in ipairs { slant_1, slant_2 } do
- for k,v in pairs(kerns) do
- if k == "top_right" then
- slant(v,width+italic,0,k,1,1,"top","ulft")
- elseif k == "bottom_right" then
- slant(v,width,0,k,1,1,"bot","lrt")
- elseif k == "top_left" then
- slant(v,0,0,k,-1,1,"top","ulft")
- elseif k == "bottom_left" then
- slant(v,0,0,k,-1,1,"bot","lrt")
- end
- end
- end
- end
- end
- local function show(x,y,txt)
- local xx, yy = x*factor, y*factor
- context("draw (%s,%s) withcolor blue withpen pencircle scaled 1bp;",xx,yy)
- context('label.top("\\type{%s}",(%s,%s-2bp)) ;',txt,xx,yy)
- context('label.bot("(%s,%s)",(%s,%s+2bp)) ;',x,y,xx,yy)
- end
- if anchors then
- local a = anchors.baselig
- if a then
- for k, v in pairs(a) do
- for kk, vv in ipairs(v) do
- show(vv[1],vv[2],k .. ":" .. kk)
- end
- end
- end
- local a = anchors.mark
- if a then
- for k, v in pairs(a) do
- show(v[1],v[2],k)
- end
- end
- local a = anchors.basechar
- if a then
- for k, v in pairs(a) do
- show(v[1],v[2],k)
- end
- end
- local ba = anchors.centry
- if a then
- for k, v in pairs(a) do
- show(v[1],v[2],k)
- end
- end
- local a = anchors.cexit
- if a then
- for k, v in pairs(a) do
- show(v[1],v[2],k)
- end
- end
- end
- if italic ~= 0 then
- context('draw (%s,%s-1bp)--(%s,%s-0.5bp) withcolor blue;',width,ury,width,ury)
- context('draw (%s,%s-1bp)--(%s,%s-0.5bp) withcolor blue;',width+italic,ury,width+italic,ury)
- context('draw (%s,%s-1bp)--(%s,%s-1bp) withcolor blue;',width,ury,width+italic,ury)
- context('label.lft("\\type{%s}",(%s+2bp,%s-1bp));',"italic",width,ury)
- context('label.rt("%s",(%s-2bp,%s-1bp));',d.italic,width+italic,ury)
- end
- if top_accent ~= 0 then
- context('draw (%s,%s+1bp)--(%s,%s-1bp) withcolor blue;',top_accent,ury,top_accent,ury)
- context('label.bot("\\type{%s}",(%s,%s+1bp));',"top_accent",top_accent,ury)
- context('label.top("%s",(%s,%s-1bp));',d.top_accent,top_accent,ury)
- end
- if bot_accent ~= 0 then
- context('draw (%s,%s+1bp)--(%s,%s-1bp) withcolor blue;',bot_accent,lly,bot_accent,lly)
- context('label.top("\\type{%s}",(%s,%s-1bp));',"bot_accent",top_accent,ury)
- context('label.bot("%s",(%s,%s+1bp));',d.bot_accent,bot_accent,lly)
- end
- context('draw origin withcolor red withpen pencircle scaled 1bp;')
- context("setbounds currentpicture to boundingbox currentpicture enlarged 1bp ;")
- context("currentpicture := currentpicture scaled 8 ;")
- context.stopMPcode()
- elseif c then
- local factor = (7200/7227)/65536
- context.startMPcode()
- context("pickup pencircle scaled .25bp ; ")
- context('picture p ; p := image(draw textext.drt("\\gray\\char%s");); draw p ;',charnum)
- context('draw boundingbox p withcolor .2white withpen pencircle scaled .065bp ;')
- context("defaultscale := 0.05 ; ")
- local italic, top_accent, bot_accent = (c.italic or 0)*factor, (c.top_accent or 0)*factor, (c.bot_accent or 0)*factor
- local width, height, depth = (c.width or 0)*factor, (c.height or 0)*factor, (c.depth or 0)*factor
- local ury = height
- if italic ~= 0 then
- context('draw (%s,%s-1bp)--(%s,%s-0.5bp) withcolor blue;',width,ury,width,ury)
- context('draw (%s,%s-1bp)--(%s,%s-0.5bp) withcolor blue;',width+italic,ury,width+italic,ury)
- context('draw (%s,%s-1bp)--(%s,%s-1bp) withcolor blue;',width,ury,width+italic,height)
- context('label.lft("\\type{%s}",(%s+2bp,%s-1bp));',"italic",width,height)
- context('label.rt("%6.3f bp",(%s-2bp,%s-1bp));',italic,width+italic,height)
- end
- if top_accent ~= 0 then
- context('draw (%s,%s+1bp)--(%s,%s-1bp) withcolor blue;',top_accent,ury,top_accent,height)
- context('label.bot("\\type{%s}",(%s,%s+1bp));',"top_accent",top_accent,height)
- context('label.top("%6.3f bp",(%s,%s-1bp));',top_accent,top_accent,height)
- end
- if bot_accent ~= 0 then
- context('draw (%s,%s+1bp)--(%s,%s-1bp) withcolor blue;',bot_accent,lly,bot_accent,height)
- context('label.top("\\type{%s}",(%s,%s-1bp));',"bot_accent",top_accent,height)
- context('label.bot("%6.3f bp",(%s,%s+1bp));',bot_accent,bot_accent,height)
- end
- context('draw origin withcolor red withpen pencircle scaled 1bp;')
- context("setbounds currentpicture to boundingbox currentpicture enlarged 1bp ;")
- context("currentpicture := currentpicture scaled 8 ;")
- context.stopMPcode()
- else
- context("no such shape: %s",n)
- end
- end
-
- function moduledata.fonts.show_all_shapes()
- local tfmdata = fontdata[font.current()]
- -- local _, tfmdata = fonts.definers.define { name = fontname, size = fontsize }
- last_data = tfmdata
- local unicodes, descriptions = tfmdata.unicodes, tfmdata.descriptions
- for unicode, description in fonts.iterators.descriptions(tfmdata) do
- local name = description.name
- context.StartShowGlyphShape(unicode)
- moduledata.fonts.show_shape(unicode)
- context.StopShowGlyphShape()
- end
- end
-
- function moduledata.fonts.show_shape_field(unicode,name)
- local tfmdata = last_data or fontdata[font.current()]
- -- local _, tfmdata = fonts.definers.define { name = fontname, size = fontsize }
- local d = tfmdata.descriptions[unicode]
- if d then
- if name == "unicode" then
- context("U+%04X",unicode)
- else
- d = d[name]
- if d then
- context(d)
- end
- end
- end
- end
-\stopluacode
-
-% we can move all to lua (cld)
-
-\def\GetGlyphField#1#2%
- {\ctxlua{moduledata.fonts.show_shape_field(#1,"#2")}}
-
-\def\StartShowGlyphShape#1%
- {\startTEXpage
- \nonknuthmode % default anyway
- \def\GlyphUnicode{#1}}
-
-\def\StopShowGlyphShape
- {\par
- \midaligned{\tttf\setstrut\strut\GetGlyphField\GlyphUnicode{unicode}: \GetGlyphField\GlyphUnicode{name}}%
- \stopTEXpage}
-
-\def\ShowGlyphShape#1#2#3% name size glyph
- {\begingroup
- \definedfont[#1 at #2]%
- \obeyMPboxdepth
- \ctxlua{moduledata.fonts.show_shape("#3")}%
- \endgroup}
-
-\def\ShowAllGlyphShapes#1#2% name size
- {\begingroup
- \nonknuthmode % default anyway
- \definedfont[#1 at #2]%
- \ctxlua{moduledata.fonts.show_all_shapes()}%
- \endgroup}
-
-\setupcolors
- [state=start]
-
-\continueifinputfile{s-fnt-23.mkiv}
-
-\starttext
-
-% \startTEXpage \ShowGlyphShape{simplenaskhi}{100bp}{0x62A} \stopTEXpage
-% \startTEXpage \ShowGlyphShape{simplenaskhi}{100bp}{0x2004} \stopTEXpage
-% \startTEXpage \ShowGlyphShape{simplenaskhi}{100bp}{0xF0299} \stopTEXpage
-% \startTEXpage \ShowGlyphShape{simplenaskhi}{100bp}{NameMe.1190} \stopTEXpage
-
-% \ShowAllGlyphShapes{simplenaskhi}{100bp}
-% \ShowAllGlyphShapes{xits}{100bp}
-
-\switchtobodyfont[cambria,10pt]
-
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math} {40bp}{0x00066}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math} {40bp}{0x1D453}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math} {40bp}{0x1D43F}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D444}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D447}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x02112}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D432}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D43D}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D44A}\stopTEXpage
-\startTEXpage[offset=0pt]\ShowGlyphShape{name:cambria-math}{100bp}{0x1D45D}\stopTEXpage
-
-\stoptext