
MCU-Renderer는 MCU의 C-Language 그래픽 라이브러리로, 단색 및 컬러 LCD 디스플레이 모두에서 자원 사용이 적은 비 흐르지 않는 방지 텍스트를 렌더링하는 데 중점을 둡니다.
MCU- 렌더러 사용을 시작하려면 적절한 헤더 파일을 포함하십시오.
라이브러리를 초기화하려면 해당 mr_xxx_init() 함수를 호출하십시오. 디스플레이가 처음에 꺼져서 첫 번째 화면 업데이트 전에 그릴 수 있습니다. 디스플레이를 켜려면 mr_xxx_set_display() 호출하십시오. 색상 LCD 화면에서는 mr_xxx_set_sleep() 사용하여 수면 모드도 비활성화해야합니다.
다음으로 글꼴을 설정하십시오. 준비 글꼴 섹션에서 설명하는 것처럼 글꼴 폴더에서 사용 가능한 글꼴을 사용하거나 직접 준비 할 수 있습니다.
그 후, 겹치지 않는 사각형으로 구성된 화면 레이아웃을 설정하십시오. 화면을 업데이트 할 때는 깜박임이 피할 수 있습니다.
채워진 사각형을 그려 보려면 mr_set_fill_color() 에게 전화하여 채우기 색상을 설정하고 실제 도면에 대한 mr_draw_rectangle() 설정하십시오. mr_get_color 매크로를 사용하여 웹 색상 (예 : #FF2020)을 MCU 렌더러 색상으로 변환 할 수 있습니다.
사용자가 제공 한 uint8_t FrameBuffer에서 비트 맵을 그려 보려면 mr_set_stroke_color() 통해 전경 색상을 설정하려면 mr_set_fill_color() 설정하여 배경색을 설정하고 mr_draw_bitmap() 설정하여 비트 맵을 그리십시오.
사용자가 제공하는 RGB565 Framebuffer에서 이미지를 그려 보려면 mr_draw_image() 호출하십시오.
텍스트 사각형을 그리려면 mr_set_font() 에게 전화를 걸어 글꼴, mr_set_fill_color() 를 설정하여 배경색, mr_set_stroke_color() 를 설정하여 텍스트 색상을 설정하고 mr_draw_text() , mr_draw_text_utf8() 및 mr_draw_text_utf16() 각각 C-Strings, UTF-N6 (Mr_draw_Text_utf16). offset 매개 변수는 드로잉 사각형 내 텍스트의 왼쪽 상단 모서리를 지정합니다. 수평 텍스트 중앙을 중앙으로 mr_get_text_width() , mr_get_text_utf8_width() 및 mr_get_text_utf16_width() functions; 수직으로 텍스트를 중심으로 mr_get_cap_height() (대문자 높이 A), mr_get_ascent() (기준선 최상위), mr_get_descent() (라인의베이스 라인) 및 mr_get_line_height() (라인의 높이)로 현재 글꼴의 메트릭을 가져옵니다. 메트릭을 검색하기 전에 글꼴을 설정해야합니다.
사각형 경계는 디스플레이 크기를 초과 할 수 없습니다. 텍스트 그리기 기능의 offset 매개 변수는 제한되지 않습니다.
단색 디스플레이 및 SDL에는 화면 새로 고침이 필요합니다. 화면을 새로 고치려면 그리기를 마친 후 mr_xxx_refresh_screen() 문의하십시오.
예제 폴더를 참조하십시오.
(ASCII 문자 0x20-0x7e)
(바이트 크기)
| 세례반 | 로봇 12 px | 로봇 24 px | 로봇 48 PX | 로봇 72 PX |
|---|---|---|---|---|
| adafruit_gfx/tft_espi (1 bpp) | 3832 | 14589 | 56677 | 129389 |
| U8G2 (1 bpp) | 1508 | 3039 | 6632 | N/A |
| MCU- 렌더러 1 BPP | 1473 | 2891 | 5902 | 9511 |
| MCU- 렌더러 2 BPP | 2052 | 4162 | 8743 | 13969 |
| MCU- 렌더러 3 BPP | 2695 | 5677 | 12128 | 18701 |
| MCU- 렌더러 4 BPP | 3328 | 7329 | 15533 | 23676 |
| McUfont (4 bpp) | 3125 | 6296 | 12969 | 20045 |
| tft_espi (VLW) | 7642 | 19387 | 65833 | 143333 |
글꼴을 MCU- 렌더러 형식으로 변환하려면 fontconv 도구 (릴리스에서 이진 형태로 제공)를 사용하여 .bdf 및 .pcf 비트 맵 폰트와 .ttf , .ttc , .otf , .otc 및 .woff 벡터 폰트를 모두 변환 할 수 있습니다.
디지털 타이포그래피에서 72 점은 일반적으로 96 픽셀로 정의됩니다. 벡터 글꼴을 주어진 픽셀 크기로 래스터 화하려면 4/3의 계수를 곱하여 픽셀 크기를 점 크기로 변환하십시오. 모든 글꼴 이이 규칙을 따르는 것은 아니므 로이 요소를 조정해야 할 수도 있습니다.
fontconv 캡 높이 (대문자 a의 높이)를 상승 높이 (선에서 기준선에서 기준선 상단)와 하강 높이 (기준선에서 라인 하단)의 차이로 계산합니다. 일부 글꼴 에서이 계산은 부정확하므로 캡 높이를 무시하여 올바른 결과를 얻을 수 있습니다. 상승 높이와 하강 높이를 무시할 수도 있습니다.