Difference between revisions of "Command/definefontfallback"

From ConTeXt wiki
Jump to navigationJump to search
 
Line 4: Line 4:
 
}}
 
}}
  
== [[Help:Reference|Syntax]] (autogenerated)] ==
+
== [[Help:Reference|Syntax]] (autogenerated) ==
 
<syntax>definefontfallback</syntax>
 
<syntax>definefontfallback</syntax>
 
== [[Help:Reference|Syntax]] ==
 
== [[Help:Reference|Syntax]] ==

Latest revision as of 14:57, 15 October 2019

\definefontfallback

Syntax (autogenerated)

\definefontfallback[...][...][...,...][...=...,...]
[...]name
[...]font name
[...,...]name number
rscalenumber
forceyes no
checkyes no
offsetnumber name
targetnumber name
featuresname
factornumber
methodlowercase uppercase


Syntax

\definefontfallback[...][...][...][...=...]
[...] IDENTIFIER (typescript identifier)
[...] TEXT (existing font set)
[...] TEXT (Unicode ranges)
offset IDENTIFIER NUMBER
rscale NUMBER
force yes no
check yes no

Description

This command allows to define fallback fonts for certain glyphs which are not found in the main font. The command takes four arguments where the last one is optional. The third argument (Unicode ranges) may be either a comma separated list of slots, or a a range with the syntax slot-slot or one of the mnemonic names from the following table.

