From e005748401471273a119724acf5e1567f2a04eee Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Mon, 12 Feb 2018 10:25:10 +0100 Subject: 2018-02-12 09:01:00 --- doc/context/documents/general/qrcs/setup-cs.pdf | Bin 843492 -> 833609 bytes doc/context/documents/general/qrcs/setup-de.pdf | Bin 841925 -> 831499 bytes doc/context/documents/general/qrcs/setup-en.pdf | Bin 847112 -> 835950 bytes doc/context/documents/general/qrcs/setup-fr.pdf | Bin 838758 -> 829350 bytes doc/context/documents/general/qrcs/setup-it.pdf | Bin 843096 -> 835751 bytes .../documents/general/qrcs/setup-mapping-cs.pdf | Bin 359053 -> 358935 bytes .../documents/general/qrcs/setup-mapping-de.pdf | Bin 438510 -> 438388 bytes .../documents/general/qrcs/setup-mapping-en.pdf | Bin 356379 -> 356263 bytes .../documents/general/qrcs/setup-mapping-fr.pdf | Bin 358911 -> 358807 bytes .../documents/general/qrcs/setup-mapping-it.pdf | Bin 358228 -> 358110 bytes .../documents/general/qrcs/setup-mapping-nl.pdf | Bin 357701 -> 357586 bytes .../documents/general/qrcs/setup-mapping-ro.pdf | Bin 624938 -> 624829 bytes doc/context/documents/general/qrcs/setup-nl.pdf | Bin 836768 -> 825826 bytes doc/context/documents/general/qrcs/setup-ro.pdf | Bin 837869 -> 829455 bytes .../general/fonts/fonts/fonts-extensions.tex | 17 ++++ .../sources/general/fonts/fonts/fonts-tricks.tex | 86 +++++++++++++++++++++ .../sources/general/manuals/luatex/luatex.tex | 2 +- 17 files changed, 104 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/context/documents/general/qrcs/setup-cs.pdf b/doc/context/documents/general/qrcs/setup-cs.pdf index 5bf40eedd..79755c1de 100644 Binary files a/doc/context/documents/general/qrcs/setup-cs.pdf and b/doc/context/documents/general/qrcs/setup-cs.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-de.pdf b/doc/context/documents/general/qrcs/setup-de.pdf index e013bd08c..870abf15a 100644 Binary files a/doc/context/documents/general/qrcs/setup-de.pdf and b/doc/context/documents/general/qrcs/setup-de.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-en.pdf b/doc/context/documents/general/qrcs/setup-en.pdf index 59d9ea0c1..1d8b2788a 100644 Binary files a/doc/context/documents/general/qrcs/setup-en.pdf and b/doc/context/documents/general/qrcs/setup-en.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-fr.pdf b/doc/context/documents/general/qrcs/setup-fr.pdf index 47280e636..80356c268 100644 Binary files a/doc/context/documents/general/qrcs/setup-fr.pdf and b/doc/context/documents/general/qrcs/setup-fr.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-it.pdf b/doc/context/documents/general/qrcs/setup-it.pdf index 50858a978..cf7967076 100644 Binary files a/doc/context/documents/general/qrcs/setup-it.pdf and b/doc/context/documents/general/qrcs/setup-it.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-cs.pdf b/doc/context/documents/general/qrcs/setup-mapping-cs.pdf index 54bd74e36..a87569c5e 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-cs.pdf and b/doc/context/documents/general/qrcs/setup-mapping-cs.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-de.pdf b/doc/context/documents/general/qrcs/setup-mapping-de.pdf index bbd32c9e3..273d9a418 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-de.pdf and b/doc/context/documents/general/qrcs/setup-mapping-de.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-en.pdf b/doc/context/documents/general/qrcs/setup-mapping-en.pdf index d402b0401..632e7724d 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-en.pdf and b/doc/context/documents/general/qrcs/setup-mapping-en.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-fr.pdf b/doc/context/documents/general/qrcs/setup-mapping-fr.pdf index d7901af50..11fe1bca1 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-fr.pdf and b/doc/context/documents/general/qrcs/setup-mapping-fr.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-it.pdf b/doc/context/documents/general/qrcs/setup-mapping-it.pdf index bf52b6925..a21650aac 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-it.pdf and b/doc/context/documents/general/qrcs/setup-mapping-it.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-nl.pdf b/doc/context/documents/general/qrcs/setup-mapping-nl.pdf index ae4a83ae8..52a71db58 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-nl.pdf and b/doc/context/documents/general/qrcs/setup-mapping-nl.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-mapping-ro.pdf b/doc/context/documents/general/qrcs/setup-mapping-ro.pdf index e4046454c..f9aef80e4 100644 Binary files a/doc/context/documents/general/qrcs/setup-mapping-ro.pdf and b/doc/context/documents/general/qrcs/setup-mapping-ro.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-nl.pdf b/doc/context/documents/general/qrcs/setup-nl.pdf index 0746d404c..05d8b86c6 100644 Binary files a/doc/context/documents/general/qrcs/setup-nl.pdf and b/doc/context/documents/general/qrcs/setup-nl.pdf differ diff --git a/doc/context/documents/general/qrcs/setup-ro.pdf b/doc/context/documents/general/qrcs/setup-ro.pdf index f9c650582..432c9324f 100644 Binary files a/doc/context/documents/general/qrcs/setup-ro.pdf and b/doc/context/documents/general/qrcs/setup-ro.pdf differ diff --git a/doc/context/sources/general/fonts/fonts/fonts-extensions.tex b/doc/context/sources/general/fonts/fonts/fonts-extensions.tex index 26b3d5f2d..5800f2c57 100644 --- a/doc/context/sources/general/fonts/fonts/fonts-extensions.tex +++ b/doc/context/sources/general/fonts/fonts/fonts-extensions.tex @@ -797,6 +797,23 @@ We use the following example. The results are shown in \in {figure} \getbuffer [example] \stopplacefigure +You can see what happens in \in {figure} [expansion:visualized]. + +\startbuffer[example] + \setupalign[hz] + \enabletrackers[*expansion*] + \definefontfeature[boundingbox][boundingbox={frame,empty}] + \definedfont[Serif*default,quality,boundingbox @ 12.1pt] + \samplefile{sapolsky}\par + \disabletrackers[*expansion*] +\stopbuffer + +\typebuffer[example] + +\startplacefigure[reference=expansion:visualized,title=The injected expansion kerns.] + \getbuffer [example] +\stopplacefigure + \startsubsubject[title=Expansion and kerning] When we expand glyphs we also need to look at the font kerns between them. In the diff --git a/doc/context/sources/general/fonts/fonts/fonts-tricks.tex b/doc/context/sources/general/fonts/fonts/fonts-tricks.tex index 86517bd57..b8903b5ed 100644 --- a/doc/context/sources/general/fonts/fonts/fonts-tricks.tex +++ b/doc/context/sources/general/fonts/fonts/fonts-tricks.tex @@ -299,4 +299,90 @@ The result is shown in \in {figure} [fig:alternativestyle]. Relevant commands ar \stopsection +\startsection[title={A virtual hack}] + +Here is some virtual trickery. A virtual font is just a font but instead of a +character being a reference to a slot in a font (often via an index) it +constructs a glyph from whatever characters, rules, displacements, inline \PDF\ +code, etc. We use them a lot deep down in \CONTEXT. The next example defines two +characters represented by rules. This definition is about as minimalistic as +reasonable and demonstrates how we can apply expansion (aka hz) to such a font. +\footnote {You need \LUATEX\ 1.08 or later for this.} We store the font id (a +number) in a macro. Watch how we don't refer to a glyph in a font. Because we +don't specify its type as \type {virtual} we can leave out the \type {font} +table. After all, we don't refer to real glyphs. + +\startbuffer +\startluacode +local d = 400000 -- just over 6pt +local a = font.define { + characters = { + [string.byte("A")] = + { + width = d, + depth = d, + commands = { { "down", d }, { "rule", d, d } }, + expansion_factor = 1000, + }, + [string.byte("B")] = + { + width = d, + height = d, + commands = { { "rule", d, d } }, + expansion_factor = 500, + }, + + }, + parameters = { + space = 2*d, + space_stretch = d, + space_shrink = d, + }, + stretch = 8, + shrink = 8, + step = 2, + name = "foo" +} + +tex.count.scratchcounter = a +\stopluacode + +\edef\MyFontID{\the\scratchcounter} +\stopbuffer + +\typebuffer \getbuffer + +% \enabletrackers[*expans*] + +\startbuffer +\startoverlay + {\vbox \bgroup + \setuptolerance[verytolerant,stretch] + \setfontid\MyFontID + \dorecurse{5}{ABABABABABABABABABABABABABABABABA } + \egroup} + {\vbox \bgroup + \normaladjustspacing2 + \middlegray + \setuptolerance[verytolerant,stretch] + \setfontid\MyFontID + \dorecurse{5}{ABABABABABABABABABABABABABABABABA } + \egroup} +\stopoverlay +\stopbuffer + +We test this with some rather low level code and show the result in \in {figure} +[fig:virtualhack]. Of course you will never define a font this way if only +because we don't set important parameters and this version is not generic in the +sense that it scales well. You can find better examples elsewhere in the manual +and in the distribution. + +\typebuffer + +\startplacefigure[title={A virtual hack.},reference=fig:virtualhack] + \getbuffer +\stopplacefigure + +\stopsection + \stopchapter diff --git a/doc/context/sources/general/manuals/luatex/luatex.tex b/doc/context/sources/general/manuals/luatex/luatex.tex index 33a2327c0..42e487bde 100644 --- a/doc/context/sources/general/manuals/luatex/luatex.tex +++ b/doc/context/sources/general/manuals/luatex/luatex.tex @@ -44,7 +44,7 @@ \dontcomplain \startdocument - [status=beta, + [status=experimental, version=1.07.0] \startnotmode[*export] -- cgit v1.2.3