Free_Fonts.h 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378
  1. // Attach this header file to your sketch to use the GFX Free Fonts. You can write
  2. // sketches without it, but it makes referencing them easier.
  3. // This calls up ALL the fonts but they only get loaded if you actually
  4. // use them in your sketch.
  5. //
  6. // No changes are needed to this header file unless new fonts are added to the
  7. // library "Fonts/GFXFF" folder.
  8. //
  9. // To save a lot of typing long names, each font can easily be referenced in the
  10. // sketch in three ways, either with:
  11. //
  12. // 1. Font file name with the & in front such as &FreeSansBoldOblique24pt7b
  13. // an example being:
  14. //
  15. // tft.setFreeFont(&FreeSansBoldOblique24pt7b);
  16. //
  17. // 2. FF# where # is a number determined by looking at the list below
  18. // an example being:
  19. //
  20. // tft.setFreeFont(FF32);
  21. //
  22. // 3. An abbreviation of the file name. Look at the list below to see
  23. // the abbreviations used, for example:
  24. //
  25. // tft.setFreeFont(FSSBO24)
  26. //
  27. // Where the letters mean:
  28. // F = Free font
  29. // M = Mono
  30. // SS = Sans Serif (double S to distinguish is form serif fonts)
  31. // S = Serif
  32. // B = Bold
  33. // O = Oblique (letter O not zero)
  34. // I = Italic
  35. // # = point size, either 9, 12, 18 or 24
  36. //
  37. // Setting the font to NULL will select the GLCD font:
  38. //
  39. // tft.setFreeFont(NULL); // Set font to GLCD
  40. #define LOAD_GFXFF
  41. #ifdef LOAD_GFXFF // Only include the fonts if LOAD_GFXFF is defined in User_Setup.h
  42. // Use these when printing or drawing text in GLCD and high rendering speed fonts
  43. #define GFXFF 1
  44. #define GLCD 0
  45. #define FONT2 2
  46. #define FONT4 4
  47. #define FONT6 6
  48. #define FONT7 7
  49. #define FONT8 8
  50. // Use the following when calling setFont()
  51. //
  52. // Reserved for GLCD font // FF0
  53. //
  54. #define TT1 &TomThumb
  55. #define FM9 &FreeMono9pt7b
  56. #define FM12 &FreeMono12pt7b
  57. #define FM18 &FreeMono18pt7b
  58. #define FM24 &FreeMono24pt7b
  59. #define FMB9 &FreeMonoBold9pt7b
  60. #define FMB12 &FreeMonoBold12pt7b
  61. #define FMB18 &FreeMonoBold18pt7b
  62. #define FMB24 &FreeMonoBold24pt7b
  63. #define FMO9 &FreeMonoOblique9pt7b
  64. #define FMO12 &FreeMonoOblique12pt7b
  65. #define FMO18 &FreeMonoOblique18pt7b
  66. #define FMO24 &FreeMonoOblique24pt7b
  67. #define FMBO9 &FreeMonoBoldOblique9pt7b
  68. #define FMBO12 &FreeMonoBoldOblique12pt7b
  69. #define FMBO18 &FreeMonoBoldOblique18pt7b
  70. #define FMBO24 &FreeMonoBoldOblique24pt7b
  71. #define FSS9 &FreeSans9pt7b
  72. #define FSS12 &FreeSans12pt7b
  73. #define FSS18 &FreeSans18pt7b
  74. #define FSS24 &FreeSans24pt7b
  75. #define FSSB9 &FreeSansBold9pt7b
  76. #define FSSB12 &FreeSansBold12pt7b
  77. #define FSSB18 &FreeSansBold18pt7b
  78. #define FSSB24 &FreeSansBold24pt7b
  79. #define FSSO9 &FreeSansOblique9pt7b
  80. #define FSSO12 &FreeSansOblique12pt7b
  81. #define FSSO18 &FreeSansOblique18pt7b
  82. #define FSSO24 &FreeSansOblique24pt7b
  83. #define FSSBO9 &FreeSansBoldOblique9pt7b
  84. #define FSSBO12 &FreeSansBoldOblique12pt7b
  85. #define FSSBO18 &FreeSansBoldOblique18pt7b
  86. #define FSSBO24 &FreeSansBoldOblique24pt7b
  87. #define FS9 &FreeSerif9pt7b
  88. #define FS12 &FreeSerif12pt7b
  89. #define FS18 &FreeSerif18pt7b
  90. #define FS24 &FreeSerif24pt7b
  91. #define FSI9 &FreeSerifItalic9pt7b
  92. #define FSI12 &FreeSerifItalic12pt7b
  93. #define FSI19 &FreeSerifItalic18pt7b
  94. #define FSI24 &FreeSerifItalic24pt7b
  95. #define FSB9 &FreeSerifBold9pt7b
  96. #define FSB12 &FreeSerifBold12pt7b
  97. #define FSB18 &FreeSerifBold18pt7b
  98. #define FSB24 &FreeSerifBold24pt7b
  99. #define FSBI9 &FreeSerifBoldItalic9pt7b
  100. #define FSBI12 &FreeSerifBoldItalic12pt7b
  101. #define FSBI18 &FreeSerifBoldItalic18pt7b
  102. #define FSBI24 &FreeSerifBoldItalic24pt7b
  103. #define FF0 NULL //ff0 reserved for GLCD
  104. #define FF1 &FreeMono9pt7b
  105. #define FF2 &FreeMono12pt7b
  106. #define FF3 &FreeMono18pt7b
  107. #define FF4 &FreeMono24pt7b
  108. #define FF5 &FreeMonoBold9pt7b
  109. #define FF6 &FreeMonoBold12pt7b
  110. #define FF7 &FreeMonoBold18pt7b
  111. #define FF8 &FreeMonoBold24pt7b
  112. #define FF9 &FreeMonoOblique9pt7b
  113. #define FF10 &FreeMonoOblique12pt7b
  114. #define FF11 &FreeMonoOblique18pt7b
  115. #define FF12 &FreeMonoOblique24pt7b
  116. #define FF13 &FreeMonoBoldOblique9pt7b
  117. #define FF14 &FreeMonoBoldOblique12pt7b
  118. #define FF15 &FreeMonoBoldOblique18pt7b
  119. #define FF16 &FreeMonoBoldOblique24pt7b
  120. #define FF17 &FreeSans9pt7b
  121. #define FF18 &FreeSans12pt7b
  122. #define FF19 &FreeSans18pt7b
  123. #define FF20 &FreeSans24pt7b
  124. #define FF21 &FreeSansBold9pt7b
  125. #define FF22 &FreeSansBold12pt7b
  126. #define FF23 &FreeSansBold18pt7b
  127. #define FF24 &FreeSansBold24pt7b
  128. #define FF25 &FreeSansOblique9pt7b
  129. #define FF26 &FreeSansOblique12pt7b
  130. #define FF27 &FreeSansOblique18pt7b
  131. #define FF28 &FreeSansOblique24pt7b
  132. #define FF29 &FreeSansBoldOblique9pt7b
  133. #define FF30 &FreeSansBoldOblique12pt7b
  134. #define FF31 &FreeSansBoldOblique18pt7b
  135. #define FF32 &FreeSansBoldOblique24pt7b
  136. #define FF33 &FreeSerif9pt7b
  137. #define FF34 &FreeSerif12pt7b
  138. #define FF35 &FreeSerif18pt7b
  139. #define FF36 &FreeSerif24pt7b
  140. #define FF37 &FreeSerifItalic9pt7b
  141. #define FF38 &FreeSerifItalic12pt7b
  142. #define FF39 &FreeSerifItalic18pt7b
  143. #define FF40 &FreeSerifItalic24pt7b
  144. #define FF41 &FreeSerifBold9pt7b
  145. #define FF42 &FreeSerifBold12pt7b
  146. #define FF43 &FreeSerifBold18pt7b
  147. #define FF44 &FreeSerifBold24pt7b
  148. #define FF45 &FreeSerifBoldItalic9pt7b
  149. #define FF46 &FreeSerifBoldItalic12pt7b
  150. #define FF47 &FreeSerifBoldItalic18pt7b
  151. #define FF48 &FreeSerifBoldItalic24pt7b
  152. // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  153. // Now we define "s"tring versions for easy printing of the font name so:
  154. // tft.println(sFF5);
  155. // will print
  156. // Mono bold 9
  157. // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  158. #define sFF0 "GLCD"
  159. #define sTT1 "Tom Thumb"
  160. #define sFF1 "Mono 9"
  161. #define sFF2 "Mono 12"
  162. #define sFF3 "Mono 18"
  163. #define sFF4 "Mono 24"
  164. #define sFF5 "Mono bold 9"
  165. #define sFF6 "Mono bold 12"
  166. #define sFF7 "Mono bold 18"
  167. #define sFF8 "Mono bold 24"
  168. #define sFF9 "Mono oblique 9"
  169. #define sFF10 "Mono oblique 12"
  170. #define sFF11 "Mono oblique 18"
  171. #define sFF12 "Mono oblique 24"
  172. #define sFF13 "Mono bold oblique 9"
  173. #define sFF14 "Mono bold oblique 12"
  174. #define sFF15 "Mono bold oblique 18"
  175. #define sFF16 "Mono bold oblique 24" // Full text line is too big for 480 pixel wide screen
  176. #define sFF17 "Sans 9"
  177. #define sFF18 "Sans 12"
  178. #define sFF19 "Sans 18"
  179. #define sFF20 "Sans 24"
  180. #define sFF21 "Sans bold 9"
  181. #define sFF22 "Sans bold 12"
  182. #define sFF23 "Sans bold 18"
  183. #define sFF24 "Sans bold 24"
  184. #define sFF25 "Sans oblique 9"
  185. #define sFF26 "Sans oblique 12"
  186. #define sFF27 "Sans oblique 18"
  187. #define sFF28 "Sans oblique 24"
  188. #define sFF29 "Sans bold oblique 9"
  189. #define sFF30 "Sans bold oblique 12"
  190. #define sFF31 "Sans bold oblique 18"
  191. #define sFF32 "Sans bold oblique 24"
  192. #define sFF33 "Serif 9"
  193. #define sFF34 "Serif 12"
  194. #define sFF35 "Serif 18"
  195. #define sFF36 "Serif 24"
  196. #define sFF37 "Serif italic 9"
  197. #define sFF38 "Serif italic 12"
  198. #define sFF39 "Serif italic 18"
  199. #define sFF40 "Serif italic 24"
  200. #define sFF41 "Serif bold 9"
  201. #define sFF42 "Serif bold 12"
  202. #define sFF43 "Serif bold 18"
  203. #define sFF44 "Serif bold 24"
  204. #define sFF45 "Serif bold italic 9"
  205. #define sFF46 "Serif bold italic 12"
  206. #define sFF47 "Serif bold italic 18"
  207. #define sFF48 "Serif bold italic 24"
  208. #else // LOAD_GFXFF not defined so setup defaults to prevent error messages
  209. // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  210. // Free fonts are not loaded in User_Setup.h so we must define all as font 1
  211. // to prevent compile error messages
  212. // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  213. #define GFXFF 1
  214. #define GLCD 1
  215. #define FONT2 2
  216. #define FONT4 4
  217. #define FONT6 6
  218. #define FONT7 7
  219. #define FONT8 8
  220. #define FF0 1
  221. #define FF1 1
  222. #define FF2 1
  223. #define FF3 1
  224. #define FF4 1
  225. #define FF5 1
  226. #define FF6 1
  227. #define FF7 1
  228. #define FF8 1
  229. #define FF9 1
  230. #define FF10 1
  231. #define FF11 1
  232. #define FF12 1
  233. #define FF13 1
  234. #define FF14 1
  235. #define FF15 1
  236. #define FF16 1
  237. #define FF17 1
  238. #define FF18 1
  239. #define FF19 1
  240. #define FF20 1
  241. #define FF21 1
  242. #define FF22 1
  243. #define FF23 1
  244. #define FF24 1
  245. #define FF25 1
  246. #define FF26 1
  247. #define FF27 1
  248. #define FF28 1
  249. #define FF29 1
  250. #define FF30 1
  251. #define FF31 1
  252. #define FF32 1
  253. #define FF33 1
  254. #define FF34 1
  255. #define FF35 1
  256. #define FF36 1
  257. #define FF37 1
  258. #define FF38 1
  259. #define FF39 1
  260. #define FF40 1
  261. #define FF41 1
  262. #define FF42 1
  263. #define FF43 1
  264. #define FF44 1
  265. #define FF45 1
  266. #define FF46 1
  267. #define FF47 1
  268. #define FF48 1
  269. #define FM9 1
  270. #define FM12 1
  271. #define FM18 1
  272. #define FM24 1
  273. #define FMB9 1
  274. #define FMB12 1
  275. #define FMB18 1
  276. #define FMB24 1
  277. #define FMO9 1
  278. #define FMO12 1
  279. #define FMO18 1
  280. #define FMO24 1
  281. #define FMBO9 1
  282. #define FMBO12 1
  283. #define FMBO18 1
  284. #define FMBO24 1
  285. #define FSS9 1
  286. #define FSS12 1
  287. #define FSS18 1
  288. #define FSS24 1
  289. #define FSSB9 1
  290. #define FSSB12 1
  291. #define FSSB18 1
  292. #define FSSB24 1
  293. #define FSSO9 1
  294. #define FSSO12 1
  295. #define FSSO18 1
  296. #define FSSO24 1
  297. #define FSSBO9 1
  298. #define FSSBO12 1
  299. #define FSSBO18 1
  300. #define FSSBO24 1
  301. #define FS9 1
  302. #define FS12 1
  303. #define FS18 1
  304. #define FS24 1
  305. #define FSI9 1
  306. #define FSI12 1
  307. #define FSI19 1
  308. #define FSI24 1
  309. #define FSB9 1
  310. #define FSB12 1
  311. #define FSB18 1
  312. #define FSB24 1
  313. #define FSBI9 1
  314. #define FSBI12 1
  315. #define FSBI18 1
  316. #define FSBI24 1
  317. #endif // LOAD_GFXFF