Block Range Script Description
aegeannumbers 0x10100-0x1013F Aegean Numbers
ahom 0x11700-0x1173F Ahom
alchemicalsymbols 0x1F700-0x1F77F Alchemical Symbols
alphabeticpresentationforms 0x0FB00-0x0FB4F latn Alphabetic Presentation Forms
anatolianhieroglyphs 0x14400-0x1467F Anatolian Hieroglyphs
ancientgreekmusicalnotation 0x1D200-0x1D24F grek Ancient Greek Musical Notation
ancientgreeknumbers 0x10140-0x1018F grek Ancient Greek Numbers
ancientsymbols 0x10190-0x101CF grek Ancient Symbols
arabic 0x00600-0x006FF arab Arabic
arabicextendeda 0x008A0-0x008FF Arabic Extended-A
arabicmathematicalalphabeticsymbols 0x1EE00-0x1EEFF Arabic Mathematical Alphabetic Symbols
arabicpresentationformsa 0x0FB50-0x0FDFF arab Arabic Presentation Forms-A
arabicpresentationformsb 0x0FE70-0x0FEFF arab Arabic Presentation Forms-B
arabicsupplement 0x00750-0x0077F arab Arabic Supplement
armenian 0x00530-0x0058F armn Armenian
arrows 0x02190-0x021FF Arrows
avestan 0x10B00-0x10B3F Avestan
balinese 0x01B00-0x01B7F bali Balinese
bamum 0x0A6A0-0x0A6FF Bamum
bamumsupplement 0x16800-0x16A3F Bamum Supplement
basiclatin 0x00000-0x0007F latn Basic Latin
bassavah 0x16AD0-0x16AFF Bassa Vah
batak 0x01BC0-0x01BFF Batak
bengali 0x00980-0x009FF beng Bengali
blockelements 0x02580-0x0259F bopo Block Elements
bopomofo 0x03100-0x0312F bopo Bopomofo
bopomofoextended 0x031A0-0x031BF bopo Bopomofo Extended
boxdrawing 0x02500-0x0257F Box Drawing
brahmi 0x11000-0x1107F Brahmi
braillepatterns 0x02800-0x028FF brai Braille Patterns
buginese 0x01A00-0x01A1F bugi Buginese
buhid 0x01740-0x0175F buhd Buhid
byzantinemusicalsymbols 0x1D000-0x1D0FF byzm Byzantine Musical Symbols
carian 0x102A0-0x102DF Carian
caucasianalbanian 0x10530-0x1056F Caucasian Albanian
chakma 0x11100-0x1114F Chakma
cham 0x0AA00-0x0AA5F Cham
cherokee 0x013A0-0x013FF cher Cherokee
cherokeesupplement 0x0AB70-0x0ABBF Cherokee Supplement
cjkcompatibility 0x03300-0x033FF hang CJK Compatibility
cjkcompatibilityforms 0x0FE30-0x0FE4F hang CJK Compatibility Forms
cjkcompatibilityideographs 0x0F900-0x0FAFF hang CJK Compatibility Ideographs
cjkcompatibilityideographssupplement 0x2F800-0x2FA1F hang CJK Compatibility Ideographs Supplement
cjkradicalssupplement 0x02E80-0x02EFF hang CJK Radicals Supplement
cjkstrokes 0x031C0-0x031EF hang CJK Strokes
cjksymbolsandpunctuation 0x03000-0x0303F hang CJK Symbols and Punctuation
cjkunifiedideographs 0x04E00-0x09FFF hang CJK Unified Ideographs", catcode = "letter
cjkunifiedideographsextensiona 0x03400-0x04DBF hang CJK Unified Ideographs Extension A
cjkunifiedideographsextensionb 0x20000-0x2A6DF hang CJK Unified Ideographs Extension B
cjkunifiedideographsextensionc 0x2A700-0x2B73F CJK Unified Ideographs Extension C
cjkunifiedideographsextensiond 0x2B740-0x2B81F CJK Unified Ideographs Extension D
cjkunifiedideographsextensione 0x2B820-0x2CEAF CJK Unified Ideographs Extension E
combiningdiacriticalmarks 0x00300-0x0036F Combining Diacritical Marks
combiningdiacriticalmarksextended 0x01AB0-0x01AFF Combining Diacritical Marks Extended
combiningdiacriticalmarksforsymbols 0x020D0-0x020FF Combining Diacritical Marks for Symbols
combiningdiacriticalmarkssupplement 0x01DC0-0x01DFF Combining Diacritical Marks Supplement
combininghalfmarks 0x0FE20-0x0FE2F Combining Half Marks
commonindicnumberforms 0x0A830-0x0A83F Common Indic Number Forms
controlpictures 0x02400-0x0243F Control Pictures
coptic 0x02C80-0x02CFF copt Coptic
copticepactnumbers 0x102E0-0x102FF Coptic Epact Numbers
countingrodnumerals 0x1D360-0x1D37F Counting Rod Numerals
cuneiform 0x12000-0x123FF xsux Cuneiform
cuneiformnumbersandpunctuation 0x12400-0x1247F xsux Cuneiform Numbers and Punctuation
currencysymbols 0x020A0-0x020CF Currency Symbols
cypriotsyllabary 0x10800-0x1083F cprt Cypriot Syllabary
cyrillic 0x00400-0x004FF cyrl Cyrillic
cyrillicextendeda 0x02DE0-0x02DFF cyrl Cyrillic Extended-A
cyrillicextendedb 0x0A640-0x0A69F cyrl Cyrillic Extended-B
cyrillicsupplement 0x00500-0x0052F cyrl Cyrillic Supplement
deseret 0x10400-0x1044F dsrt Deseret
devanagari 0x00900-0x0097F deva Devanagari
devanagariextended 0x0A8E0-0x0A8FF Devanagari Extended
digitsarabicindic 0x00660-0x00669 math
digitsbold 0x1D7CE-0x1D7D8 math
digitsdoublestruck 0x1D7D8-0x1D7E2 math
digitsextendedarabicindic 0x006F0-0x006F9 math
digitslatin 0x00030-0x00039 math
digitsmonospace 0x1D7F6-0x1D80F math
digitsnormal 0x00030-0x00039 math
digitssansserifbold 0x1D7EC-0x1D805 math
digitssansserifnormal 0x1D7E2-0x1D7EC math
dingbats 0x02700-0x027BF Dingbats
dominotiles 0x1F030-0x1F09F Domino Tiles
duployan 0x1BC00-0x1BC9F Duployan
earlydynasticcuneiform 0x12480-0x1254F Early Dynastic Cuneiform
egyptianhieroglyphs 0x13000-0x1342F Egyptian Hieroglyphs
elbasan 0x10500-0x1052F Elbasan
emoticons 0x1F600-0x1F64F Emoticons
enclosedalphanumerics 0x02460-0x024FF Enclosed Alphanumerics
enclosedalphanumericsupplement 0x1F100-0x1F1FF Enclosed Alphanumeric Supplement
enclosedcjklettersandmonths 0x03200-0x032FF Enclosed CJK Letters and Months
enclosedideographicsupplement 0x1F200-0x1F2FF Enclosed Ideographic Supplement
ethiopic 0x01200-0x0137F ethi Ethiopic
ethiopicextended 0x02D80-0x02DDF ethi Ethiopic Extended
ethiopicextendeda 0x0AB00-0x0AB2F Ethiopic Extended-A
ethiopicsupplement 0x01380-0x0139F ethi Ethiopic Supplement
generalpunctuation 0x02000-0x0206F General Punctuation
geometricshapes 0x025A0-0x025FF math Geometric Shapes
geometricshapesextended 0x1F780-0x1F7FF Geometric Shapes Extended
georgian 0x010A0-0x010FF geor Georgian
georgiansupplement 0x02D00-0x02D2F geor Georgian Supplement
glagolitic 0x02C00-0x02C5F glag Glagolitic
gothic 0x10330-0x1034F goth Gothic
grantha 0x11300-0x1137F Grantha
greekandcoptic 0x00370-0x003FF grek Greek and Coptic
greekextended 0x01F00-0x01FFF grek Greek Extended
gujarati 0x00A80-0x00AFF gujr Gujarati
gurmukhi 0x00A00-0x00A7F guru Gurmukhi
halfwidthandfullwidthforms 0x0FF00-0x0FFEF Halfwidth and Fullwidth Forms
hangulcompatibilityjamo 0x03130-0x0318F jamo Hangul Compatibility Jamo
hanguljamo 0x01100-0x011FF jamo Hangul Jamo
hanguljamoextendeda 0x0A960-0x0A97F Hangul Jamo Extended-A
hanguljamoextendedb 0x0D7B0-0x0D7FF Hangul Jamo Extended-B
hangulsyllables 0x0AC00-0x0D7AF hang Hangul Syllables
hanunoo 0x01720-0x0173F hano Hanunoo
hatran 0x108E0-0x108FF Hatran
hebrew 0x00590-0x005FF hebr Hebrew
highprivateusesurrogates 0x0DB80-0x0DBFF High Private Use Surrogates
highsurrogates 0x0D800-0x0DB7F High Surrogates
hiragana 0x03040-0x0309F kana Hiragana
ideographicdescriptioncharacters 0x02FF0-0x02FFF Ideographic Description Characters
imperialaramaic 0x10840-0x1085F Imperial Aramaic
inscriptionalpahlavi 0x10B60-0x10B7F Inscriptional Pahlavi
inscriptionalparthian 0x10B40-0x10B5F Inscriptional Parthian
ipaextensions 0x00250-0x002AF IPA Extensions
javanese 0x0A980-0x0A9DF Javanese
kaithi 0x11080-0x110CF Kaithi
kanasupplement 0x1B000-0x1B0FF Kana Supplement
kanbun 0x03190-0x0319F Kanbun
kangxiradicals 0x02F00-0x02FDF Kangxi Radicals
kannada 0x00C80-0x00CFF knda Kannada
katakana 0x030A0-0x030FF kana Katakana
katakanaphoneticextensions 0x031F0-0x031FF kana Katakana Phonetic Extensions
kayahli 0x0A900-0x0A92F Kayah Li
kharoshthi 0x10A00-0x10A5F khar Kharoshthi
khmer 0x01780-0x017FF khmr Khmer
khmersymbols 0x019E0-0x019FF khmr Khmer Symbols
khojki 0x11200-0x1124F Khojki
khudawadi 0x112B0-0x112FF Khudawadi
lao 0x00E80-0x00EFF lao Lao
latinextendeda 0x00100-0x0017F latn Latin Extended-A
latinextendedadditional 0x01E00-0x01EFF latn Latin Extended Additional
latinextendedb 0x00180-0x0024F latn Latin Extended-B
latinextendedc 0x02C60-0x02C7F latn Latin Extended-C
latinextendedd 0x0A720-0x0A7FF latn Latin Extended-D
latinextendede 0x0AB30-0x0AB6F Latin Extended-E
latinsupplement 0x00080-0x000FF latn Latin-1 Supplement
lepcha 0x01C00-0x01C4F Lepcha
letterlikesymbols 0x02100-0x0214F 1=math} Letterlike Symbols
limbu 0x01900-0x0194F limb Limbu
lineara 0x10600-0x1077F Linear A
linearbideograms 0x10080-0x100FF linb Linear B Ideograms
linearbsyllabary 0x10000-0x1007F linb Linear B Syllabary
lisu 0x0A4D0-0x0A4FF Lisu
lowercasebold 0x1D41A-0x1D433 math
lowercaseboldfraktur 0x1D586-0x1D59F math
lowercasebolditalic 0x1D482-0x1D49B math
lowercaseboldscript 0x1D4EA-0x1D503 math
lowercasedoublestruck 0x1D552-0x1D56B math
lowercasefraktur 0x1D51E-0x1D537 math
lowercasegreekbold 0x1D6C2-0x1D6DB math
lowercasegreekbolditalic 0x1D736-0x1D74F math
lowercasegreekitalic 0x1D6FC-0x1D715 math
lowercasegreeknormal 0x003B1-0x003CA math
lowercasegreeksansserifbold 0x1D770-0x1D789 math
lowercasegreeksansserifbolditalic 0x1D7AA-0x1D7C3 math
lowercaseitalic 0x1D44E-0x1D467 math
lowercasemonospace 0x1D68A-0x1D6A3 math
lowercasenormal 0x00061-0x0007A math
lowercasesansserifbold 0x1D5EE-0x1D607 math
lowercasesansserifbolditalic 0x1D656-0x1D66F math
lowercasesansserifitalic 0x1D622-0x1D63B math
lowercasesansserifnormal 0x1D5BA-0x1D5D3 math
lowercasescript 0x1D4B6-0x1D4CF math
lowsurrogates 0x0DC00-0x0DFFF Low Surrogates
lycian 0x10280-0x1029F Lycian
lydian 0x10920-0x1093F Lydian
mahajani 0x11150-0x1117F Mahajani
mahjongtiles 0x1F000-0x1F02F Mahjong Tiles
malayalam 0x00D00-0x00D7F mlym Malayalam
mandaic 0x00840-0x0085F mand Mandaic
manichaean 0x10AC0-0x10AFF Manichaean
mathematicalalphanumericsymbols 0x1D400-0x1D7FF math Mathematical Alphanumeric Symbols
mathematicaloperators 0x02200-0x022FF math Mathematical Operators
meeteimayek 0x0ABC0-0x0ABFF Meetei Mayek
meeteimayekextensions 0x0AAE0-0x0AAFF Meetei Mayek Extensions
mendekikakui 0x1E800-0x1E8DF Mende Kikakui
meroiticcursive 0x109A0-0x109FF Meroitic Cursive
meroitichieroglyphs 0x10980-0x1099F Meroitic Hieroglyphs
miao 0x16F00-0x16F9F Miao
miscellaneousmathematicalsymbolsa 0x027C0-0x027EF math Miscellaneous Mathematical Symbols-A
miscellaneousmathematicalsymbolsb 0x02980-0x029FF math Miscellaneous Mathematical Symbols-B
miscellaneoussymbols 0x02600-0x026FF math Miscellaneous Symbols
miscellaneoussymbolsandarrows 0x02B00-0x02BFF math Miscellaneous Symbols and Arrows
miscellaneoussymbolsandpictographs 0x1F300-0x1F5FF Miscellaneous Symbols and Pictographs
miscellaneoustechnical 0x02300-0x023FF math Miscellaneous Technical
modi 0x11600-0x1165F Modi
modifiertoneletters 0x0A700-0x0A71F Modifier Tone Letters
mongolian 0x01800-0x018AF mong Mongolian
mro 0x16A40-0x16A6F Mro
multani 0x11280-0x112AF Multani
musicalsymbols 0x1D100-0x1D1FF musc Musical Symbols
myanmar 0x01000-0x0109F mymr Myanmar
myanmarextendeda 0x0AA60-0x0AA7F Myanmar Extended-A
myanmarextendedb 0x0A9E0-0x0A9FF Myanmar Extended-B
nabataean 0x10880-0x108AF Nabataean
newtailue 0x01980-0x019DF New Tai Lue
nko 0x007C0-0x007FF nko NKo
numberforms 0x02150-0x0218F Number Forms
ogham 0x01680-0x0169F ogam Ogham
olchiki 0x01C50-0x01C7F Ol Chiki
oldhungarian 0x10C80-0x10CFF Old Hungarian
olditalic 0x10300-0x1032F ital Old Italic
oldnortharabian 0x10A80-0x10A9F Old North Arabian
oldpermic 0x10350-0x1037F Old Permic
oldpersian 0x103A0-0x103DF xpeo Old Persian
oldsoutharabian 0x10A60-0x10A7F Old South Arabian
oldturkic 0x10C00-0x10C4F Old Turkic
opticalcharacterrecognition 0x02440-0x0245F Optical Character Recognition
oriya 0x00B00-0x00B7F orya Oriya
ornamentaldingbats 0x1F650-0x1F67F Ornamental Dingbats
osmanya 0x10480-0x104AF osma Osmanya
pahawhhmong 0x16B00-0x16B8F Pahawh Hmong
palmyrene 0x10860-0x1087F Palmyrene
paucinhau 0x11AC0-0x11AFF Pau Cin Hau
phagspa 0x0A840-0x0A87F phag Phags-pa
phaistosdisc 0x101D0-0x101FF Phaistos Disc
phoenician 0x10900-0x1091F phnx Phoenician
phoneticextensions 0x01D00-0x01D7F Phonetic Extensions
phoneticextensionssupplement 0x01D80-0x01DBF Phonetic Extensions Supplement
playingcards 0x1F0A0-0x1F0FF Playing Cards
privateusearea 0x0E000-0x0F8FF Private Use Area
psalterpahlavi 0x10B80-0x10BAF Psalter Pahlavi
rejang 0x0A930-0x0A95F Rejang
ruminumeralsymbols 0x10E60-0x10E7F Rumi Numeral Symbols
runic 0x016A0-0x016FF runr Runic
samaritan 0x00800-0x0083F Samaritan
saurashtra 0x0A880-0x0A8DF Saurashtra
sharada 0x11180-0x111DF Sharada
shavian 0x10450-0x1047F shaw Shavian
shorthandformatcontrols 0x1BCA0-0x1BCAF Shorthand Format Controls
siddham 0x11580-0x115FF Siddham
sinhala 0x00D80-0x00DFF sinh Sinhala
sinhalaarchaicnumbers 0x111E0-0x111FF Sinhala Archaic Numbers
smallformvariants 0x0FE50-0x0FE6F Small Form Variants
sorasompeng 0x110D0-0x110FF Sora Sompeng
spacingmodifierletters 0x002B0-0x002FF Spacing Modifier Letters
specials 0x0FFF0-0x0FFFF Specials
sundanese 0x01B80-0x01BBF Sundanese
sundanesesupplement 0x01CC0-0x01CCF Sundanese Supplement
superscriptsandsubscripts 0x02070-0x0209F Superscripts and Subscripts
supplementalarrowsa 0x027F0-0x027FF math Supplemental Arrows-A
supplementalarrowsb 0x02900-0x0297F math Supplemental Arrows-B
supplementalarrowsc 0x1F800-0x1F8FF math Supplemental Arrows-C
supplementalmathematicaloperators 0x02A00-0x02AFF math Supplemental Mathematical Operators
supplementalpunctuation 0x02E00-0x02E7F Supplemental Punctuation
supplementalsymbolsandpictographs 0x1F900-0x1F9FF Supplemental Symbols and Pictographs
supplementaryprivateuseareaa 0xF0000-0xFFFFF Supplementary Private Use Area-A
supplementaryprivateuseareab 0x100000-0x10FFFF Supplementary Private Use Area-B
suttonsignwriting 0x1D800-0x1DAAF Sutton SignWriting
sylotinagri 0x0A800-0x0A82F sylo Syloti Nagri
syriac 0x00700-0x0074F syrc Syriac
tagalog 0x01700-0x0171F tglg Tagalog
tagbanwa 0x01760-0x0177F tagb Tagbanwa
tags 0xE0000-0xE007F Tags
taile 0x01950-0x0197F tale Tai Le
taitham 0x01A20-0x01AAF Tai Tham
taiviet 0x0AA80-0x0AADF Tai Viet
taixuanjingsymbols 0x1D300-0x1D35F Tai Xuan Jing Symbols
takri 0x11680-0x116CF Takri
tamil 0x00B80-0x00BFF taml Tamil
telugu 0x00C00-0x00C7F telu Telugu
thaana 0x00780-0x007BF thaa Thaana
thai 0x00E00-0x00E7F thai Thai
tibetan 0x00F00-0x00FFF tibt Tibetan
tifinagh 0x02D30-0x02D7F tfng Tifinagh
tirhuta 0x11480-0x114DF Tirhuta
transportandmapsymbols 0x1F680-0x1F6FF Transport and Map Symbols
ugaritic 0x10380-0x1039F ugar Ugaritic
unifiedcanadianaboriginalsyllabics 0x01400-0x0167F cans Unified Canadian Aboriginal Syllabics
unifiedcanadianaboriginalsyllabicsextended 0x018B0-0x018FF Unified Canadian Aboriginal Syllabics Extended
uppercasebold 0x1D400-0x1D419 math
uppercaseboldfraktur 0x1D56C-0x1D585 math
uppercasebolditalic 0x1D468-0x1D481 math
uppercaseboldscript 0x1D4D0-0x1D4E9 math
uppercasedoublestruck 0x1D538-0x1D551 math
uppercasefraktur 0x1D504-0x1D51D math
uppercasegreekbold 0x1D6A8-0x1D6C1 math
uppercasegreekbolditalic 0x1D71C-0x1D735 math
uppercasegreekitalic 0x1D6E2-0x1D6FB math
uppercasegreeknormal 0x00391-0x003AA math
uppercasegreeksansserifbold 0x1D756-0x1D76F math
uppercasegreeksansserifbolditalic 0x1D790-0x1D7A9 math
uppercaseitalic 0x1D434-0x1D44D math
uppercasemonospace 0x1D670-0x1D689 math
uppercasenormal 0x00041-0x0005A math
uppercasesansserifbold 0x1D5D4-0x1D5ED math
uppercasesansserifbolditalic 0x1D63C-0x1D655 math
uppercasesansserifitalic 0x1D608-0x1D621 math
uppercasesansserifnormal 0x1D5A0-0x1D5B9 math
uppercasescript 0x1D49C-0x1D4B5 math
vai 0x0A500-0x0A63F Vai
variationselectors 0x0FE00-0x0FE0F Variation Selectors
variationselectorssupplement 0xE0100-0xE01EF Variation Selectors Supplement
vedicextensions 0x01CD0-0x01CFF Vedic Extensions
verticalforms 0x0FE10-0x0FE1F Vertical Forms
warangciti 0x118A0-0x118FF Warang Citi
yijinghexagramsymbols 0x04DC0-0x04DFF yi Yijing Hexagram Symbols
yiradicals 0x0A490-0x0A4CF yi Yi Radicals
yisyllables 0x0A000-0x0A48F yi Yi Syllables

Example

In the example we load the moustache brackets from XITS Math because they are not available in Latin Modern Math, which is the default math font. Of course, the technique also works for text fonts.

\definefontfallback [xits-fallback] [file:xits-math.otf] [023B0,023B1]

\definefontsynonym  [MathRoman]     [modern]             [fallbacks=xits-fallback]

\starttext

Consider this increasing sequence of moustached primes:

\startformula
  \lmoustache 11 \rmoustache <

  \lmoustache 29 \rmoustache <

  \lmoustache 31 \rmoustache <

  \lmoustache 37 \rmoustache <

  \lmoustache 41 \rmoustache
\stopformula

\stoptext

Here is an image showing the relevant part of the PDF file obtained by running context on a file containing this document:

definefontfallback-example.png

See also

Help from ConTeXt-Mailinglist/Forum

All issues with: