mirror of
https://github.com/lvgl/lvgl.git
synced 2024-11-30 21:24:07 +08:00
lv_misc moved to misc/gfx
This commit is contained in:
parent
d93844bdd8
commit
2a1ace1f81
259
lv_misc/anim.c
259
lv_misc/anim.c
@ -1,259 +0,0 @@
|
||||
/**
|
||||
* @file anim.c
|
||||
*
|
||||
*/
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include <string.h>
|
||||
#include "anim.h"
|
||||
#include "misc/math/math_base.h"
|
||||
#include "misc/os/ptask.h"
|
||||
#include "hal/systick/systick.h"
|
||||
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
#define ANIM_PATH_LENGTH 129 /*Elements in a path array*/
|
||||
#define ANIM_PATH_START 64 /*In path array a value which corresponds to the start position*/
|
||||
#define ANIM_PATH_END 192 /* ... to the end position. Not required, just for clearance.*/
|
||||
#define ANIM_PATH_NORM_SHIFT 7 /*ANIM_PATH_START - ANIM_PATH_END. Must be 2^N. The exponent goes here. */
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC PROTOTYPES
|
||||
**********************/
|
||||
static void anim_task (void * param);
|
||||
static bool anim_ready_handler(anim_t * a);
|
||||
|
||||
/**********************
|
||||
* STATIC VARIABLES
|
||||
**********************/
|
||||
static ll_dsc_t anim_ll;
|
||||
static uint32_t last_task_run;
|
||||
static bool anim_del_global_flag = false;
|
||||
|
||||
static anim_path_t anim_path_lin[] =
|
||||
{64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
|
||||
96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
|
||||
128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
|
||||
160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192};
|
||||
|
||||
static anim_path_t anim_path_step[] =
|
||||
{64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
|
||||
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
|
||||
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,
|
||||
64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 192,};
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Init. the animation module
|
||||
*/
|
||||
void anim_init(void)
|
||||
{
|
||||
ll_init(&anim_ll, sizeof(anim_t));
|
||||
last_task_run = systick_get();
|
||||
ptask_create(anim_task, LV_REFR_PERIOD, PTASK_PRIO_MID, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create an animation
|
||||
* @param anim_p an initialized 'anim_t' variable. Not required after call.
|
||||
*/
|
||||
void anim_create(anim_t * anim_p)
|
||||
{
|
||||
/*Add the new animation to the animation linked list*/
|
||||
anim_t * new_anim = ll_ins_head(&anim_ll);
|
||||
dm_assert(new_anim);
|
||||
|
||||
/*Initialize the animation descriptor*/
|
||||
anim_p->playback_now = 0;
|
||||
memcpy(new_anim, anim_p, sizeof(anim_t));
|
||||
|
||||
/*Set the start value*/
|
||||
if(new_anim->fp != NULL) new_anim->fp(new_anim->var, new_anim->start);
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete an animation for a variable with a given animatior function
|
||||
* @param var pointer to variable
|
||||
* @param fp a function pointer which is animating 'var',
|
||||
* or NULL to ignore it and delete all animation with 'var
|
||||
* @return true: at least 1 animation is deleted, false: no animation is deleted
|
||||
*/
|
||||
bool anim_del(void * var, anim_fp_t fp)
|
||||
{
|
||||
bool del = false;
|
||||
anim_t * a;
|
||||
anim_t * a_next;
|
||||
a = ll_get_head(&anim_ll);
|
||||
while(a != NULL) {
|
||||
/*'a' might be deleted, so get the next object while 'a' is valid*/
|
||||
a_next = ll_get_next(&anim_ll, a);
|
||||
|
||||
if(a->var == var && (a->fp == fp || fp == NULL)) {
|
||||
ll_rem(&anim_ll, a);
|
||||
dm_free(a);
|
||||
del = true;
|
||||
anim_del_global_flag = true;
|
||||
}
|
||||
|
||||
a = a_next;
|
||||
}
|
||||
|
||||
return del;
|
||||
}
|
||||
|
||||
/**
|
||||
* Calculate the time of an animation with a given speed and the start and end values
|
||||
* @param speed speed of animation in unit/sec
|
||||
* @param start start value of the animation
|
||||
* @param end end value of the animation
|
||||
* @return the required time [ms] for the animation with the given parameters
|
||||
*/
|
||||
uint16_t anim_speed_to_time(uint16_t speed, int32_t start, int32_t end)
|
||||
{
|
||||
int32_t d = MATH_ABS((int32_t) start - end);
|
||||
uint16_t time = (int32_t)((int32_t)(d * 1000) / speed);
|
||||
|
||||
if(time == 0) {
|
||||
time++;
|
||||
}
|
||||
|
||||
return time;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a predefine animation path
|
||||
* @param name name of the path from 'anim_path_name_t'
|
||||
* @return pointer to the path array
|
||||
*/
|
||||
anim_path_t * anim_get_path(anim_path_name_t name)
|
||||
{
|
||||
switch (name) {
|
||||
case ANIM_PATH_LIN:
|
||||
return anim_path_lin;
|
||||
break;
|
||||
case ANIM_PATH_STEP:
|
||||
return anim_path_step;
|
||||
break;
|
||||
default:
|
||||
return NULL;
|
||||
break;
|
||||
}
|
||||
}
|
||||
/**********************
|
||||
* STATIC FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Periodically handle the animations.
|
||||
* @param param unused
|
||||
*/
|
||||
static void anim_task (void * param)
|
||||
{
|
||||
uint32_t elaps;
|
||||
elaps = systick_elaps(last_task_run);
|
||||
|
||||
anim_t * a;
|
||||
anim_t * a_next;
|
||||
a = ll_get_head(&anim_ll);
|
||||
while(a != NULL) {
|
||||
/*'a' might be deleted, so get the next object while 'a' is valid*/
|
||||
a_next = ll_get_next(&anim_ll, a);
|
||||
|
||||
a->act_time += elaps;
|
||||
if(a->act_time >= 0) {
|
||||
if(a->act_time > a->time) a->act_time = a->time;
|
||||
|
||||
/* Get the index of the path array based on the elapsed time*/
|
||||
uint8_t path_i;
|
||||
if(a->time == a->act_time) {
|
||||
path_i = ANIM_PATH_LENGTH - 1; /*Use the last value id the time fully elapsed*/
|
||||
} else {
|
||||
path_i = a->act_time * (ANIM_PATH_LENGTH - 1) / a->time;
|
||||
}
|
||||
/* Get the new value which will be proportional to the current element of 'path_p'
|
||||
* and the 'start' and 'end' values*/
|
||||
int32_t new_val;
|
||||
new_val = (int32_t)(a->path[path_i] - ANIM_PATH_START) * (a->end - a->start);
|
||||
new_val = new_val >> ANIM_PATH_NORM_SHIFT;
|
||||
new_val += a->start;
|
||||
|
||||
if(a->fp != NULL) a->fp(a->var, new_val); /*Apply the calculated value*/
|
||||
|
||||
/*If the time is elapsed the animation is ready*/
|
||||
if(a->act_time >= a->time) {
|
||||
bool invalid;
|
||||
invalid = anim_ready_handler(a);
|
||||
if(invalid != false) {
|
||||
a_next = ll_get_head(&anim_ll); /*a_next might be invalid if animation delete occurred*/
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
a = a_next;
|
||||
}
|
||||
|
||||
last_task_run = systick_get();
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when an animation is ready to do the necessary thinks
|
||||
* e.g. repeat, play back, delete etc.
|
||||
* @param a pointer to an animation descriptor
|
||||
* @return true: animation delete occurred
|
||||
* */
|
||||
static bool anim_ready_handler(anim_t * a)
|
||||
{
|
||||
bool invalid = false;
|
||||
|
||||
/*Delete the animation if
|
||||
* - no repeat and no play back (simple one shot animation)
|
||||
* - no repeat, play back is enabled and play back is ready */
|
||||
if((a->repeat == 0 && a->playback == 0) ||
|
||||
(a->repeat == 0 && a->playback == 1 && a->playback_now == 1)) {
|
||||
void (*cb) (void *) = a->end_cb;
|
||||
void * p = a->var;
|
||||
ll_rem(&anim_ll, a);
|
||||
dm_free(a);
|
||||
|
||||
/*Call the callback function at the end*/
|
||||
/* Check if an animation is deleted in the cb function
|
||||
* if yes then the caller function has to know this*/
|
||||
anim_del_global_flag = false;
|
||||
if(cb != NULL) cb(p);
|
||||
invalid = anim_del_global_flag;
|
||||
}
|
||||
/*If the animation is not deleted then restart it*/
|
||||
else {
|
||||
a->act_time = - a->repeat_pause; /*Restart the animation*/
|
||||
/*Swap the start and end values in play back mode*/
|
||||
if(a->playback != 0) {
|
||||
/*If now turning back use the 'playback_pause*/
|
||||
if(a->playback_now == 0) a->act_time = - a->playback_pause;
|
||||
|
||||
/*Toggle the play back state*/
|
||||
a->playback_now = a->playback_now == 0 ? 1: 0;
|
||||
/*Swap the start and end values*/
|
||||
int32_t tmp;
|
||||
tmp = a->start;
|
||||
a->start = a->end;
|
||||
a->end = tmp;
|
||||
}
|
||||
}
|
||||
|
||||
return invalid;
|
||||
}
|
110
lv_misc/anim.h
110
lv_misc/anim.h
@ -1,110 +0,0 @@
|
||||
/**
|
||||
* @file anim.h
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef ANIM_H
|
||||
#define ANIM_H
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include "lvgl/lvgl.h"
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
typedef enum
|
||||
{
|
||||
ANIM_PATH_LIN,
|
||||
ANIM_PATH_STEP,
|
||||
}anim_path_name_t;
|
||||
|
||||
typedef uint8_t anim_path_t;
|
||||
|
||||
typedef void (*anim_fp_t)(void *, int32_t);
|
||||
typedef void (*anim_cb_t)(void *);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
void * var; /*Variable to animate*/
|
||||
anim_fp_t fp; /*Animator function*/
|
||||
anim_cb_t end_cb; /*Call it when the animation is ready*/
|
||||
anim_path_t * path; /*An array with the steps of animations*/
|
||||
int32_t start; /*Start value*/
|
||||
int32_t end; /*End value*/
|
||||
int16_t time; /*Animation time in ms*/
|
||||
int16_t act_time; /*Current time in animation. Set to negative to make delay.*/
|
||||
uint16_t playback_pause; /*Wait before play back*/
|
||||
uint16_t repeat_pause; /*Wait before repeat*/
|
||||
uint8_t playback :1; /*When the animation is ready play it back*/
|
||||
uint8_t repeat :1; /*Repeat the animation infinitely*/
|
||||
/*Animation system use these - user shouldn't set*/
|
||||
uint8_t playback_now :1; /*Play back is in progress*/
|
||||
}anim_t;
|
||||
|
||||
/*Example initialization
|
||||
anim_t a;
|
||||
a.var = obj;
|
||||
a.start = lv_obj_get_height(obj);
|
||||
a.end = new_height;
|
||||
a.fp = (anim_fp_t)lv_obj_set_height;
|
||||
a.path = anim_get_path(ANIM_PATH_LIN);
|
||||
a.end_cb = NULL;
|
||||
a.act_time = 0;
|
||||
a.time = 200;
|
||||
a.playback = 0;
|
||||
a.playback_pause = 0;
|
||||
a.repeat = 0;
|
||||
a.repeat_pause = 0;
|
||||
*/
|
||||
/**********************
|
||||
* GLOBAL PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Init. the animation module
|
||||
*/
|
||||
void anim_init(void);
|
||||
|
||||
/**
|
||||
* Create an animation
|
||||
* @param anim_p an initialized 'anim_t' variable. Not required after call.
|
||||
*/
|
||||
void anim_create(anim_t * anim_p);
|
||||
|
||||
/**
|
||||
* Delete an animation for a variable with a given animatior function
|
||||
* @param var pointer to variable
|
||||
* @param fp a function pointer which is animating 'var',
|
||||
* or NULL to ignore it and delete all animation with 'var
|
||||
* @return true: at least 1 animation is deleted, false: no animation is deleted
|
||||
*/
|
||||
bool anim_del(void * var, anim_fp_t fp);
|
||||
|
||||
/**
|
||||
* Calculate the time of an animation with a given speed and the start and end values
|
||||
* @param speed speed of animation in unit/sec
|
||||
* @param start start value of the animation
|
||||
* @param end end value of the animation
|
||||
* @return the required time [ms] for the animation with the given parameters
|
||||
*/
|
||||
uint16_t anim_speed_to_time(uint16_t speed, int32_t start, int32_t end);
|
||||
|
||||
/**
|
||||
* Get a predefine animation path
|
||||
* @param name name of the path from 'anim_path_name_t'
|
||||
* @return pointer to the path array
|
||||
*/
|
||||
anim_path_t * anim_get_path(anim_path_name_t name);
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
#endif
|
233
lv_misc/area.c
233
lv_misc/area.c
@ -1,233 +0,0 @@
|
||||
/**
|
||||
* @file 2d.c
|
||||
*
|
||||
*/
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include <lvgl/lv_misc/area.h>
|
||||
#include "misc/math/math_base.h"
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC VARIABLES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Initialize an area
|
||||
* @param area_p pointer to an area
|
||||
* @param x1 left coordinate of the area
|
||||
* @param y1 top coordinate of the area
|
||||
* @param x2 right coordinate of the area
|
||||
* @param y2 bottom coordinate of the area
|
||||
*/
|
||||
void area_set(area_t * area_p, cord_t x1, cord_t y1, cord_t x2, cord_t y2)
|
||||
{
|
||||
area_p->x1 = x1;
|
||||
area_p->y1 = y1;
|
||||
area_p->x2 = x2;
|
||||
area_p->y2 = y2;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the width of an area
|
||||
* @param area_p pointer to an area
|
||||
* @param w the new width of the area (w == 1 makes x1 == x2)
|
||||
*/
|
||||
void area_set_width(area_t * area_p, cord_t w)
|
||||
{
|
||||
area_p->x2 = area_p->x1 + w - 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the height of an area
|
||||
* @param area_p pointer to an area
|
||||
* @param h the new height of the area (h == 1 makes y1 == y2)
|
||||
*/
|
||||
void area_set_height(area_t * area_p, cord_t h)
|
||||
{
|
||||
area_p->y2 = area_p->y1 + h - 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the position of an area (width and height will be kept)
|
||||
* @param area_p pointer to an area
|
||||
* @param x the new x coordinate of the area
|
||||
* @param y the new y coordinate of the area
|
||||
*/
|
||||
void area_set_pos(area_t * area_p, cord_t x, cord_t y)
|
||||
{
|
||||
cord_t w = area_get_width(area_p);
|
||||
cord_t h = area_get_height(area_p);
|
||||
area_p->x1 = x;
|
||||
area_p->y1 = y;
|
||||
area_set_width(area_p, w);
|
||||
area_set_height(area_p, h);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return with area of an area (x * y)
|
||||
* @param area_p pointer to an area
|
||||
* @return size of area
|
||||
*/
|
||||
uint32_t area_get_size(const area_t * area_p)
|
||||
{
|
||||
uint32_t size;
|
||||
|
||||
size = (uint32_t)(area_p->x2 - area_p->x1 + 1) *
|
||||
(area_p->y2 - area_p->y1 + 1);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the common parts of two areas
|
||||
* @param res_p pointer to an area, the result will be stored her
|
||||
* @param a1_p pointer to the first area
|
||||
* @param a2_p pointer to the second area
|
||||
* @return false: the two area has NO common parts, res_p is invalid
|
||||
*/
|
||||
bool area_union(area_t * res_p, const area_t * a1_p, const area_t * a2_p)
|
||||
{
|
||||
/* Get the smaller area from 'a1_p' and 'a2_p' */
|
||||
res_p->x1 = MATH_MAX(a1_p->x1, a2_p->x1);
|
||||
res_p->y1 = MATH_MAX(a1_p->y1, a2_p->y1);
|
||||
res_p->x2 = MATH_MIN(a1_p->x2, a2_p->x2);
|
||||
res_p->y2 = MATH_MIN(a1_p->y2, a2_p->y2);
|
||||
|
||||
/*If x1 or y1 greater then x2 or y2 then the areas union is empty*/
|
||||
bool union_ok = true;
|
||||
if((res_p->x1 > res_p->x2) ||
|
||||
(res_p->y1 > res_p->y2))
|
||||
{
|
||||
union_ok = false;
|
||||
}
|
||||
|
||||
return union_ok;
|
||||
}
|
||||
/**
|
||||
* Join two areas into a third which involves the other two
|
||||
* @param res_p pointer to an area, the result will be stored here
|
||||
* @param a1_p pointer to the first area
|
||||
* @param a2_p pointer to the second area
|
||||
*/
|
||||
void area_join(area_t * a_res_p, const area_t * a1_p, const area_t * a2_p)
|
||||
{
|
||||
a_res_p->x1 = MATH_MIN(a1_p->x1, a2_p->x1);
|
||||
a_res_p->y1 = MATH_MIN(a1_p->y1, a2_p->y1);
|
||||
a_res_p->x2 = MATH_MAX(a1_p->x2, a2_p->x2);
|
||||
a_res_p->y2 = MATH_MAX(a1_p->y2, a2_p->y2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if a point is on an area
|
||||
* @param a_p pointer to an area
|
||||
* @param p_p pointer to a point
|
||||
* @return false:the point is out of the area
|
||||
*/
|
||||
bool area_is_point_on(const area_t * a_p, const point_t * p_p)
|
||||
{
|
||||
bool is_on = false;
|
||||
|
||||
if((p_p->x >= a_p->x1 && p_p->x <= a_p->x2) &&
|
||||
((p_p->y >= a_p->y1 && p_p->y <= a_p->y2)))
|
||||
{
|
||||
is_on = true;
|
||||
}
|
||||
|
||||
return is_on;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if two area has common parts
|
||||
* @param a1_p pointer to an area.
|
||||
* @param a2_p pointer to an other area
|
||||
* @return false: a1_p and a2_p has no common parts
|
||||
*/
|
||||
bool area_is_on(const area_t * a1_p, const area_t * a2_p)
|
||||
{
|
||||
/*Two area are on each other if... */
|
||||
|
||||
point_t p;
|
||||
/*a2 left-top corner is on a1*/
|
||||
p.x = a2_p->x1;
|
||||
p.y = a2_p->y1;
|
||||
if(area_is_point_on(a1_p, &p)) return true;
|
||||
|
||||
/*a2 right-top corner is on a1*/
|
||||
p.x = a2_p->x1;
|
||||
p.y = a2_p->y1;
|
||||
if(area_is_point_on(a1_p, &p)) return true;
|
||||
|
||||
/*a2 left-bottom corner is on a1*/
|
||||
p.x = a2_p->x1;
|
||||
p.y = a2_p->y2;
|
||||
if(area_is_point_on(a1_p, &p)) return true;
|
||||
|
||||
/*a2 right-bottom corner is on a1*/
|
||||
p.x = a2_p->x2;
|
||||
p.y = a2_p->y2;
|
||||
if(area_is_point_on(a1_p, &p)) return true;
|
||||
|
||||
/*a2 is horizontally bigger then a1 and covers it*/
|
||||
if((a2_p->x1 <= a1_p->x1 && a2_p->x2 >= a1_p->x2) && /*a2 hor. cover a1?*/
|
||||
((a2_p->y1 <= a1_p->y1 && a2_p->y1 >= a1_p->y2) || /*upper edge is on a1?*/
|
||||
(a2_p->y2 <= a1_p->y1 && a2_p->y2 >= a1_p->y2) ||/* or lower edge is on a1?*/
|
||||
(a2_p->y1 <= a1_p->y1 && a2_p->y2 >= a1_p->y2))) /*or a2 vert bigger then a1*/
|
||||
return true;
|
||||
|
||||
/*a2 is vertically bigger then a1 and covers it*/
|
||||
if((a2_p->y1 <= a1_p->y1 && a2_p->y2 >= a1_p->y2) && /*a2 vert. cover a1?*/
|
||||
((a2_p->x1 <= a1_p->x1 && a2_p->x1 >= a1_p->x2) || /*left edge is on a1?*/
|
||||
(a2_p->x2 <= a1_p->x1 && a2_p->x2 >= a1_p->x2) ||/* or right edge is on a1?*/
|
||||
(a2_p->x1 <= a1_p->x1 && a2_p->x2 >= a1_p->x2))) /*or a2 hor. bigger then a1*/
|
||||
return true;
|
||||
|
||||
/*Else no cover*/
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if an area is fully on an other
|
||||
* @param ain_p pointer to an area which could be on aholder_p
|
||||
* @param aholder pointer to an area which could involve ain_p
|
||||
* @return
|
||||
*/
|
||||
bool area_is_in(const area_t * ain_p, const area_t * aholder_p)
|
||||
{
|
||||
bool is_in = false;
|
||||
|
||||
if(ain_p->x1 >= aholder_p->x1 &&
|
||||
ain_p->y1 >= aholder_p->y1 &&
|
||||
ain_p->x2 <= aholder_p->x2 &&
|
||||
ain_p->y2 <= aholder_p->y2)
|
||||
{
|
||||
is_in = true;
|
||||
}
|
||||
|
||||
return is_in;
|
||||
}
|
||||
|
||||
/**********************
|
||||
* STATIC FUNCTIONS
|
||||
**********************/
|
158
lv_misc/area.h
158
lv_misc/area.h
@ -1,158 +0,0 @@
|
||||
/**
|
||||
* @file area.h
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef AREA_H
|
||||
#define AREA_H
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include "lv_conf.h"
|
||||
#include <string.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
typedef LV_CORD_TYPE cord_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
cord_t x;
|
||||
cord_t y;
|
||||
}point_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
cord_t x1;
|
||||
cord_t y1;
|
||||
cord_t x2;
|
||||
cord_t y2;
|
||||
}area_t;
|
||||
|
||||
/**********************
|
||||
* GLOBAL PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Initialize an area
|
||||
* @param area_p pointer to an area
|
||||
* @param x1 left coordinate of the area
|
||||
* @param y1 top coordinate of the area
|
||||
* @param x2 right coordinate of the area
|
||||
* @param y2 bottom coordinate of the area
|
||||
*/
|
||||
void area_set(area_t * area_p, cord_t x1, cord_t y1, cord_t x2, cord_t y2);
|
||||
|
||||
/**
|
||||
* Copy an area
|
||||
* @param dest pointer to the destination area
|
||||
* @param src pointer to the source area
|
||||
*/
|
||||
static void inline area_cpy(area_t * dest, const area_t * src)
|
||||
{
|
||||
memcpy(dest, src, sizeof(area_t));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the width of an area
|
||||
* @param area_p pointer to an area
|
||||
* @return the width of the area (if x1 == x2 -> width = 1)
|
||||
*/
|
||||
static inline cord_t area_get_width(const area_t * area_p)
|
||||
{
|
||||
return area_p->x2 - area_p->x1 + 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the height of an area
|
||||
* @param area_p pointer to an area
|
||||
* @return the height of the area (if y1 == y2 -> height = 1)
|
||||
*/
|
||||
static inline cord_t area_get_height(const area_t * area_p)
|
||||
{
|
||||
return area_p->y2 - area_p->y1 + 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the width of an area
|
||||
* @param area_p pointer to an area
|
||||
* @param w the new width of the area (w == 1 makes x1 == x2)
|
||||
*/
|
||||
void area_set_width(area_t * area_p, cord_t w);
|
||||
|
||||
/**
|
||||
* Set the height of an area
|
||||
* @param area_p pointer to an area
|
||||
* @param h the new height of the area (h == 1 makes y1 == y2)
|
||||
*/
|
||||
void area_set_height(area_t * area_p, cord_t h);
|
||||
|
||||
/**
|
||||
* Set the position of an area (width and height will be kept)
|
||||
* @param area_p pointer to an area
|
||||
* @param x the new x coordinate of the area
|
||||
* @param y the new y coordinate of the area
|
||||
*/
|
||||
void area_set_pos(area_t * area_p, cord_t x, cord_t y);
|
||||
|
||||
/**
|
||||
* Return with area of an area (x * y)
|
||||
* @param area_p pointer to an area
|
||||
* @return size of area
|
||||
*/
|
||||
uint32_t area_get_size(const area_t * area_p);
|
||||
|
||||
/**
|
||||
* Get the common parts of two areas
|
||||
* @param res_p pointer to an area, the result will be stored her
|
||||
* @param a1_p pointer to the first area
|
||||
* @param a2_p pointer to the second area
|
||||
* @return false: the two area has NO common parts, res_p is invalid
|
||||
*/
|
||||
bool area_union(area_t * res_p, const area_t * a1_p, const area_t * a2_p);
|
||||
|
||||
/**
|
||||
* Join two areas into a third which involves the other two
|
||||
* @param res_p pointer to an area, the result will be stored here
|
||||
* @param a1_p pointer to the first area
|
||||
* @param a2_p pointer to the second area
|
||||
*/
|
||||
void area_join(area_t * a_res_p, const area_t * a1_p, const area_t * a2_p);
|
||||
|
||||
/**
|
||||
* Check if a point is on an area
|
||||
* @param a_p pointer to an area
|
||||
* @param p_p pointer to a point
|
||||
* @return false:the point is out of the area
|
||||
*/
|
||||
bool area_is_point_on(const area_t * a_p, const point_t * p_p);
|
||||
|
||||
/**
|
||||
* Check if two area has common parts
|
||||
* @param a1_p pointer to an area.
|
||||
* @param a2_p pointer to an other area
|
||||
* @return false: a1_p and a2_p has no common parts
|
||||
*/
|
||||
bool area_is_on(const area_t * a1_p, const area_t * a2_p);
|
||||
|
||||
/**
|
||||
* Check if an area is fully on an other
|
||||
* @param ain_p pointer to an area which could be on aholder_p
|
||||
* @param aholder pointer to an area which could involve ain_p
|
||||
* @return
|
||||
*/
|
||||
bool area_is_in(const area_t * ain_p, const area_t * aholder_p);
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
#endif
|
@ -1,79 +0,0 @@
|
||||
/**
|
||||
* @file circ.c
|
||||
* Circle drawing algorithm (with Bresenham)
|
||||
* Only a 1/8 circle is calculated. Use CIRC_OCT1_X, CIRC_OCT1_Y macros to get
|
||||
* the other octets.
|
||||
*/
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include <lvgl/lv_misc/area.h>
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC VARIABLES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Initialize the circle drawing
|
||||
* @param c pointer to a point. The coordinates will be calculated here
|
||||
* @param tmp point to a variable. It will store temporary data
|
||||
* @param radius radius of the circle
|
||||
*/
|
||||
void circ_init(point_t * c, cord_t * tmp, cord_t radius)
|
||||
{
|
||||
c->x = radius;
|
||||
c->y = 0;
|
||||
*tmp = 1 - radius;
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the circle drawing is ready or not
|
||||
* @param c same as in circ_init
|
||||
* @return true if the circle is not ready yet
|
||||
*/
|
||||
bool circ_cont(point_t * c)
|
||||
{
|
||||
return c->y <= c->x ? true : false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the next point from the circle
|
||||
* @param c same as in circ_init. The next point stored here.
|
||||
* @param tmp same as in circ_init.
|
||||
*/
|
||||
void circ_next(point_t * c, cord_t * tmp)
|
||||
{
|
||||
c->y++;
|
||||
|
||||
if (*tmp <= 0) {
|
||||
(*tmp) += 2 * c->y + 1; // Change in decision criterion for y -> y+1
|
||||
} else {
|
||||
c->x--;
|
||||
(*tmp) += 2 * (c->y - c->x) + 1; // Change for y -> y+1, x -> x-1
|
||||
}
|
||||
}
|
||||
|
||||
/**********************
|
||||
* STATIC FUNCTIONS
|
||||
**********************/
|
@ -1,70 +0,0 @@
|
||||
/**
|
||||
* @file circ.h
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef CIRC_H
|
||||
#define CIRC_H
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
|
||||
#include <lvgl/lv_misc/area.h>
|
||||
#include <stddef.h>
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
#define CIRC_OCT1_X(p) (p.x)
|
||||
#define CIRC_OCT1_Y(p) (p.y)
|
||||
#define CIRC_OCT2_X(p) (p.y)
|
||||
#define CIRC_OCT2_Y(p) (p.x)
|
||||
#define CIRC_OCT3_X(p) (-p.y)
|
||||
#define CIRC_OCT3_Y(p) (p.x)
|
||||
#define CIRC_OCT4_X(p) (-p.x)
|
||||
#define CIRC_OCT4_Y(p) (p.y)
|
||||
#define CIRC_OCT5_X(p) (-p.x)
|
||||
#define CIRC_OCT5_Y(p) (-p.y)
|
||||
#define CIRC_OCT6_X(p) (-p.y)
|
||||
#define CIRC_OCT6_Y(p) (-p.x)
|
||||
#define CIRC_OCT7_X(p) (p.y)
|
||||
#define CIRC_OCT7_Y(p) (-p.x)
|
||||
#define CIRC_OCT8_X(p) (p.x)
|
||||
#define CIRC_OCT8_Y(p) (-p.y)
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Initialize the circle drawing
|
||||
* @param c pointer to a point. The coordinates will be calculated here
|
||||
* @param tmp point to a variable. It will store temporary data
|
||||
* @param radius radius of the circle
|
||||
*/
|
||||
void circ_init(point_t * c, cord_t * tmp, cord_t radius);
|
||||
|
||||
/**
|
||||
* Test the circle drawing is ready or not
|
||||
* @param c same as in circ_init
|
||||
* @return true if the circle is not ready yet
|
||||
*/
|
||||
bool circ_cont(point_t * c);
|
||||
|
||||
/**
|
||||
* Get the next point from the circle
|
||||
* @param c same as in circ_init. The next point stored here.
|
||||
* @param tmp same as in circ_init.
|
||||
*/
|
||||
void circ_next(point_t * c, cord_t * tmp);
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
#endif
|
163
lv_misc/font.c
163
lv_misc/font.c
@ -1,163 +0,0 @@
|
||||
/**
|
||||
* @file font.c
|
||||
*
|
||||
*/
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include <lvgl/lv_misc/fonts/symbol_30.h>
|
||||
#include <stddef.h>
|
||||
#include "font.h"
|
||||
#include "fonts/dejavu_8.h"
|
||||
#include "fonts/dejavu_10.h"
|
||||
#include "fonts/dejavu_14.h"
|
||||
#include "fonts/dejavu_20.h"
|
||||
#include "fonts/dejavu_30.h"
|
||||
#include "fonts/dejavu_40.h"
|
||||
#include "fonts/dejavu_60.h"
|
||||
#include "fonts/dejavu_80.h"
|
||||
#include "fonts/symbol_30.h"
|
||||
#include "fonts/symbol_60.h"
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC VARIABLES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Get the font from its id
|
||||
* @param font_id: the id of a font (an element of font_types_t enum)
|
||||
* @return pointer to a font descriptor
|
||||
*/
|
||||
const font_t * font_get(font_types_t font_id)
|
||||
{
|
||||
const font_t * font_p = NULL;
|
||||
|
||||
switch(font_id)
|
||||
{
|
||||
#if USE_FONT_DEJAVU_8 != 0
|
||||
case FONT_DEJAVU_8:
|
||||
font_p = dejavu_8_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_10 != 0
|
||||
case FONT_DEJAVU_10:
|
||||
font_p = dejavu_10_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_14 != 0
|
||||
case FONT_DEJAVU_14:
|
||||
font_p = dejavu_14_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_20 != 0
|
||||
case FONT_DEJAVU_20:
|
||||
font_p = dejavu_20_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if USE_FONT_DEJAVU_30 != 0
|
||||
case FONT_DEJAVU_30:
|
||||
font_p = dejavu_30_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if USE_FONT_DEJAVU_40 != 0
|
||||
case FONT_DEJAVU_40:
|
||||
font_p = dejavu_40_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if USE_FONT_DEJAVU_60 != 0
|
||||
case FONT_DEJAVU_60:
|
||||
font_p = dejavu_60_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if USE_FONT_DEJAVU_80 != 0
|
||||
case FONT_DEJAVU_80:
|
||||
font_p = dejavu_80_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if USE_FONT_SYMBOL_30 != 0
|
||||
case FONT_SYMBOL_30:
|
||||
font_p = symbol_30_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if USE_FONT_SYMBOL_60 != 0
|
||||
case FONT_SYMBOL_60:
|
||||
font_p = symbol_60_get_dsc();
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
font_p = NULL;
|
||||
}
|
||||
|
||||
return font_p;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return with the bitmap of a font.
|
||||
* @param font_p pointer to a font
|
||||
* @param letter a letter
|
||||
* @return pointer to the bitmap of the letter
|
||||
*/
|
||||
const uint8_t * font_get_bitmap(const font_t * font_p, uint8_t letter)
|
||||
{
|
||||
if(letter < font_p->start_ascii || letter >= font_p->start_ascii + font_p->letter_cnt) return NULL;
|
||||
|
||||
uint32_t index = (letter - font_p->start_ascii) * font_p->height_row * font_p->width_byte;
|
||||
return &font_p->bitmaps_a[index];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the width of a letter in a font
|
||||
* @param font_p pointer to a font
|
||||
* @param letter a letter
|
||||
* @return the width of a letter
|
||||
*/
|
||||
uint8_t font_get_width(const font_t * font_p, uint8_t letter)
|
||||
{
|
||||
if(letter < font_p->start_ascii) return 0;
|
||||
|
||||
letter -= font_p->start_ascii;
|
||||
uint8_t w = 0;
|
||||
if(letter < font_p->letter_cnt) {
|
||||
w = font_p->fixed_width != 0 ? font_p->fixed_width :
|
||||
font_p->width_bit_a[letter];
|
||||
}
|
||||
|
||||
return w;
|
||||
}
|
||||
|
||||
/**********************
|
||||
* STATIC FUNCTIONS
|
||||
**********************/
|
||||
|
||||
|
115
lv_misc/font.h
115
lv_misc/font.h
@ -1,115 +0,0 @@
|
||||
/**
|
||||
* @file font.h
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef FONT_H
|
||||
#define FONT_H
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include "lv_conf.h"
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
typedef enum
|
||||
{
|
||||
#if USE_FONT_DEJAVU_8 != 0
|
||||
FONT_DEJAVU_8,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_10 != 0
|
||||
FONT_DEJAVU_10,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_14 != 0
|
||||
FONT_DEJAVU_14,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_20 != 0
|
||||
FONT_DEJAVU_20,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_30 != 0
|
||||
FONT_DEJAVU_30,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_40 != 0
|
||||
FONT_DEJAVU_40,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_60 != 0
|
||||
FONT_DEJAVU_60,
|
||||
#endif
|
||||
#if USE_FONT_DEJAVU_80 != 0
|
||||
FONT_DEJAVU_80,
|
||||
#endif
|
||||
#if USE_FONT_SYMBOL_30 != 0
|
||||
FONT_SYMBOL_30,
|
||||
#endif
|
||||
#if USE_FONT_SYMBOL_60 != 0
|
||||
FONT_SYMBOL_60,
|
||||
#endif
|
||||
FONT_TYPE_NUM,
|
||||
}font_types_t;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
uint8_t letter_cnt;
|
||||
uint8_t start_ascii;
|
||||
uint8_t width_byte;
|
||||
uint8_t height_row;
|
||||
uint8_t fixed_width;
|
||||
const uint8_t * width_bit_a;
|
||||
const uint8_t * bitmaps_a;
|
||||
}font_t;
|
||||
|
||||
/**********************
|
||||
* GLOBAL PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Get the font from its id
|
||||
* @param font_id: the id of a font (an element of font_types_t enum)
|
||||
* @return pointer to a font descriptor
|
||||
*/
|
||||
const font_t * font_get(font_types_t font_id);
|
||||
|
||||
|
||||
/**
|
||||
* Return with the bitmap of a font.
|
||||
* @param font_p pointer to a font
|
||||
* @param letter a letter
|
||||
* @return pointer to the bitmap of the letter
|
||||
*/
|
||||
const uint8_t * font_get_bitmap(const font_t * font_p, uint8_t letter);
|
||||
|
||||
/**
|
||||
* Get the height of a font
|
||||
* @param font_p pointer to a font
|
||||
* @return the height of a font
|
||||
*/
|
||||
static inline uint8_t font_get_height(const font_t * font_p)
|
||||
{
|
||||
return font_p->height_row;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the width of a letter in a font
|
||||
* @param font_p pointer to a font
|
||||
* @param letter a letter
|
||||
* @return the width of a letter
|
||||
*/
|
||||
uint8_t font_get_width(const font_t * font_p, uint8_t letter);
|
||||
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_10_H
|
||||
#define DEJAVU_10_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_10 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_10_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_14_H
|
||||
#define DEJAVU_14_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_14 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_14_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_20_H
|
||||
#define DEJAVU_20_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "misc_conf.h"
|
||||
#if USE_FONT_DEJAVU_20 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_20_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_30_H
|
||||
#define DEJAVU_30_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_30 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_30_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_40_H
|
||||
#define DEJAVU_40_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_40 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_40_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_60_H
|
||||
#define DEJAVU_60_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_60 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_60_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +0,0 @@
|
||||
#ifndef DEJAVU_8_H
|
||||
#define DEJAVU_8_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_8 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
|
||||
const font_t * dejavu_8_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,15 +0,0 @@
|
||||
#ifndef DEJAVU_80_H
|
||||
#define DEJAVU_80_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_DEJAVU_80 != 0
|
||||
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
const font_t * dejavu_80_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
@ -1,867 +0,0 @@
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_SYMBOL_30 != 0
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
static const uint8_t symbol_30_bitmaps[3120] =
|
||||
{
|
||||
// ASCII: 97, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x03, 0xff, 0xff, 0x00, // ------OOOOOOOOOOOOOOOOOO------..
|
||||
0x07, 0xff, 0xff, 0x80, // -----OOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x07, 0xff, 0xff, 0x80, // -----OOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x07, 0xff, 0xff, 0x80, // -----OOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x0f, 0xff, 0xff, 0xc0, // ----OOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x0f, 0xff, 0xff, 0xc0, // ----OOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x0f, 0xff, 0xff, 0xc0, // ----OOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x1f, 0xff, 0xff, 0xe0, // ---OOOOOOOOOOOOOOOOOOOOOOOO---..
|
||||
0x1f, 0xff, 0xff, 0xe0, // ---OOOOOOOOOOOOOOOOOOOOOOOO---..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x7f, 0xff, 0xff, 0xf8, // -OOOOOOOOOOOOOOOOOOOOOOOOOOOO-..
|
||||
0x7f, 0xff, 0xff, 0xf8, // -OOOOOOOOOOOOOOOOOOOOOOOOOOOO-..
|
||||
0x7f, 0xff, 0xff, 0xf8, // -OOOOOOOOOOOOOOOOOOOOOOOOOOOO-..
|
||||
0xff, 0xff, 0xff, 0xfc, // OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..
|
||||
0xff, 0xff, 0xff, 0xfc, // OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..
|
||||
0xff, 0xff, 0xff, 0xfc, // OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..
|
||||
0xe0, 0x00, 0x00, 0x1c, // OOO------------------------OOO..
|
||||
0x60, 0x00, 0x00, 0x18, // -OO------------------------OO-..
|
||||
0x60, 0x00, 0x03, 0x18, // -OO-------------------OO---OO-..
|
||||
0x60, 0x00, 0x03, 0x18, // -OO-------------------OO---OO-..
|
||||
0x70, 0x00, 0x00, 0x38, // -OOO----------------------OOO-..
|
||||
0x30, 0x00, 0x00, 0x30, // --OO----------------------OO--..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 98, char width: 26
|
||||
0xff, 0xfe, 0x40, 0x00, // OOOOOOOOOOOOOOO--O--------......
|
||||
0xff, 0xfe, 0x60, 0x00, // OOOOOOOOOOOOOOO--OO-------......
|
||||
0xff, 0xfe, 0x70, 0x00, // OOOOOOOOOOOOOOO--OOO------......
|
||||
0xff, 0xfe, 0x78, 0x00, // OOOOOOOOOOOOOOO--OOOO-----......
|
||||
0xff, 0xfe, 0x7c, 0x00, // OOOOOOOOOOOOOOO--OOOOO----......
|
||||
0xff, 0xfe, 0x7e, 0x00, // OOOOOOOOOOOOOOO--OOOOOO---......
|
||||
0xff, 0xfe, 0x7f, 0x00, // OOOOOOOOOOOOOOO--OOOOOOO--......
|
||||
0xff, 0xfe, 0x7f, 0x80, // OOOOOOOOOOOOOOO--OOOOOOOO-......
|
||||
0xff, 0xfe, 0x00, 0x00, // OOOOOOOOOOOOOOO-----------......
|
||||
0xff, 0xff, 0x00, 0x00, // OOOOOOOOOOOOOOOO----------......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xfe, 0x00, 0x1f, 0xc0, // OOOOOOO------------OOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0x80, // OOOOOOOOOOOOOOOOOOOOOOOOO-......
|
||||
|
||||
// ASCII: 99, char width: 32
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x3f, 0xe0, 0x00, 0x00, // --OOOOOOOOO---------------------
|
||||
0x7f, 0xf0, 0x00, 0x00, // -OOOOOOOOOOO--------------------
|
||||
0xff, 0xf8, 0x00, 0x00, // OOOOOOOOOOOOO-------------------
|
||||
0xff, 0xf8, 0x00, 0x00, // OOOOOOOOOOOOO-------------------
|
||||
0xff, 0xff, 0xff, 0x00, // OOOOOOOOOOOOOOOOOOOOOOOO--------
|
||||
0xff, 0xff, 0xff, 0x80, // OOOOOOOOOOOOOOOOOOOOOOOOO-------
|
||||
0xff, 0xff, 0xff, 0x80, // OOOOOOOOOOOOOOOOOOOOOOOOO-------
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO------
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO------
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO------
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO------
|
||||
0xff, 0x80, 0x00, 0x00, // OOOOOOOOO-----------------------
|
||||
0xfe, 0x00, 0x00, 0x00, // OOOOOOO-------------------------
|
||||
0xfc, 0x3f, 0xff, 0xff, // OOOOOO----OOOOOOOOOOOOOOOOOOOOOO
|
||||
0xf8, 0xff, 0xff, 0xfe, // OOOOO---OOOOOOOOOOOOOOOOOOOOOOO-
|
||||
0xf1, 0xff, 0xff, 0xfe, // OOOO---OOOOOOOOOOOOOOOOOOOOOOOO-
|
||||
0xf3, 0xff, 0xff, 0xfc, // OOOO--OOOOOOOOOOOOOOOOOOOOOOOO--
|
||||
0xe7, 0xff, 0xff, 0xf8, // OOO--OOOOOOOOOOOOOOOOOOOOOOOO---
|
||||
0xcf, 0xff, 0xff, 0xf0, // OO--OOOOOOOOOOOOOOOOOOOOOOOO----
|
||||
0x8f, 0xff, 0xff, 0xe0, // O---OOOOOOOOOOOOOOOOOOOOOOO-----
|
||||
0x1f, 0xff, 0xff, 0xe0, // ---OOOOOOOOOOOOOOOOOOOOOOOO-----
|
||||
0x3f, 0xff, 0xff, 0xc0, // --OOOOOOOOOOOOOOOOOOOOOOOO------
|
||||
0x7f, 0xff, 0xff, 0x80, // -OOOOOOOOOOOOOOOOOOOOOOOO-------
|
||||
0x7f, 0xff, 0xfe, 0x00, // -OOOOOOOOOOOOOOOOOOOOOO---------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
|
||||
// ASCII: 100, char width: 24
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0xff, 0x00, 0x00, // --------OOOOOOOO--------........
|
||||
0x01, 0xff, 0x80, 0x00, // -------OOOOOOOOOO-------........
|
||||
0x03, 0x81, 0x80, 0x00, // ------OOO------OO-------........
|
||||
0x03, 0x01, 0xc0, 0x00, // ------OO-------OOO------........
|
||||
0xff, 0xff, 0xff, 0x00, // OOOOOOOOOOOOOOOOOOOOOOOO........
|
||||
0xff, 0xff, 0xff, 0x00, // OOOOOOOOOOOOOOOOOOOOOOOO........
|
||||
0x30, 0x00, 0x1c, 0x00, // --OO---------------OOO--........
|
||||
0x30, 0x00, 0x1c, 0x00, // --OO---------------OOO--........
|
||||
0x30, 0x00, 0x1c, 0x00, // --OO---------------OOO--........
|
||||
0x30, 0x00, 0x1c, 0x00, // --OO---------------OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x33, 0x99, 0x9c, 0x00, // --OO--OOO--OO--OO--OOO--........
|
||||
0x30, 0x00, 0x1c, 0x00, // --OO---------------OOO--........
|
||||
0x30, 0x00, 0x1c, 0x00, // --OO---------------OOO--........
|
||||
0x38, 0x00, 0x18, 0x00, // --OOO--------------OO---........
|
||||
0x1f, 0xff, 0xf8, 0x00, // ---OOOOOOOOOOOOOOOOOO---........
|
||||
0x1f, 0xff, 0xf0, 0x00, // ---OOOOOOOOOOOOOOOOO----........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
|
||||
// ASCII: 101, char width: 26
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0xff, 0xff, 0xe0, 0x00, // OOOOOOOOOOOOOOOOOOO-------......
|
||||
0xff, 0xff, 0xf0, 0x00, // OOOOOOOOOOOOOOOOOOOO------......
|
||||
0xcf, 0xe1, 0xb8, 0x00, // OO--OOOOOOO----OO-OOO-----......
|
||||
0xcf, 0xe1, 0x9c, 0x00, // OO--OOOOOOO----OO--OOO----......
|
||||
0xcf, 0xe1, 0x8e, 0x00, // OO--OOOOOOO----OO---OOO---......
|
||||
0xcf, 0xe1, 0x87, 0x00, // OO--OOOOOOO----OO----OOO--......
|
||||
0xcf, 0xe1, 0x83, 0x80, // OO--OOOOOOO----OO-----OOO-......
|
||||
0xcf, 0xe1, 0x81, 0xc0, // OO--OOOOOOO----OO------OOO......
|
||||
0xcf, 0xe1, 0x81, 0xc0, // OO--OOOOOOO----OO------OOO......
|
||||
0xcf, 0xff, 0x81, 0xc0, // OO--OOOOOOOOOOOOO------OOO......
|
||||
0xc7, 0xff, 0x81, 0xc0, // OO---OOOOOOOOOOOO------OOO......
|
||||
0xc0, 0x00, 0x01, 0xc0, // OO---------------------OOO......
|
||||
0xc0, 0x00, 0x01, 0xc0, // OO---------------------OOO......
|
||||
0xc0, 0x00, 0x01, 0xc0, // OO---------------------OOO......
|
||||
0xc0, 0x00, 0x01, 0xc0, // OO---------------------OOO......
|
||||
0xc7, 0xff, 0xf9, 0xc0, // OO---OOOOOOOOOOOOOOOO--OOO......
|
||||
0xcf, 0xff, 0xfd, 0xc0, // OO--OOOOOOOOOOOOOOOOOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xce, 0x00, 0x1d, 0xc0, // OO--OOO------------OOO-OOO......
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO......
|
||||
0xff, 0xff, 0xff, 0x80, // OOOOOOOOOOOOOOOOOOOOOOOOO-......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
|
||||
// ASCII: 102, char width: 26
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x38, 0x00, // ------------------OOO-----......
|
||||
0x00, 0x00, 0x7c, 0x00, // -----------------OOOOO----......
|
||||
0x00, 0x00, 0xfe, 0x00, // ----------------OOOOOOO---......
|
||||
0x00, 0x01, 0xff, 0x00, // ---------------OOOOOOOOO--......
|
||||
0x00, 0x00, 0xff, 0x80, // ----------------OOOOOOOOO-......
|
||||
0x00, 0x06, 0x7f, 0x80, // -------------OO--OOOOOOOO-......
|
||||
0x00, 0x0f, 0x3f, 0x80, // ------------OOOO--OOOOOOO-......
|
||||
0x00, 0x1f, 0x9f, 0x80, // -----------OOOOOO--OOOOOO-......
|
||||
0x00, 0x3f, 0xcf, 0x00, // ----------OOOOOOOO--OOOO--......
|
||||
0x00, 0x7b, 0xe6, 0x00, // ---------OOOO-OOOOO--OO---......
|
||||
0x00, 0xf7, 0xf0, 0x00, // --------OOOO-OOOOOOO------......
|
||||
0x01, 0xef, 0xf8, 0x00, // -------OOOO-OOOOOOOOO-----......
|
||||
0x03, 0xdf, 0xf0, 0x00, // ------OOOO-OOOOOOOOO------......
|
||||
0x07, 0xbf, 0xe0, 0x00, // -----OOOO-OOOOOOOOO-------......
|
||||
0x0f, 0x7f, 0xc0, 0x00, // ----OOOO-OOOOOOOOO--------......
|
||||
0x1e, 0xff, 0x80, 0x00, // ---OOOO-OOOOOOOOO---------......
|
||||
0x3d, 0xff, 0x00, 0x00, // --OOOO-OOOOOOOOO----------......
|
||||
0x7b, 0xfe, 0x00, 0x00, // -OOOO-OOOOOOOOO-----------......
|
||||
0xff, 0xfc, 0x00, 0x00, // OOOOOOOOOOOOOO------------......
|
||||
0xe7, 0xf8, 0x00, 0x00, // OOO--OOOOOOOO-------------......
|
||||
0xc3, 0xf0, 0x00, 0x00, // OO----OOOOOO--------------......
|
||||
0xc1, 0xe0, 0x00, 0x00, // OO-----OOOO---------------......
|
||||
0xf1, 0xc0, 0x00, 0x00, // OOOO---OOO----------------......
|
||||
0xf1, 0xc0, 0x00, 0x00, // OOOO---OOO----------------......
|
||||
0xff, 0x80, 0x00, 0x00, // OOOOOOOOO-----------------......
|
||||
0xff, 0x00, 0x00, 0x00, // OOOOOOOO------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
|
||||
// ASCII: 103, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x03, 0xc0, // ----------------------OOOO----..
|
||||
0x00, 0x00, 0x07, 0xe0, // ---------------------OOOOOO---..
|
||||
0x00, 0x00, 0x0f, 0xf0, // --------------------OOOOOOOO--..
|
||||
0x00, 0x00, 0x0f, 0xf0, // --------------------OOOOOOOO--..
|
||||
0x00, 0x00, 0x1f, 0xf0, // -------------------OOOOOOOOO--..
|
||||
0x00, 0x00, 0x3f, 0xe0, // ------------------OOOOOOOOO---..
|
||||
0x06, 0x00, 0x7f, 0xc0, // -----OO----------OOOOOOOOO----..
|
||||
0x0f, 0x00, 0xff, 0x80, // ----OOOO--------OOOOOOOOO-----..
|
||||
0x1f, 0x81, 0xff, 0x00, // ---OOOOOO------OOOOOOOOO------..
|
||||
0x3f, 0xc3, 0xfe, 0x00, // --OOOOOOOO----OOOOOOOOO-------..
|
||||
0x3f, 0xe7, 0xfc, 0x00, // --OOOOOOOOO--OOOOOOOOO--------..
|
||||
0x1f, 0xff, 0xf8, 0x00, // ---OOOOOOOOOOOOOOOOOO---------..
|
||||
0x0f, 0xff, 0xf0, 0x00, // ----OOOOOOOOOOOOOOOO----------..
|
||||
0x07, 0xff, 0xe0, 0x00, // -----OOOOOOOOOOOOOO-----------..
|
||||
0x03, 0xff, 0xc0, 0x00, // ------OOOOOOOOOOOO------------..
|
||||
0x01, 0xff, 0x80, 0x00, // -------OOOOOOOOOO-------------..
|
||||
0x00, 0xff, 0x00, 0x00, // --------OOOOOOOO--------------..
|
||||
0x00, 0x7e, 0x00, 0x00, // ---------OOOOOO---------------..
|
||||
0x00, 0x3c, 0x00, 0x00, // ----------OOOO----------------..
|
||||
0x00, 0x18, 0x00, 0x00, // -----------OO-----------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 104, char width: 24
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x0e, 0x00, 0x60, 0x00, // ----OOO----------OO-----........
|
||||
0x0f, 0x00, 0xf0, 0x00, // ----OOOO--------OOOO----........
|
||||
0x1f, 0x81, 0xf8, 0x00, // ---OOOOOO------OOOOOO---........
|
||||
0x3f, 0xc3, 0xfc, 0x00, // --OOOOOOOO----OOOOOOOO--........
|
||||
0x3f, 0xe7, 0xfc, 0x00, // --OOOOOOOOO--OOOOOOOOO--........
|
||||
0x1f, 0xff, 0xf8, 0x00, // ---OOOOOOOOOOOOOOOOOO---........
|
||||
0x0f, 0xff, 0xf0, 0x00, // ----OOOOOOOOOOOOOOOO----........
|
||||
0x07, 0xff, 0xe0, 0x00, // -----OOOOOOOOOOOOOO-----........
|
||||
0x03, 0xff, 0xc0, 0x00, // ------OOOOOOOOOOOO------........
|
||||
0x01, 0xff, 0x80, 0x00, // -------OOOOOOOOOO-------........
|
||||
0x01, 0xff, 0x80, 0x00, // -------OOOOOOOOOO-------........
|
||||
0x03, 0xff, 0xc0, 0x00, // ------OOOOOOOOOOOO------........
|
||||
0x07, 0xff, 0xe0, 0x00, // -----OOOOOOOOOOOOOO-----........
|
||||
0x0f, 0xff, 0xf0, 0x00, // ----OOOOOOOOOOOOOOOO----........
|
||||
0x1f, 0xff, 0xf8, 0x00, // ---OOOOOOOOOOOOOOOOOO---........
|
||||
0x3f, 0xe7, 0xfc, 0x00, // --OOOOOOOOO--OOOOOOOOO--........
|
||||
0x3f, 0xc3, 0xfc, 0x00, // --OOOOOOOO----OOOOOOOO--........
|
||||
0x3f, 0x81, 0xf8, 0x00, // --OOOOOOO------OOOOOO---........
|
||||
0x1f, 0x00, 0xf0, 0x00, // ---OOOOO--------OOOO----........
|
||||
0x0e, 0x00, 0x60, 0x00, // ----OOO----------OO-----........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
|
||||
// ASCII: 105, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x0c, 0x00, 0x00, 0xc0, // ----OO------------------OO----..
|
||||
0x1e, 0x00, 0x01, 0xe0, // ---OOOO----------------OOOO---..
|
||||
0x3f, 0x00, 0x03, 0xf0, // --OOOOOO--------------OOOOOO--..
|
||||
0x3f, 0x80, 0x07, 0xf8, // --OOOOOOO------------OOOOOOOO-..
|
||||
0x7f, 0xc0, 0x0f, 0xf0, // -OOOOOOOOO----------OOOOOOOO--..
|
||||
0x3f, 0xe0, 0x1f, 0xf0, // --OOOOOOOOO--------OOOOOOOOO--..
|
||||
0x1f, 0xf0, 0x3f, 0xe0, // ---OOOOOOOOO------OOOOOOOOO---..
|
||||
0x0f, 0xf8, 0x7f, 0xc0, // ----OOOOOOOOO----OOOOOOOOO----..
|
||||
0x07, 0xfc, 0xff, 0x80, // -----OOOOOOOOO--OOOOOOOOO-----..
|
||||
0x03, 0xff, 0xff, 0x00, // ------OOOOOOOOOOOOOOOOOO------..
|
||||
0x01, 0xff, 0xfe, 0x00, // -------OOOOOOOOOOOOOOOO-------..
|
||||
0x00, 0xff, 0xfc, 0x00, // --------OOOOOOOOOOOOOO--------..
|
||||
0x00, 0x7f, 0xf8, 0x00, // ---------OOOOOOOOOOOO---------..
|
||||
0x00, 0x3f, 0xf0, 0x00, // ----------OOOOOOOOOO----------..
|
||||
0x00, 0x1f, 0xe0, 0x00, // -----------OOOOOOOO-----------..
|
||||
0x00, 0x0f, 0xc0, 0x00, // ------------OOOOOO------------..
|
||||
0x00, 0x07, 0x80, 0x00, // -------------OOOO-------------..
|
||||
0x00, 0x03, 0x00, 0x00, // --------------OO--------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 106, char width: 21
|
||||
0x00, 0x03, 0xc0, 0x00, // --------------OOOO---...........
|
||||
0x00, 0x07, 0xe0, 0x00, // -------------OOOOOO--...........
|
||||
0x00, 0x0f, 0xf0, 0x00, // ------------OOOOOOOO-...........
|
||||
0x00, 0x1f, 0xf0, 0x00, // -----------OOOOOOOOO-...........
|
||||
0x00, 0x3f, 0xe0, 0x00, // ----------OOOOOOOOO--...........
|
||||
0x00, 0x7f, 0xc0, 0x00, // ---------OOOOOOOOO---...........
|
||||
0x00, 0xff, 0x80, 0x00, // --------OOOOOOOOO----...........
|
||||
0x01, 0xff, 0x00, 0x00, // -------OOOOOOOOO-----...........
|
||||
0x03, 0xfe, 0x00, 0x00, // ------OOOOOOOOO------...........
|
||||
0x07, 0xfc, 0x00, 0x00, // -----OOOOOOOOO-------...........
|
||||
0x0f, 0xf8, 0x00, 0x00, // ----OOOOOOOOO--------...........
|
||||
0x0f, 0xf0, 0x00, 0x00, // ----OOOOOOOO---------...........
|
||||
0x1f, 0xe0, 0x00, 0x00, // ---OOOOOOOO----------...........
|
||||
0x3f, 0xe0, 0x00, 0x00, // --OOOOOOOOO----------...........
|
||||
0x0f, 0xf0, 0x00, 0x00, // ----OOOOOOOO---------...........
|
||||
0x0f, 0xf8, 0x00, 0x00, // ----OOOOOOOOO--------...........
|
||||
0x07, 0xfc, 0x00, 0x00, // -----OOOOOOOOO-------...........
|
||||
0x03, 0xfe, 0x00, 0x00, // ------OOOOOOOOO------...........
|
||||
0x01, 0xff, 0x00, 0x00, // -------OOOOOOOOO-----...........
|
||||
0x00, 0xff, 0x80, 0x00, // --------OOOOOOOOO----...........
|
||||
0x00, 0x7f, 0xc0, 0x00, // ---------OOOOOOOOO---...........
|
||||
0x00, 0x3f, 0xe0, 0x00, // ----------OOOOOOOOO--...........
|
||||
0x00, 0x1f, 0xf0, 0x00, // -----------OOOOOOOOO-...........
|
||||
0x00, 0x0f, 0xf0, 0x00, // ------------OOOOOOOO-...........
|
||||
0x00, 0x07, 0xe0, 0x00, // -------------OOOOOO--...........
|
||||
0x00, 0x03, 0xc0, 0x00, // --------------OOOO---...........
|
||||
0x00, 0x01, 0x80, 0x00, // ---------------OO----...........
|
||||
0x00, 0x00, 0x00, 0x00, // ---------------------...........
|
||||
0x00, 0x00, 0x00, 0x00, // ---------------------...........
|
||||
0x00, 0x00, 0x00, 0x00, // ---------------------...........
|
||||
|
||||
// ASCII: 107, char width: 21
|
||||
0x1e, 0x00, 0x00, 0x00, // ---OOOO--------------...........
|
||||
0x3f, 0x00, 0x00, 0x00, // --OOOOOO-------------...........
|
||||
0x3f, 0x80, 0x00, 0x00, // --OOOOOOO------------...........
|
||||
0x7f, 0xc0, 0x00, 0x00, // -OOOOOOOOO-----------...........
|
||||
0x3f, 0xe0, 0x00, 0x00, // --OOOOOOOOO----------...........
|
||||
0x1f, 0xf0, 0x00, 0x00, // ---OOOOOOOOO---------...........
|
||||
0x0f, 0xf8, 0x00, 0x00, // ----OOOOOOOOO--------...........
|
||||
0x07, 0xfc, 0x00, 0x00, // -----OOOOOOOOO-------...........
|
||||
0x03, 0xfe, 0x00, 0x00, // ------OOOOOOOOO------...........
|
||||
0x01, 0xff, 0x00, 0x00, // -------OOOOOOOOO-----...........
|
||||
0x00, 0xff, 0x80, 0x00, // --------OOOOOOOOO----...........
|
||||
0x00, 0x7f, 0xc0, 0x00, // ---------OOOOOOOOO---...........
|
||||
0x00, 0x3f, 0xe0, 0x00, // ----------OOOOOOOOO--...........
|
||||
0x00, 0x3f, 0xe0, 0x00, // ----------OOOOOOOOO--...........
|
||||
0x00, 0x7f, 0xc0, 0x00, // ---------OOOOOOOOO---...........
|
||||
0x00, 0xff, 0x80, 0x00, // --------OOOOOOOOO----...........
|
||||
0x01, 0xff, 0x00, 0x00, // -------OOOOOOOOO-----...........
|
||||
0x03, 0xfe, 0x00, 0x00, // ------OOOOOOOOO------...........
|
||||
0x07, 0xfc, 0x00, 0x00, // -----OOOOOOOOO-------...........
|
||||
0x0f, 0xf8, 0x00, 0x00, // ----OOOOOOOOO--------...........
|
||||
0x1f, 0xf0, 0x00, 0x00, // ---OOOOOOOOO---------...........
|
||||
0x1f, 0xe0, 0x00, 0x00, // ---OOOOOOOO----------...........
|
||||
0x3f, 0xc0, 0x00, 0x00, // --OOOOOOOO-----------...........
|
||||
0x7f, 0x80, 0x00, 0x00, // -OOOOOOOO------------...........
|
||||
0x3f, 0x00, 0x00, 0x00, // --OOOOOO-------------...........
|
||||
0x1e, 0x00, 0x00, 0x00, // ---OOOO--------------...........
|
||||
0x0c, 0x00, 0x00, 0x00, // ----OO---------------...........
|
||||
0x00, 0x00, 0x00, 0x00, // ---------------------...........
|
||||
0x00, 0x00, 0x00, 0x00, // ---------------------...........
|
||||
0x00, 0x00, 0x00, 0x00, // ---------------------...........
|
||||
|
||||
// ASCII: 108, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x03, 0x00, 0x00, // --------------OO--------------..
|
||||
0x00, 0x07, 0x80, 0x00, // -------------OOOO-------------..
|
||||
0x00, 0x0f, 0xc0, 0x00, // ------------OOOOOO------------..
|
||||
0x00, 0x1f, 0xe0, 0x00, // -----------OOOOOOOO-----------..
|
||||
0x00, 0x3f, 0xf0, 0x00, // ----------OOOOOOOOOO----------..
|
||||
0x00, 0x7f, 0xf8, 0x00, // ---------OOOOOOOOOOOO---------..
|
||||
0x00, 0xff, 0xfc, 0x00, // --------OOOOOOOOOOOOOO--------..
|
||||
0x01, 0xff, 0xfe, 0x00, // -------OOOOOOOOOOOOOOOO-------..
|
||||
0x03, 0xff, 0xff, 0x00, // ------OOOOOOOOOOOOOOOOOO------..
|
||||
0x07, 0xfc, 0xff, 0x80, // -----OOOOOOOOO--OOOOOOOOO-----..
|
||||
0x0f, 0xf8, 0x7f, 0xc0, // ----OOOOOOOOO----OOOOOOOOO----..
|
||||
0x1f, 0xf0, 0x3f, 0xe0, // ---OOOOOOOOO------OOOOOOOOO---..
|
||||
0x3f, 0xe0, 0x1f, 0xf0, // --OOOOOOOOO--------OOOOOOOOO--..
|
||||
0x3f, 0xc0, 0x0f, 0xf0, // --OOOOOOOO----------OOOOOOOO--..
|
||||
0x7f, 0x80, 0x07, 0xf8, // -OOOOOOOO------------OOOOOOOO-..
|
||||
0x3f, 0x00, 0x03, 0xf0, // --OOOOOO--------------OOOOOO--..
|
||||
0x1e, 0x00, 0x01, 0xe0, // ---OOOO----------------OOOO---..
|
||||
0x0c, 0x00, 0x00, 0xc0, // ----OO------------------OO----..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 109, char width: 17
|
||||
0x01, 0x80, 0x00, 0x00, // -------OO--------...............
|
||||
0x01, 0xc0, 0x00, 0x00, // -------OOO-------...............
|
||||
0x01, 0xe0, 0x00, 0x00, // -------OOOO------...............
|
||||
0x01, 0xf0, 0x00, 0x00, // -------OOOOO-----...............
|
||||
0x01, 0xf8, 0x00, 0x00, // -------OOOOOO----...............
|
||||
0x01, 0xfc, 0x00, 0x00, // -------OOOOOOO---...............
|
||||
0x21, 0xde, 0x00, 0x00, // --O----OOO-OOOO--...............
|
||||
0x71, 0xcf, 0x00, 0x00, // -OOO---OOO--OOOO-...............
|
||||
0x79, 0xcf, 0x80, 0x00, // -OOOO--OOO--OOOOO...............
|
||||
0x3d, 0xde, 0x00, 0x00, // --OOOO-OOO-OOOO--...............
|
||||
0x1f, 0xfc, 0x00, 0x00, // ---OOOOOOOOOOO---...............
|
||||
0x0f, 0xf8, 0x00, 0x00, // ----OOOOOOOOO----...............
|
||||
0x07, 0xf0, 0x00, 0x00, // -----OOOOOOO-----...............
|
||||
0x03, 0xe0, 0x00, 0x00, // ------OOOOO------...............
|
||||
0x01, 0xe0, 0x00, 0x00, // -------OOOO------...............
|
||||
0x03, 0xf0, 0x00, 0x00, // ------OOOOOO-----...............
|
||||
0x07, 0xf8, 0x00, 0x00, // -----OOOOOOOO----...............
|
||||
0x0f, 0xfc, 0x00, 0x00, // ----OOOOOOOOOO---...............
|
||||
0x1d, 0xde, 0x00, 0x00, // ---OOO-OOO-OOOO--...............
|
||||
0x39, 0xcf, 0x00, 0x00, // --OOO--OOO--OOOO-...............
|
||||
0x71, 0xc7, 0x80, 0x00, // -OOO---OOO---OOOO...............
|
||||
0x71, 0xce, 0x00, 0x00, // -OOO---OOO--OOO--...............
|
||||
0x01, 0xfc, 0x00, 0x00, // -------OOOOOOO---...............
|
||||
0x01, 0xf8, 0x00, 0x00, // -------OOOOOO----...............
|
||||
0x01, 0xf8, 0x00, 0x00, // -------OOOOOO----...............
|
||||
0x01, 0xf0, 0x00, 0x00, // -------OOOOO-----...............
|
||||
0x01, 0xe0, 0x00, 0x00, // -------OOOO------...............
|
||||
0x01, 0xc0, 0x00, 0x00, // -------OOO-------...............
|
||||
0x01, 0x80, 0x00, 0x00, // -------OO--------...............
|
||||
0x00, 0x00, 0x00, 0x00, // -----------------...............
|
||||
|
||||
// ASCII: 110, char width: 17
|
||||
0x0f, 0xe0, 0x00, 0x00, // ----OOOOOOO------...............
|
||||
0x1c, 0x70, 0x00, 0x00, // ---OOO---OOO-----...............
|
||||
0x38, 0x38, 0x00, 0x00, // --OOO-----OOO----...............
|
||||
0x38, 0x18, 0x00, 0x00, // --OOO------OO----...............
|
||||
0x30, 0x1b, 0x80, 0x00, // --OO-------OO-OOO...............
|
||||
0x30, 0x1b, 0x80, 0x00, // --OO-------OO-OOO...............
|
||||
0x30, 0x18, 0x00, 0x00, // --OO-------OO----...............
|
||||
0x30, 0x18, 0x00, 0x00, // --OO-------OO----...............
|
||||
0x33, 0x9b, 0x80, 0x00, // --OO--OOO--OO-OOO...............
|
||||
0x33, 0x9b, 0x80, 0x00, // --OO--OOO--OO-OOO...............
|
||||
0x33, 0x98, 0x00, 0x00, // --OO--OOO--OO----...............
|
||||
0x33, 0x98, 0x00, 0x00, // --OO--OOO--OO----...............
|
||||
0x33, 0x98, 0x00, 0x00, // --OO--OOO--OO----...............
|
||||
0x33, 0x9b, 0x80, 0x00, // --OO--OOO--OO-OOO...............
|
||||
0x33, 0x9b, 0x80, 0x00, // --OO--OOO--OO-OOO...............
|
||||
0x33, 0x98, 0x00, 0x00, // --OO--OOO--OO----...............
|
||||
0x33, 0x98, 0x00, 0x00, // --OO--OOO--OO----...............
|
||||
0x33, 0x98, 0x00, 0x00, // --OO--OOO--OO----...............
|
||||
0x73, 0x9c, 0x00, 0x00, // -OOO--OOO--OOO---...............
|
||||
0x63, 0x8c, 0x00, 0x00, // -OO---OOO---OO---...............
|
||||
0xe7, 0xce, 0x00, 0x00, // OOO--OOOOO--OOO--...............
|
||||
0xcf, 0xe6, 0x00, 0x00, // OO--OOOOOOO--OO--...............
|
||||
0xcf, 0xe6, 0x00, 0x00, // OO--OOOOOOO--OO--...............
|
||||
0xcf, 0xe6, 0x00, 0x00, // OO--OOOOOOO--OO--...............
|
||||
0xe7, 0xce, 0x00, 0x00, // OOO--OOOOO--OOO--...............
|
||||
0xe3, 0x8c, 0x00, 0x00, // OOO---OOO---OO---...............
|
||||
0x70, 0x1c, 0x00, 0x00, // -OOO-------OOO---...............
|
||||
0x38, 0x38, 0x00, 0x00, // --OOO-----OOO----...............
|
||||
0x1f, 0xf0, 0x00, 0x00, // ---OOOOOOOOO-----...............
|
||||
0x07, 0xc0, 0x00, 0x00, // -----OOOOO-------...............
|
||||
|
||||
// ASCII: 111, char width: 24
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x06, 0x00, // ---------------------OO-........
|
||||
0x00, 0x00, 0x1f, 0x00, // -------------------OOOOO........
|
||||
0x00, 0x00, 0x7e, 0x00, // -----------------OOOOOO-........
|
||||
0x00, 0x01, 0xfe, 0x00, // ---------------OOOOOOOO-........
|
||||
0x00, 0x07, 0xfc, 0x00, // -------------OOOOOOOOO--........
|
||||
0x00, 0x1f, 0xfc, 0x00, // -----------OOOOOOOOOOO--........
|
||||
0x00, 0x7f, 0xf8, 0x00, // ---------OOOOOOOOOOOO---........
|
||||
0x01, 0xff, 0xf8, 0x00, // -------OOOOOOOOOOOOOO---........
|
||||
0x07, 0xff, 0xf0, 0x00, // -----OOOOOOOOOOOOOOO----........
|
||||
0x1f, 0xff, 0xf0, 0x00, // ---OOOOOOOOOOOOOOOOO----........
|
||||
0x7f, 0xff, 0xe0, 0x00, // -OOOOOOOOOOOOOOOOOO-----........
|
||||
0xff, 0xff, 0xe0, 0x00, // OOOOOOOOOOOOOOOOOOO-----........
|
||||
0xff, 0xff, 0xc0, 0x00, // OOOOOOOOOOOOOOOOOO------........
|
||||
0x00, 0x1f, 0xc0, 0x00, // -----------OOOOOOO------........
|
||||
0x00, 0x1f, 0x80, 0x00, // -----------OOOOOO-------........
|
||||
0x00, 0x1f, 0x80, 0x00, // -----------OOOOOO-------........
|
||||
0x00, 0x1f, 0x00, 0x00, // -----------OOOOO--------........
|
||||
0x00, 0x1f, 0x00, 0x00, // -----------OOOOO--------........
|
||||
0x00, 0x1e, 0x00, 0x00, // -----------OOOO---------........
|
||||
0x00, 0x1e, 0x00, 0x00, // -----------OOOO---------........
|
||||
0x00, 0x1c, 0x00, 0x00, // -----------OOO----------........
|
||||
0x00, 0x1c, 0x00, 0x00, // -----------OOO----------........
|
||||
0x00, 0x18, 0x00, 0x00, // -----------OO-----------........
|
||||
0x00, 0x18, 0x00, 0x00, // -----------OO-----------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
|
||||
// ASCII: 112, char width: 30
|
||||
0x00, 0x07, 0x80, 0x00, // -------------OOOO-------------..
|
||||
0x00, 0x0f, 0xc0, 0x00, // ------------OOOOOO------------..
|
||||
0x00, 0x0f, 0xc0, 0x00, // ------------OOOOOO------------..
|
||||
0x00, 0x1f, 0xe0, 0x00, // -----------OOOOOOOO-----------..
|
||||
0x00, 0x1f, 0xe0, 0x00, // -----------OOOOOOOO-----------..
|
||||
0x00, 0x3f, 0xf0, 0x00, // ----------OOOOOOOOOO----------..
|
||||
0x00, 0x3f, 0xf0, 0x00, // ----------OOOOOOOOOO----------..
|
||||
0x00, 0x7f, 0xf8, 0x00, // ---------OOOOOOOOOOOO---------..
|
||||
0x00, 0xf8, 0x7c, 0x00, // --------OOOOO----OOOOO--------..
|
||||
0x00, 0xf8, 0x7c, 0x00, // --------OOOOO----OOOOO--------..
|
||||
0x01, 0xf8, 0x7e, 0x00, // -------OOOOOO----OOOOOO-------..
|
||||
0x01, 0xf8, 0x7e, 0x00, // -------OOOOOO----OOOOOO-------..
|
||||
0x03, 0xf8, 0x7f, 0x00, // ------OOOOOOO----OOOOOOO------..
|
||||
0x03, 0xf8, 0x7f, 0x00, // ------OOOOOOO----OOOOOOO------..
|
||||
0x07, 0xf8, 0x7f, 0x80, // -----OOOOOOOO----OOOOOOOO-----..
|
||||
0x07, 0xf8, 0x7f, 0x80, // -----OOOOOOOO----OOOOOOOO-----..
|
||||
0x0f, 0xff, 0xff, 0xc0, // ----OOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x0f, 0xff, 0xff, 0xc0, // ----OOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x1f, 0xf8, 0x7f, 0xe0, // ---OOOOOOOOOO----OOOOOOOOOO---..
|
||||
0x1f, 0xf8, 0x7f, 0xe0, // ---OOOOOOOOOO----OOOOOOOOOO---..
|
||||
0x3f, 0xf8, 0x7f, 0xf0, // --OOOOOOOOOOO----OOOOOOOOOOO--..
|
||||
0x7f, 0xf8, 0x7f, 0xf8, // -OOOOOOOOOOOO----OOOOOOOOOOOO-..
|
||||
0x7f, 0xf8, 0x7f, 0xf8, // -OOOOOOOOOOOO----OOOOOOOOOOOO-..
|
||||
0xff, 0xff, 0xff, 0xfc, // OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..
|
||||
0xff, 0xff, 0xff, 0xfc, // OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..
|
||||
0xff, 0xff, 0xff, 0xfc, // OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO..
|
||||
0x7f, 0xff, 0xff, 0xf8, // -OOOOOOOOOOOOOOOOOOOOOOOOOOOO-..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 113, char width: 24
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x7f, 0x00, 0x00, // ---------OOOOOOO--------........
|
||||
0x03, 0xff, 0xc0, 0x00, // ------OOOOOOOOOOOO------........
|
||||
0x07, 0xff, 0xf0, 0x00, // -----OOOOOOOOOOOOOOO----........
|
||||
0x0f, 0xff, 0xf8, 0x00, // ----OOOOOOOOOOOOOOOOO---........
|
||||
0x1f, 0xe3, 0xfc, 0x00, // ---OOOOOOOO---OOOOOOOO--........
|
||||
0x3f, 0xc3, 0xfc, 0x00, // --OOOOOOOO----OOOOOOOO--........
|
||||
0x7f, 0xc3, 0xfe, 0x00, // -OOOOOOOOO----OOOOOOOOO-........
|
||||
0x7f, 0xe3, 0xfe, 0x00, // -OOOOOOOOOO---OOOOOOOOO-........
|
||||
0x7f, 0xff, 0xff, 0x00, // -OOOOOOOOOOOOOOOOOOOOOOO........
|
||||
0xff, 0xff, 0xff, 0x00, // OOOOOOOOOOOOOOOOOOOOOOOO........
|
||||
0xff, 0xe3, 0xff, 0x00, // OOOOOOOOOOO---OOOOOOOOOO........
|
||||
0xff, 0xe3, 0xff, 0x00, // OOOOOOOOOOO---OOOOOOOOOO........
|
||||
0xff, 0xe3, 0xff, 0x00, // OOOOOOOOOOO---OOOOOOOOOO........
|
||||
0xff, 0xe3, 0xff, 0x00, // OOOOOOOOOOO---OOOOOOOOOO........
|
||||
0xff, 0xe3, 0xff, 0x00, // OOOOOOOOOOO---OOOOOOOOOO........
|
||||
0xff, 0xe3, 0xff, 0x00, // OOOOOOOOOOO---OOOOOOOOOO........
|
||||
0x7f, 0xe3, 0xff, 0x00, // -OOOOOOOOOO---OOOOOOOOOO........
|
||||
0x7f, 0xe3, 0xfe, 0x00, // -OOOOOOOOOO---OOOOOOOOO-........
|
||||
0x7f, 0xe3, 0xfe, 0x00, // -OOOOOOOOOO---OOOOOOOOO-........
|
||||
0x3f, 0xe3, 0xfc, 0x00, // --OOOOOOOOO---OOOOOOOO--........
|
||||
0x1f, 0xe3, 0xfc, 0x00, // ---OOOOOOOO---OOOOOOOO--........
|
||||
0x0f, 0xff, 0xf8, 0x00, // ----OOOOOOOOOOOOOOOOO---........
|
||||
0x07, 0xff, 0xf0, 0x00, // -----OOOOOOOOOOOOOOO----........
|
||||
0x03, 0xff, 0xc0, 0x00, // ------OOOOOOOOOOOO------........
|
||||
0x00, 0x7f, 0x00, 0x00, // ---------OOOOOOO--------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------........
|
||||
|
||||
// ASCII: 114, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x7f, 0xff, 0xff, 0xc0, // -OOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xf0, 0x00, 0x01, 0xe0, // OOOO-------------------OOOO---..
|
||||
0xe6, 0x00, 0x01, 0xf0, // OOO--OO----------------OOOOO--..
|
||||
0xe7, 0x00, 0x01, 0xf8, // OOO--OOO---------------OOOOOO-..
|
||||
0xe7, 0x00, 0x01, 0xfc, // OOO--OOO---------------OOOOOOO..
|
||||
0xe7, 0x00, 0x01, 0xfc, // OOO--OOO---------------OOOOOOO..
|
||||
0xe7, 0x00, 0x01, 0xfc, // OOO--OOO---------------OOOOOOO..
|
||||
0xe7, 0x00, 0x01, 0xfc, // OOO--OOO---------------OOOOOOO..
|
||||
0xe7, 0x00, 0x01, 0xfc, // OOO--OOO---------------OOOOOOO..
|
||||
0xe7, 0x00, 0x01, 0xfc, // OOO--OOO---------------OOOOOOO..
|
||||
0xe7, 0x00, 0x01, 0xf8, // OOO--OOO---------------OOOOOO-..
|
||||
0xe6, 0x00, 0x01, 0xf0, // OOO--OO----------------OOOOO--..
|
||||
0xe0, 0x00, 0x01, 0xe0, // OOO--------------------OOOO---..
|
||||
0xf0, 0x00, 0x01, 0xc0, // OOOO-------------------OOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x7f, 0xff, 0xff, 0x80, // -OOOOOOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 115, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x7f, 0xff, 0xff, 0xc0, // -OOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xf0, 0x00, 0x01, 0xe0, // OOOO-------------------OOOO---..
|
||||
0xe6, 0x30, 0x01, 0xf0, // OOO--OO---OO-----------OOOOO--..
|
||||
0xe7, 0x78, 0x01, 0xf8, // OOO--OOO-OOOO----------OOOOOO-..
|
||||
0xe7, 0x78, 0x01, 0xfc, // OOO--OOO-OOOO----------OOOOOOO..
|
||||
0xe7, 0x78, 0x01, 0xfc, // OOO--OOO-OOOO----------OOOOOOO..
|
||||
0xe7, 0x78, 0x01, 0xfc, // OOO--OOO-OOOO----------OOOOOOO..
|
||||
0xe7, 0x78, 0x01, 0xfc, // OOO--OOO-OOOO----------OOOOOOO..
|
||||
0xe7, 0x78, 0x01, 0xfc, // OOO--OOO-OOOO----------OOOOOOO..
|
||||
0xe7, 0x78, 0x01, 0xfc, // OOO--OOO-OOOO----------OOOOOOO..
|
||||
0xe7, 0x78, 0x01, 0xf8, // OOO--OOO-OOOO----------OOOOOO-..
|
||||
0xe6, 0x30, 0x01, 0xf0, // OOO--OO---OO-----------OOOOO--..
|
||||
0xe0, 0x00, 0x01, 0xe0, // OOO--------------------OOOO---..
|
||||
0xf0, 0x00, 0x01, 0xc0, // OOOO-------------------OOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x7f, 0xff, 0xff, 0x80, // -OOOOOOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 116, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x7f, 0xff, 0xff, 0xc0, // -OOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xf0, 0x00, 0x01, 0xe0, // OOOO-------------------OOOO---..
|
||||
0xe6, 0x33, 0x81, 0xf0, // OOO--OO---OO--OOO------OOOOO--..
|
||||
0xe7, 0x7b, 0x81, 0xf8, // OOO--OOO-OOOO-OOO------OOOOOO-..
|
||||
0xe7, 0x7b, 0x81, 0xfc, // OOO--OOO-OOOO-OOO------OOOOOOO..
|
||||
0xe7, 0x7b, 0x81, 0xfc, // OOO--OOO-OOOO-OOO------OOOOOOO..
|
||||
0xe7, 0x7b, 0x81, 0xfc, // OOO--OOO-OOOO-OOO------OOOOOOO..
|
||||
0xe7, 0x7b, 0x81, 0xfc, // OOO--OOO-OOOO-OOO------OOOOOOO..
|
||||
0xe7, 0x7b, 0x81, 0xfc, // OOO--OOO-OOOO-OOO------OOOOOOO..
|
||||
0xe7, 0x7b, 0x81, 0xfc, // OOO--OOO-OOOO-OOO------OOOOOOO..
|
||||
0xe7, 0x7b, 0x81, 0xf8, // OOO--OOO-OOOO-OOO------OOOOOO-..
|
||||
0xe6, 0x33, 0x81, 0xf0, // OOO--OO---OO--OOO------OOOOO--..
|
||||
0xe0, 0x00, 0x01, 0xe0, // OOO--------------------OOOO---..
|
||||
0xf0, 0x00, 0x01, 0xc0, // OOOO-------------------OOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x7f, 0xff, 0xff, 0x80, // -OOOOOOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 117, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x7f, 0xff, 0xff, 0xc0, // -OOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xf0, 0x00, 0x01, 0xe0, // OOOO-------------------OOOO---..
|
||||
0xe6, 0x33, 0x9d, 0xf0, // OOO--OO---OO--OOO--OOO-OOOOO--..
|
||||
0xe7, 0x7b, 0x9d, 0xf8, // OOO--OOO-OOOO-OOO--OOO-OOOOOO-..
|
||||
0xe7, 0x7b, 0x9d, 0xfc, // OOO--OOO-OOOO-OOO--OOO-OOOOOOO..
|
||||
0xe7, 0x7b, 0x9d, 0xfc, // OOO--OOO-OOOO-OOO--OOO-OOOOOOO..
|
||||
0xe7, 0x7b, 0x9d, 0xfc, // OOO--OOO-OOOO-OOO--OOO-OOOOOOO..
|
||||
0xe7, 0x7b, 0x9d, 0xfc, // OOO--OOO-OOOO-OOO--OOO-OOOOOOO..
|
||||
0xe7, 0x7b, 0x9d, 0xfc, // OOO--OOO-OOOO-OOO--OOO-OOOOOOO..
|
||||
0xe7, 0x7b, 0x9d, 0xfc, // OOO--OOO-OOOO-OOO--OOO-OOOOOOO..
|
||||
0xe7, 0x7b, 0x9d, 0xf8, // OOO--OOO-OOOO-OOO--OOO-OOOOOO-..
|
||||
0xe6, 0x33, 0x99, 0xf0, // OOO--OO---OO--OOO--OO--OOOOO--..
|
||||
0xe0, 0x00, 0x01, 0xe0, // OOO--------------------OOOO---..
|
||||
0xf0, 0x00, 0x01, 0xc0, // OOOO-------------------OOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x7f, 0xff, 0xff, 0x80, // -OOOOOOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 118, char width: 30
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x7f, 0xff, 0xff, 0xc0, // -OOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0xf0, 0x00, 0x01, 0xe0, // OOOO-------------------OOOO---..
|
||||
0xe7, 0xff, 0xfd, 0xf0, // OOO--OOOOOOOOOOOOOOOOO-OOOOO--..
|
||||
0xe7, 0xff, 0xfd, 0xf8, // OOO--OOOOOOOOOOOOOOOOO-OOOOOO-..
|
||||
0xe7, 0xf7, 0xfd, 0xfc, // OOO--OOOOOOO-OOOOOOOOO-OOOOOOO..
|
||||
0xe7, 0xe3, 0xfd, 0xfc, // OOO--OOOOOO---OOOOOOOO-OOOOOOO..
|
||||
0xe7, 0xc3, 0xfd, 0xfc, // OOO--OOOOO----OOOOOOOO-OOOOOOO..
|
||||
0xe7, 0x70, 0x7d, 0xfc, // OOO--OOO-OOO-----OOOOO-OOOOOOO..
|
||||
0xe7, 0xf8, 0xfd, 0xfc, // OOO--OOOOOOOO---OOOOOO-OOOOOOO..
|
||||
0xe7, 0xff, 0xfd, 0xfc, // OOO--OOOOOOOOOOOOOOOOO-OOOOOOO..
|
||||
0xe7, 0xff, 0xfd, 0xf8, // OOO--OOOOOOOOOOOOOOOOO-OOOOOO-..
|
||||
0xe7, 0xff, 0xfd, 0xf0, // OOO--OOOOOOOOOOOOOOOOO-OOOOO--..
|
||||
0xe0, 0x00, 0x01, 0xe0, // OOO--------------------OOOO---..
|
||||
0xf0, 0x00, 0x01, 0xc0, // OOOO-------------------OOO----..
|
||||
0xff, 0xff, 0xff, 0xc0, // OOOOOOOOOOOOOOOOOOOOOOOOOO----..
|
||||
0x7f, 0xff, 0xff, 0x80, // -OOOOOOOOOOOOOOOOOOOOOOOO-----..
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
0x00, 0x00, 0x00, 0x00, // ------------------------------..
|
||||
|
||||
// ASCII: 119, char width: 30
|
||||
0x00, 0x7f, 0xf8, 0x00, // ---------OOOOOOOOOOOO---------..
|
||||
0x01, 0xf0, 0x3e, 0x00, // -------OOOOO------OOOOO-------..
|
||||
0x07, 0xc0, 0x0f, 0x80, // -----OOOOO----------OOOOO-----..
|
||||
0x0f, 0xc0, 0x0f, 0xc0, // ----OOOOOO----------OOOOOO----..
|
||||
0x1f, 0xe0, 0x1f, 0xe0, // ---OOOOOOOO--------OOOOOOOO---..
|
||||
0x1f, 0xe0, 0x1f, 0xe0, // ---OOOOOOOO--------OOOOOOOO---..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x7f, 0xf0, 0x7f, 0xf8, // -OOOOOOOOOOO-----OOOOOOOOOOOO-..
|
||||
0x67, 0xe0, 0x1f, 0x98, // -OO--OOOOOO--------OOOOOO--OO-..
|
||||
0xe3, 0xc0, 0x0f, 0x1c, // OOO---OOOO----------OOOO---OOO..
|
||||
0xe1, 0x80, 0x06, 0x1c, // OOO----OO------------OO----OOO..
|
||||
0xc1, 0x80, 0x06, 0x0c, // OO-----OO------------OO-----OO..
|
||||
0xc3, 0x80, 0x07, 0x0c, // OO----OOO------------OOO----OO..
|
||||
0xc3, 0x80, 0x07, 0x0c, // OO----OOO------------OOO----OO..
|
||||
0xc3, 0x80, 0x07, 0x0c, // OO----OOO------------OOO----OO..
|
||||
0xc1, 0x80, 0x06, 0x0c, // OO-----OO------------OO-----OO..
|
||||
0xe1, 0x80, 0x06, 0x1c, // OOO----OO------------OO----OOO..
|
||||
0xe3, 0xc0, 0x0f, 0x1c, // OOO---OOOO----------OOOO---OOO..
|
||||
0x67, 0xe0, 0x1f, 0x98, // -OO--OOOOOO--------OOOOOO--OO-..
|
||||
0x7f, 0xf8, 0x7f, 0xf8, // -OOOOOOOOOOOO----OOOOOOOOOOOO-..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x3f, 0xff, 0xff, 0xf0, // --OOOOOOOOOOOOOOOOOOOOOOOOOO--..
|
||||
0x1f, 0xe0, 0x1f, 0xe0, // ---OOOOOOOO--------OOOOOOOO---..
|
||||
0x1f, 0xe0, 0x1f, 0xe0, // ---OOOOOOOO--------OOOOOOOO---..
|
||||
0x0f, 0xc0, 0x0f, 0xc0, // ----OOOOOO----------OOOOOO----..
|
||||
0x07, 0xc0, 0x07, 0x80, // -----OOOOO-----------OOOO-----..
|
||||
0x01, 0xf0, 0x3e, 0x00, // -------OOOOO------OOOOO-------..
|
||||
0x00, 0x7f, 0xf8, 0x00, // ---------OOOOOOOOOOOO---------..
|
||||
0x00, 0x1f, 0xe0, 0x00, // -----------OOOOOOOO-----------..
|
||||
|
||||
// ASCII: 120, char width: 26
|
||||
0x00, 0x1e, 0x00, 0x00, // -----------OOOO-----------......
|
||||
0x00, 0x1e, 0x00, 0x00, // -----------OOOO-----------......
|
||||
0x00, 0x1e, 0x00, 0x00, // -----------OOOO-----------......
|
||||
0x00, 0x1e, 0x00, 0x00, // -----------OOOO-----------......
|
||||
0x07, 0x1e, 0x38, 0x00, // -----OOO---OOOO---OOO-----......
|
||||
0x0f, 0x9e, 0x7c, 0x00, // ----OOOOO--OOOO--OOOOO----......
|
||||
0x1f, 0x9e, 0x7e, 0x00, // ---OOOOOO--OOOO--OOOOOO---......
|
||||
0x3f, 0x1e, 0x3f, 0x00, // --OOOOOO---OOOO---OOOOOO--......
|
||||
0x7e, 0x1e, 0x1f, 0x00, // -OOOOOO----OOOO----OOOOO--......
|
||||
0x7c, 0x1e, 0x0f, 0x80, // -OOOOO-----OOOO-----OOOOO-......
|
||||
0x78, 0x1e, 0x0f, 0x80, // -OOOO------OOOO-----OOOOO-......
|
||||
0xf8, 0x1e, 0x07, 0x80, // OOOOO------OOOO------OOOO-......
|
||||
0xf8, 0x1e, 0x07, 0xc0, // OOOOO------OOOO------OOOOO......
|
||||
0xf0, 0x1c, 0x07, 0xc0, // OOOO-------OOO-------OOOOO......
|
||||
0xf0, 0x00, 0x07, 0xc0, // OOOO-----------------OOOOO......
|
||||
0xf0, 0x00, 0x07, 0xc0, // OOOO-----------------OOOOO......
|
||||
0xf8, 0x00, 0x07, 0xc0, // OOOOO----------------OOOOO......
|
||||
0xf8, 0x00, 0x07, 0x80, // OOOOO----------------OOOO-......
|
||||
0x78, 0x00, 0x0f, 0x80, // -OOOO---------------OOOOO-......
|
||||
0x7c, 0x00, 0x0f, 0x80, // -OOOOO--------------OOOOO-......
|
||||
0x3e, 0x00, 0x1f, 0x00, // --OOOOO------------OOOOO--......
|
||||
0x3f, 0x00, 0x3f, 0x00, // --OOOOOO----------OOOOOO--......
|
||||
0x1f, 0xc0, 0xfe, 0x00, // ---OOOOOOO------OOOOOOO---......
|
||||
0x0f, 0xff, 0xfc, 0x00, // ----OOOOOOOOOOOOOOOOOO----......
|
||||
0x07, 0xff, 0xf8, 0x00, // -----OOOOOOOOOOOOOOOO-----......
|
||||
0x01, 0xff, 0xe0, 0x00, // -------OOOOOOOOOOOO-------......
|
||||
0x00, 0x7f, 0x80, 0x00, // ---------OOOOOOOO---------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
|
||||
// ASCII: 121, char width: 26
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x3e, 0x00, 0x00, // ----------OOOOO-----------......
|
||||
0x00, 0x3f, 0x00, 0x00, // ----------OOOOOO----------......
|
||||
0x06, 0x3f, 0x18, 0x00, // -----OO---OOOOOO---OO-----......
|
||||
0x0f, 0x3f, 0x3c, 0x00, // ----OOOO--OOOOOO--OOOO----......
|
||||
0x1f, 0xff, 0xfe, 0x00, // ---OOOOOOOOOOOOOOOOOOOO---......
|
||||
0x3f, 0xff, 0xfe, 0x00, // --OOOOOOOOOOOOOOOOOOOOO---......
|
||||
0x1f, 0xff, 0xfe, 0x00, // ---OOOOOOOOOOOOOOOOOOOO---......
|
||||
0x1f, 0xff, 0xfc, 0x00, // ---OOOOOOOOOOOOOOOOOOO----......
|
||||
0x0f, 0xff, 0xfc, 0x00, // ----OOOOOOOOOOOOOOOOOO----......
|
||||
0x0f, 0xe1, 0xfc, 0x00, // ----OOOOOOO----OOOOOOO----......
|
||||
0x3f, 0xc0, 0xff, 0x00, // --OOOOOOOO------OOOOOOOO--......
|
||||
0xff, 0x80, 0x7f, 0xc0, // OOOOOOOOO--------OOOOOOOOO......
|
||||
0xff, 0x80, 0x7f, 0xc0, // OOOOOOOOO--------OOOOOOOOO......
|
||||
0xff, 0x80, 0x7f, 0xc0, // OOOOOOOOO--------OOOOOOOOO......
|
||||
0xff, 0x80, 0x7f, 0xc0, // OOOOOOOOO--------OOOOOOOOO......
|
||||
0x7f, 0xc0, 0xff, 0x00, // -OOOOOOOOO------OOOOOOOO--......
|
||||
0x0f, 0xe1, 0xfc, 0x00, // ----OOOOOOO----OOOOOOO----......
|
||||
0x0f, 0xff, 0xfc, 0x00, // ----OOOOOOOOOOOOOOOOOO----......
|
||||
0x1f, 0xff, 0xfc, 0x00, // ---OOOOOOOOOOOOOOOOOOO----......
|
||||
0x1f, 0xff, 0xfe, 0x00, // ---OOOOOOOOOOOOOOOOOOOO---......
|
||||
0x3f, 0xff, 0xff, 0x00, // --OOOOOOOOOOOOOOOOOOOOOO--......
|
||||
0x1f, 0xff, 0xfe, 0x00, // ---OOOOOOOOOOOOOOOOOOOO---......
|
||||
0x0f, 0x3f, 0x3c, 0x00, // ----OOOO--OOOOOO--OOOO----......
|
||||
0x06, 0x3f, 0x18, 0x00, // -----OO---OOOOOO---OO-----......
|
||||
0x00, 0x3f, 0x00, 0x00, // ----------OOOOOO----------......
|
||||
0x00, 0x3e, 0x00, 0x00, // ----------OOOOO-----------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------......
|
||||
|
||||
// ASCII: 122, char width: 34
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x0f, 0xfc, 0x00, // ------------OOOOOOOOOO----------
|
||||
0x00, 0xff, 0xff, 0xc0, // --------OOOOOOOOOOOOOOOOOO------
|
||||
0x03, 0xff, 0xff, 0xf0, // ------OOOOOOOOOOOOOOOOOOOOOO----
|
||||
0x0f, 0xff, 0xff, 0xfc, // ----OOOOOOOOOOOOOOOOOOOOOOOOOO--
|
||||
0x1f, 0xf8, 0x03, 0xff, // ---OOOOOOOOOO---------OOOOOOOOOO
|
||||
0x7f, 0xc0, 0x00, 0x7f, // -OOOOOOOOO---------------OOOOOOO
|
||||
0x7f, 0x07, 0xf8, 0x1f, // -OOOOOOO-----OOOOOOOO------OOOOO
|
||||
0x7c, 0x3f, 0xff, 0x0f, // -OOOOO----OOOOOOOOOOOOOO----OOOO
|
||||
0x18, 0xff, 0xff, 0xc3, // ---OO---OOOOOOOOOOOOOOOOOO----OO
|
||||
0x01, 0xff, 0xff, 0xe0, // -------OOOOOOOOOOOOOOOOOOOO-----
|
||||
0x03, 0xfc, 0x0f, 0xf8, // ------OOOOOOOO------OOOOOOOOO---
|
||||
0x07, 0xf0, 0x03, 0xf8, // -----OOOOOOO----------OOOOOOO---
|
||||
0x03, 0xc0, 0x00, 0xf0, // ------OOOO--------------OOOO----
|
||||
0x01, 0x83, 0xf0, 0x60, // -------OO-----OOOOOO-----OO-----
|
||||
0x00, 0x1f, 0xfe, 0x00, // -----------OOOOOOOOOOOO---------
|
||||
0x00, 0x3f, 0xff, 0x80, // ----------OOOOOOOOOOOOOOO-------
|
||||
0x00, 0x3f, 0xff, 0x00, // ----------OOOOOOOOOOOOOO--------
|
||||
0x00, 0x1e, 0x0e, 0x00, // -----------OOOO-----OOO---------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x01, 0xe0, 0x00, // ---------------OOOO-------------
|
||||
0x00, 0x03, 0xf0, 0x00, // --------------OOOOOO------------
|
||||
0x00, 0x01, 0xe0, 0x00, // ---------------OOOO-------------
|
||||
0x00, 0x00, 0xc0, 0x00, // ----------------OO--------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
0x00, 0x00, 0x00, 0x00, // --------------------------------
|
||||
};
|
||||
|
||||
static const uint8_t symbol_30_widths[26] =
|
||||
{
|
||||
30, 26, 32, 24, 26, 26, 30, 24,
|
||||
30, 21, 21, 30, 17, 17, 24, 30,
|
||||
24, 30, 30, 30, 30, 30, 30, 26,
|
||||
26, 34,
|
||||
};
|
||||
|
||||
static const font_t symbol_30_dsc =
|
||||
{
|
||||
26, // Letter count
|
||||
97, // First ascii code
|
||||
4, // Letters width (bytes)
|
||||
30, // Letters height (row)
|
||||
0, // Fixed width or 0 if variable
|
||||
symbol_30_widths,
|
||||
symbol_30_bitmaps
|
||||
};
|
||||
|
||||
const font_t * symbol_30_get_dsc(void)
|
||||
{
|
||||
return &symbol_30_dsc;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
@ -1,16 +0,0 @@
|
||||
#ifndef SYMBOL_30_H
|
||||
#define SYMBOL_30_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_SYMBOL_30 != 0
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
const font_t * symbol_30_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -1,16 +0,0 @@
|
||||
#ifndef SYMBOL_60_H
|
||||
#define SYMBOL_60_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_SYMBOL_60 != 0
|
||||
|
||||
#include <stdint.h>
|
||||
#include "../font.h"
|
||||
|
||||
const font_t * symbol_60_get_dsc(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
@ -1,39 +0,0 @@
|
||||
#ifndef SYMBOL_DEF_H
|
||||
#define SYMBOL_DEF_H
|
||||
|
||||
/*Use ISO8859-1 encoding in the IDE*/
|
||||
|
||||
#include "lv_conf.h"
|
||||
#if USE_FONT_SYMBOL_30 != 0 || USE_FONT_SYMBOL_60 != 0
|
||||
|
||||
|
||||
#define SYMBOL_DRIVE "a"
|
||||
#define SYMBOL_FILE "b"
|
||||
#define SYMBOL_FOLDER "c"
|
||||
#define SYMBOL_DELETE "d"
|
||||
#define SYMBOL_SAVE "e"
|
||||
#define SYMBOL_EDIT "f"
|
||||
#define SYMBOL_OK "g"
|
||||
#define SYMBOL_CLOSE "h"
|
||||
#define SYMBOL_DOWN "i"
|
||||
#define SYMBOL_LEFT "j"
|
||||
#define SYMBOL_RIGHT "k"
|
||||
#define SYMBOL_UP "l"
|
||||
#define SYMBOL_BT "m"
|
||||
#define SYMBOL_THERM "n"
|
||||
#define SYMBOL_GPS "o"
|
||||
#define SYMBOL_WARN "p"
|
||||
#define SYMBOL_INFO "q"
|
||||
#define SYMBOL_BATT1 "r"
|
||||
#define SYMBOL_BATT2 "s"
|
||||
#define SYMBOL_BATT3 "t"
|
||||
#define SYMBOL_BATT4 "u"
|
||||
#define SYMBOL_BATTCH "v"
|
||||
#define SYMBOL_HELP "w"
|
||||
#define SYMBOL_POWER "x"
|
||||
#define SYMBOL_SETUP "y"
|
||||
#define SYMBOL_WIFI "z"
|
||||
|
||||
#endif
|
||||
|
||||
#endif /*SYMBOL_DEF_H*/
|
265
lv_misc/text.c
265
lv_misc/text.c
@ -1,265 +0,0 @@
|
||||
/**
|
||||
* @file font.c
|
||||
*
|
||||
*/
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
#include "text.h"
|
||||
#include "misc/math/math_base.h"
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
#define TXT_NO_BREAK_FOUND UINT16_MAX
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* STATIC PROTOTYPES
|
||||
**********************/
|
||||
static bool txt_is_break_char(char letter);
|
||||
|
||||
/**********************
|
||||
* STATIC VARIABLES
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
/**********************
|
||||
* GLOBAL FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Get size of a text
|
||||
* @param size_res pointer to a 'point_t' variable to store the result
|
||||
* @param text pointer to a text
|
||||
* @param font pinter to font of the text
|
||||
* @param letter_space letter space of the text
|
||||
* @param line_space line space of the text
|
||||
* @param flags settings for the text from 'txt_flag_t' enum
|
||||
* @param max_width max with of the text (break the lines to fit this size) Set LV_CORD_MAX to avoid line breaks
|
||||
*/
|
||||
void txt_get_size(point_t * size_res, const char * text, const font_t * font,
|
||||
uint16_t letter_space, uint16_t line_space, cord_t max_width, txt_flag_t flag)
|
||||
{
|
||||
size_res->x = 0;
|
||||
size_res->y = 0;
|
||||
|
||||
if(text == NULL) return;
|
||||
if(font == NULL) return;
|
||||
|
||||
uint32_t line_start = 0;
|
||||
uint32_t new_line_start = 0;
|
||||
cord_t act_line_length;
|
||||
uint8_t letter_height = font_get_height(font) >> LV_FONT_ANTIALIAS;
|
||||
|
||||
/*Calc. the height and longest line*/
|
||||
while (text[line_start] != '\0')
|
||||
{
|
||||
new_line_start += txt_get_next_line(&text[line_start], font, letter_space, max_width, flag);
|
||||
size_res->y += letter_height ;
|
||||
size_res->y += line_space;
|
||||
|
||||
/*Calculate the the longest line*/
|
||||
act_line_length = txt_get_width(&text[line_start], new_line_start - line_start,
|
||||
font, letter_space, flag);
|
||||
|
||||
size_res->x = MATH_MAX(act_line_length, size_res->x);
|
||||
line_start = new_line_start;
|
||||
}
|
||||
|
||||
if(line_start != 0 && (text[line_start - 1] == '\n' || text[line_start - 1] == '\r')) {
|
||||
size_res->y += letter_height + line_space;
|
||||
}
|
||||
|
||||
/*Correction with the last line space or set the height manually if the text is empty*/
|
||||
if(size_res->y == 0) size_res->y = letter_height;
|
||||
else size_res->y -= line_space;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the next line of text. Check line length and break chars too.
|
||||
* @param txt a '\0' terminated string
|
||||
* @param font pointer to a font
|
||||
* @param letter_space letter space
|
||||
* @param max_l max line length
|
||||
* @param flags settings for the text from 'txt_flag_type' enum
|
||||
* @return the index of the first char of the new line
|
||||
*/
|
||||
uint16_t txt_get_next_line(const char * txt, const font_t * font,
|
||||
uint16_t letter_space, cord_t max_l, txt_flag_t flag)
|
||||
{
|
||||
if(txt == NULL) return 0;
|
||||
if(font == NULL) return 0;
|
||||
|
||||
uint32_t i = 0;
|
||||
cord_t act_l = 0;
|
||||
uint16_t last_break = TXT_NO_BREAK_FOUND;
|
||||
txt_cmd_state_t cmd_state = TXT_CMD_STATE_WAIT;
|
||||
|
||||
while(txt[i] != '\0') {
|
||||
|
||||
/*Handle the recolor command*/
|
||||
if((flag & TXT_FLAG_RECOLOR) != 0) {
|
||||
if(txt_is_cmd(&cmd_state, txt[i]) != false) {
|
||||
i++; /*Skip the letter is it is part of a command*/
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
/*Check for new line chars*/
|
||||
if(txt[i] == '\n' || txt[i] == '\r') {
|
||||
/*Handle \n\r and \r\n as well*/
|
||||
if(txt[i] == '\n' && txt[i + 1] == '\r') {
|
||||
i++;
|
||||
} else if(txt[i] == '\r' && txt[i + 1] == '\n') {
|
||||
i++;
|
||||
}
|
||||
return i+1; /*Return with the first letter of the next line*/
|
||||
|
||||
} else { /*Check the actual length*/
|
||||
act_l += font_get_width(font, txt[i]) >> LV_FONT_ANTIALIAS;
|
||||
|
||||
/*If the txt is too long then finish, this is the line end*/
|
||||
if(act_l > max_l) {
|
||||
/*If already a break character is found, then break there*/
|
||||
if(last_break != TXT_NO_BREAK_FOUND && txt_is_break_char(txt[i]) == false) {
|
||||
i = last_break;
|
||||
}
|
||||
|
||||
while(txt[i] == ' ') i++;
|
||||
|
||||
/* Do not let to return without doing nothing.
|
||||
* Find at least one character */
|
||||
if(i == 0) i++;
|
||||
|
||||
return i;
|
||||
}
|
||||
/*If this char still can fit to this line then check if
|
||||
* txt can be broken here later */
|
||||
else if(txt_is_break_char(txt[i])) {
|
||||
last_break = i;
|
||||
last_break++;/*Go to the next char, the break char stays in this line*/
|
||||
}
|
||||
}
|
||||
|
||||
act_l += letter_space;
|
||||
i++;
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
|
||||
/**
|
||||
* Give the length of a text with a given font
|
||||
* @param txt a '\0' terminate string
|
||||
* @param char_num number of characters in 'txt'
|
||||
* @param font pointer to a font
|
||||
* @param letter_space letter space
|
||||
* @param flags settings for the text from 'txt_flag_t' enum
|
||||
* @return length of a char_num long text
|
||||
*/
|
||||
cord_t txt_get_width(const char * txt, uint16_t char_num,
|
||||
const font_t * font, uint16_t letter_space, txt_flag_t flag)
|
||||
{
|
||||
if(txt == NULL) return 0;
|
||||
if(font == NULL) return 0;
|
||||
|
||||
uint16_t i;
|
||||
cord_t len = 0;
|
||||
txt_cmd_state_t cmd_state = TXT_CMD_STATE_WAIT;
|
||||
|
||||
if(char_num != 0) {
|
||||
for(i = 0; i < char_num; i++) {
|
||||
if((flag & TXT_FLAG_RECOLOR) != 0) {
|
||||
if(txt_is_cmd(&cmd_state, txt[i]) != false) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
len += font_get_width(font, txt[i]) >> LV_FONT_ANTIALIAS;
|
||||
len += letter_space;
|
||||
}
|
||||
|
||||
/*Trim closing spaces */
|
||||
for(i = char_num - 1; i > 0; i--) {
|
||||
if(txt[i] == ' ') {
|
||||
len -= font_get_width(font, txt[i]) >> LV_FONT_ANTIALIAS;
|
||||
len -= letter_space;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/*Correct the last letter space,
|
||||
* because thee is no letter space after the last char*/
|
||||
len -= letter_space;
|
||||
}
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check next character in a string and decide if te character is part of the command or not
|
||||
* @param state pointer to a txt_cmd_state_t variable which stores the current state of command processing
|
||||
* @param c the current character
|
||||
* @return true: the character is part of a command and should not be written,
|
||||
* false: the character should be written
|
||||
*/
|
||||
bool txt_is_cmd(txt_cmd_state_t * state, char c)
|
||||
{
|
||||
bool ret = false;
|
||||
|
||||
if(c == TXT_RECOLOR_CMD) {
|
||||
if(*state == TXT_CMD_STATE_WAIT) { /*Start char*/
|
||||
*state = TXT_CMD_STATE_PAR;
|
||||
ret = true;
|
||||
} else if(*state == TXT_CMD_STATE_PAR) { /*Other start char in parameter is escaped cmd. char */
|
||||
*state = TXT_CMD_STATE_WAIT;
|
||||
}else if(*state == TXT_CMD_STATE_IN) { /*Command end */
|
||||
*state = TXT_CMD_STATE_WAIT;
|
||||
ret = true;
|
||||
}
|
||||
}
|
||||
|
||||
/*Skip the color parameter and wait the space after it*/
|
||||
if(*state == TXT_CMD_STATE_PAR) {
|
||||
if(c == ' ') {
|
||||
*state = TXT_CMD_STATE_IN; /*After the parameter the text is in the command*/
|
||||
}
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**********************
|
||||
* STATIC FUNCTIONS
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Test if char is break char or not (a text can broken here or not)
|
||||
* @param letter a letter
|
||||
* @return false: 'letter' is not break char
|
||||
*/
|
||||
static bool txt_is_break_char(char letter)
|
||||
{
|
||||
uint8_t i;
|
||||
bool ret = false;
|
||||
|
||||
/*Compare the letter to TXT_BREAK_CHARS*/
|
||||
for(i = 0; LV_TXT_BREAK_CHARS[i] != '\0'; i++) {
|
||||
if(letter == LV_TXT_BREAK_CHARS[i]) {
|
||||
ret = true; /*If match then it is break char*/
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
@ -1,94 +0,0 @@
|
||||
/**
|
||||
* @file text.h
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef TEXT_H
|
||||
#define TEXT_H
|
||||
|
||||
/*********************
|
||||
* INCLUDES
|
||||
*********************/
|
||||
|
||||
#include <lvgl/lv_misc/area.h>
|
||||
#include <stdbool.h>
|
||||
#include "font.h"
|
||||
#include "area.h"
|
||||
|
||||
/*********************
|
||||
* DEFINES
|
||||
*********************/
|
||||
#define TXT_RECOLOR_CMD '#'
|
||||
|
||||
/**********************
|
||||
* TYPEDEFS
|
||||
**********************/
|
||||
typedef enum
|
||||
{
|
||||
TXT_FLAG_NONE = 0x00,
|
||||
TXT_FLAG_RECOLOR = 0x01,
|
||||
}txt_flag_t;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
TXT_CMD_STATE_WAIT,
|
||||
TXT_CMD_STATE_PAR,
|
||||
TXT_CMD_STATE_IN,
|
||||
}txt_cmd_state_t;
|
||||
|
||||
/**********************
|
||||
* GLOBAL PROTOTYPES
|
||||
**********************/
|
||||
|
||||
/**
|
||||
* Get size of a text
|
||||
* @param size_res pointer to a 'point_t' variable to store the result
|
||||
* @param text pointer to a text
|
||||
* @param font pinter to font of the text
|
||||
* @param letter_space letter space of the text
|
||||
* @param line_space line space of the text
|
||||
* @param flags settings for the text from 'txt_flag_t' enum
|
||||
* @param max_width max with of the text (break the lines to fit this size) Set LV_CORD_MAX to avoid line breaks
|
||||
*/
|
||||
void txt_get_size(point_t * size_res, const char * text, const font_t * font,
|
||||
uint16_t letter_space, uint16_t line_space, cord_t max_width, txt_flag_t flag);
|
||||
|
||||
/**
|
||||
* Get the next line of text. Check line length and break chars too.
|
||||
* @param txt a '\0' terminated string
|
||||
* @param font_p pointer to a font
|
||||
* @param letter_space letter space
|
||||
* @param max_l max line length
|
||||
* @param flags settings for the text from 'txt_flag_t' enum
|
||||
* @return the index of the first char of the new line
|
||||
*/
|
||||
uint16_t txt_get_next_line(const char * txt, const font_t * font_p,
|
||||
uint16_t letter_space, cord_t max_l, txt_flag_t flag);
|
||||
|
||||
/**
|
||||
* Give the length of a text with a given font
|
||||
* @param txt a '\0' terminate string
|
||||
* @param char_num number of characters in 'txt'
|
||||
* @param font_p pointer to a font
|
||||
* @param letter_space letter space
|
||||
* @param flags settings for the text from 'txt_flag_t' enum
|
||||
* @return length of a char_num long text
|
||||
*/
|
||||
cord_t txt_get_width(const char * txt, uint16_t char_num,
|
||||
const font_t * font_p, uint16_t letter_space, txt_flag_t flag);
|
||||
|
||||
/**
|
||||
* Check next character in a string and decide if te character is part of the command or not
|
||||
* @param state pointer to a txt_cmd_state_t variable which stores the current state of command processing
|
||||
* @param c the current character
|
||||
* @return true: the character is part of a command and should not be written,
|
||||
* false: the character should be written
|
||||
*/
|
||||
bool txt_is_cmd(txt_cmd_state_t * state, char c);
|
||||
|
||||
/**********************
|
||||
* MACROS
|
||||
**********************/
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user