1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16\startMPcalculation{simplefun}
17
18 pen SymbolPen ; SymbolPen := pencircle scaled 14 ;
19
20 vardef SymbolBullet = fill unitcircle scaled 3 shifted (1.5,1.5) withpen SymbolPen enddef ;
21 vardef SymbolDash = draw (originright) scaled 3 shifted (1.5,3.0) withpen SymbolPen scaled 2 enddef ;
22 vardef SymbolTriangle = draw unittriangle scaled 3 shifted (1.5,1.5) withpen SymbolPen enddef ;
23 vardef SymbolCircle = fill unitcircle scaled 3 shifted (1.5,1.5) withpen SymbolPen enddef ;
24 vardef SymbolSquare = draw unitsquare scaled (3-116) shifted (1.5,1.5) withpen SymbolPen enddef ;
25 vardef SymbolDiamond = draw unitdiamond scaled 3 shifted (1.5,1.5) withpen SymbolPen enddef ;
26 vardef SymbolBlackTriangle = fillup unittriangle scaled (3-116) shifted (1.5,1.5) withpen SymbolPen enddef ;
27 vardef SymbolBlackSquare = fillup unitsquare scaled (3-116) shifted (1.5,1.5) withpen SymbolPen enddef ;
28 vardef SymbolBlackDiamond = fillup unitdiamond scaled (3-116) shifted (1.5,1.5) withpen SymbolPen enddef ;
29
30 vardef SymbolNotDef =
31 draw center unitcircle
32 scaled 3
33 shifted (1.5,1.5)
34 withpen SymbolPen scaled 4
35 enddef ;
36
37 vardef SymbolStar =
38 SymbolNotDef
39 enddef ;
40
41 vardef SymbolCheckmark =
42 SymbolNotDef
43 enddef ;
44
45 vardef SymbolAsterisk =
46 SymbolNotDef
47 enddef ;
48
49
50
51 lmt_registerglyphs [
52 name = "symbols",
53 units = 10,
54 usecolor = true,
55 width = 6,
56 height = 6,
57 depth = 0,
58 code = "SymbolNotDef ;",
59 ] ;
60
61 lmt_registerglyph [ category = "symbols", unicode = "0x2022", code = "SymbolBullet ;" ] ;
62 lmt_registerglyph [ category = "symbols", unicode = "0x2013", code = "SymbolDash ;" ] ;
63 lmt_registerglyph [ category = "symbols", unicode = "0x22C6" ] ;
64 lmt_registerglyph [ category = "symbols", unicode = "0x22B3", code = "SymbolTriangle ;" ] ;
65 lmt_registerglyph [ category = "symbols", unicode = "0x2218", code = "SymbolCircle ;" ] ;
66 lmt_registerglyph [ category = "symbols", unicode = "0x25A1", code = "SymbolSquare ;" ] ;
67 lmt_registerglyph [ category = "symbols", unicode = "0x22C4", code = "SymbolDiamond ;" ] ;
68 lmt_registerglyph [ category = "symbols", unicode = "0x2713" ] ;
69 lmt_registerglyph [ category = "symbols", unicode = "0x2217" ] ;
70 lmt_registerglyph [ category = "symbols", unicode = "0x25B6", code = "SymbolBlackTriangle ;" ] ;
71 lmt_registerglyph [ category = "symbols", unicode = "0x25A0", code = "SymbolBlackSquare ;" ] ;
72 lmt_registerglyph [ category = "symbols", unicode = "0x25C6", code = "SymbolBlackDiamond ;" ] ;
73
74\stopMPcalculation
75
76\continueifinputfile{metaimpsymbols.mkxl}
77
78\usemodule[articlebasic] \setupbodyfont[pagella]
79
80\starttext
81
82\definefontfeature[metasymbols][metapost=symbols]
83
84\definefont[MyFont] [Serif*default,metasymbols sa 1]
85
86Some metasymbols:
87
88\startitem {\MyFont • □ ◆}\quad Regular rendering. \stopitem
89\startitem {\MyFont\red • □ ◆}\quad Rendering with color. \stopitem
90\startitem {\MyFont\blue\showglyphs • □ ◆}\quad Idem but with boundingboxes shown. \stopitem
91
92And some more:
93
94\startlines
95 • – ⋆ ⊳ ∘ □ ⋄ ✓ ∗ ▶ ■ ◆
96 {\MyFont • – ⋆ ⊳ ∘ □ ⋄ ✓ ∗ ▶ ■ ◆}
97\stoplines
98
99\stoptext
100 |