diff options
Diffstat (limited to 'tex/context/fonts/mkiv/cambria-math.lfg')
-rw-r--r-- | tex/context/fonts/mkiv/cambria-math.lfg | 145 |
1 files changed, 46 insertions, 99 deletions
diff --git a/tex/context/fonts/mkiv/cambria-math.lfg b/tex/context/fonts/mkiv/cambria-math.lfg index 8f9cf73b9..9cece8369 100644 --- a/tex/context/fonts/mkiv/cambria-math.lfg +++ b/tex/context/fonts/mkiv/cambria-math.lfg @@ -1,51 +1,3 @@ -local dimensions, kerns, kernpairs if CONTEXTLMTXMODE == 0 then - - kernpairs = { -- \setupmathematics[kernpairs=yes] - [0x1D44E] = { - [0x1D44F] = 1000, -- 𝑎𝑏 demo - } - } - - kerns = { - [0x1D453] = { - force = true, - topright = { - { - kern = 1000, - }, - }, - bottomright = { - { - kern = 1000, - }, - }, - }, - } - -end - --- local patches = fonts.handlers.otf.enhancers.patches --- --- local function patch(data,filename,threshold) --- local m = data.metadata.math --- if m then --- local d = m.DisplayOperatorMinHeight or 0 --- if d < threshold then --- patches.report("DisplayOperatorMinHeight(%s -> %s)",d,threshold) --- m.DisplayOperatorMinHeight = threshold --- end --- end --- end --- --- patches.register("after","analyze math","cambria", function(data,filename) patch(data,filename,2800) end) --- patches.register("after","analyze math","cambmath",function(data,filename) patch(data,filename,2800) end) - --- -- We could stick to the italic correction here --- --- local integral_variants = { bottomright = -0.20 } --- local integral_top = { topright = 0.05 } --- local integral_bottom = { bottomright = -0.30 } - local common = fonts.goodies.load("common-math.lfg") local presets = common.mathematics.tweaks.presets @@ -59,9 +11,9 @@ return { parameters = { NoLimitSupFactor = 0, NoLimitSubFactor = 1000, - -- AccentTopShiftUp = 0, - -- FlattenedAccentTopShiftUp = 0, - -- AccentExtendMargin = 50, + -- AccentTopShiftUp = 0, + -- FlattenedAccentTopShiftUp = 0, + -- AccentExtendMargin = 50, AccentBaseDepth = 300, RadicalDegreeBottomRaisePercent = 65, RadicalKernAfterDegree = -900, @@ -77,15 +29,20 @@ return { { tweak = "addmirrors", }, - presets.matheulercalligraphic { rscale = 0.97 }, - presets.mathrsfscript { rscale = 0.97 }, - presets.mathxitsarabic { rscale = 0.95 }, + presets.scripttocalligraphic { }, + presets.rsfstoscript { rscale = 0.97 }, + presets.rsfsuprighttoscript { rscale = 0.97 }, + presets.moderntocalligraphic { rscale = 0.97 }, + presets.eulertocalligraphic { rscale = 0.97 }, + presets.xitsarabic { rscale = 0.95 }, + presets.fallbacks { }, + presets.moveitalics { correct = true }, + presets.moveitalics { correct = true, letters = true }, + presets.moveintegrals { factor = 1.5}, -- needs checking + presets.wipeitalics { }, { tweak = "simplifykerns", }, - presets.moveitalics { - correct = true - }, { tweak = "kerns", list = { @@ -237,48 +194,38 @@ return { bigslots = { 1, 2, 3, 4 }, - -- - -- experimental fixes for mkiv: - -- - dimensions = dimensions, - kerns = kerns, - kernpairs = kernpairs, }, } - --- Old - -- { - -- tweak = "dimensions", - -- list = { - - -- -- [0x00060] = { yoffset = -0.1 }, -- grave - -- -- [0x000B4] = { yoffset = -0.1 }, -- acute - -- -- [0x002C6] = { yoffset = -0.1 }, -- hat - -- -- [0x002DC] = { yoffset = -0.1 }, -- tilde - -- -- [0x000AF] = { yoffset = -0.1 }, -- bar - -- -- [0x002D8] = { yoffset = -0.15 }, -- breve - -- -- [0x002D9] = { yoffset = -0.15 }, -- dot - -- -- [0x000A8] = { yoffset = -0.1 }, -- ddot - -- -- [0x020DB] = { yoffset = -0.05 }, -- dddot - -- -- [0x002C7] = { yoffset = -0.1 }, -- check - -- -- [0x020D7] = { yoffset = -0.05 }, -- vec - - -- -- [0x00300] = { yoffset = -0.12, all=true }, -- widegrave - -- -- [0x00301] = { yoffset = -0.12, all=true }, -- wideacute - -- -- [0x00302] = { yoffset = -0.12, all=true }, -- widehat - -- -- [0x00303] = { yoffset = -0.12, all=true }, -- widetilde - -- -- [0x00304] = { yoffset = -0.12, all=true }, -- widebar - -- -- [0x00306] = { yoffset = -0.12, all=true }, -- widebreve - -- -- [0x00307] = { yoffset = -0.025, all=true }, -- widedot - -- -- [0x00308] = { yoffset = -0.025, all=true }, -- wideddot - -- -- [0x020DB] = { yoffset = -0.1, all=true }, -- widedddot - -- -- [0x0030A] = { yoffset = -0.12, all=true }, -- widering - -- -- [0x0030C] = { yoffset = -0.12, all=true }, -- widecheck - - -- [0x1D43D] = { xoffset = 0.25, width = 1.15, italic = 0.2 }, -- J - -- [0x1D487] = { anchor = 0.8 }, -- bold lower case italic f - -- -- [0x1D487] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- bold lower case italic f - - -- }, - -- }, +-- For now we keep these commented as they show where we came from. + +-- { +-- tweak = "dimensions", +-- list = { +-- -- [0x00060] = { yoffset = -0.1 }, -- grave +-- -- [0x000B4] = { yoffset = -0.1 }, -- acute +-- -- [0x002C6] = { yoffset = -0.1 }, -- hat +-- -- [0x002DC] = { yoffset = -0.1 }, -- tilde +-- -- [0x000AF] = { yoffset = -0.1 }, -- bar +-- -- [0x002D8] = { yoffset = -0.15 }, -- breve +-- -- [0x002D9] = { yoffset = -0.15 }, -- dot +-- -- [0x000A8] = { yoffset = -0.1 }, -- ddot +-- -- [0x020DB] = { yoffset = -0.05 }, -- dddot +-- -- [0x002C7] = { yoffset = -0.1 }, -- check +-- -- [0x020D7] = { yoffset = -0.05 }, -- vec +-- -- [0x00300] = { yoffset = -0.12, all=true }, -- widegrave +-- -- [0x00301] = { yoffset = -0.12, all=true }, -- wideacute +-- -- [0x00302] = { yoffset = -0.12, all=true }, -- widehat +-- -- [0x00303] = { yoffset = -0.12, all=true }, -- widetilde +-- -- [0x00304] = { yoffset = -0.12, all=true }, -- widebar +-- -- [0x00306] = { yoffset = -0.12, all=true }, -- widebreve +-- -- [0x00307] = { yoffset = -0.025, all=true }, -- widedot +-- -- [0x00308] = { yoffset = -0.025, all=true }, -- wideddot +-- -- [0x020DB] = { yoffset = -0.1, all=true }, -- widedddot +-- -- [0x0030A] = { yoffset = -0.12, all=true }, -- widering +-- -- [0x0030C] = { yoffset = -0.12, all=true }, -- widecheck +-- [0x1D43D] = { xoffset = 0.25, width = 1.15, italic = 0.2 }, -- J +-- [0x1D487] = { anchor = 0.8 }, -- bold lower case italic f +-- -- [0x1D487] = { xoffset = 0, width = 1, italic = 0, anchor = 1.3 }, -- bold lower case italic f +-- }, +-- }, |