achimdoebler / UGUI

µGUI - Open Source GUI module for embedded systems
Other
1.22k stars 420 forks source link

how to create font with monochrome oled #35

Closed amigomcu closed 5 years ago

amigomcu commented 5 years ago

hi all , how to create font for monochrome ?

UGUI default for the RGB888/565 lcd. so how to add font for the monochrome lcd(like ssd1306)

void _UG_PutChar( char chr, UG_S16 x, UG_S16 y, UG_COLOR fc, UG_COLOR bc, const UG_FONT* font)

HW: SSD1306 monochrome

ugui_config.h

ifndef __UGUI_CONFIG_H

define __UGUI_CONFIG_H

/ -------------------------------------------------------------------------------- / / -- CONFIG SECTION -- / / -------------------------------------------------------------------------------- /

//#define USE_MULTITASKING

/ Enable color mode / //#define USE_COLOR_RGB888 // RGB = 0xFF,0xFF,0xFF //#define USE_COLOR_RGB565 // RGB = 0bRRRRRGGGGGGBBBBB

define USE_COLOR_NONE //monochrome

/ Enable needed fonts here /

define USE_FONT_4X6

//#define USE_FONT_5X8 //#define USE_FONT_5X12 //#define USE_FONT_6X8 //#define USE_FONT_6X10 //#define USE_FONT_7X12 //#define USE_FONT_8X8 //#define USE_FONT_8X12_CYRILLIC //#define USE_FONT_8X12 //#define USE_FONT_8X12 //#define USE_FONT_8X14 //#define USE_FONT_10X16 //#define USE_FONT_12X16 //#define USE_FONT_12X20 //#define USE_FONT_16X26 //#define USE_FONT_22X36 //#define USE_FONT_24X40 //#define USE_FONT_32X53

/ Specify platform-dependent integer types here /

define __UG_FONT_DATA const

typedef uint8_t UG_U8; typedef int8_t UG_S8; typedef uint16_t UG_U16; typedef int16_t UG_S16; typedef uint32_t UG_U32; typedef int32_t UG_S32;

/ Example for dsPIC33 typedef unsigned char UG_U8; typedef signed char UG_S8; typedef unsigned int UG_U16; typedef signed int UG_S16; typedef unsigned long int UG_U32; typedef signed long int UG_S32; /

/ -------------------------------------------------------------------------------- / / -------------------------------------------------------------------------------- /

/ Feature enablers /

define USE_PRERENDER_EVENT

define USE_POSTRENDER_EVENT

define LCD_WIDTH_PIXELS 128

define LCD_HEIGHT_PIXELS 64

endif

jarekkt commented 5 years ago

Create 1 bit font - only this has sense. See tools for it - e.g. e.g. https://github.com/AriZuu/ttf2ugui

0x3333 commented 5 years ago

@amigomcu , see my fork, https://github.com/0x3333/UGUI. There is better support for monochrome and themes.