한국어
오픈소스포럼
 이곳은 다양한 오픈소스 프로젝트를 소개하고 리뷰, 활용 방법을 공유합니다.

LVGL 프로젝트에 새 폰트를 추가하는 방법에는 세 가지가 있다.

  1. 가장 간단한 방법은 온라인 폰트 변환기를 사용하는 것이다. 매개 변수를 설정하고 변환 버튼을 클릭한 다음 생성된 C파일을 프로젝트에 복사하고 사용한다.
  2. 오프라인 폰트 변환기를 사용하여 TTF/WOFF/OTF 형식의 폰트를 임베디드 시스템에 적합한 형식으로 변환할 수 있다. (Node.js가 설치되어 있어야 함)
  3. 내장 폰트(Roboto 폰트 및 기호)의 크기 및 범위가 다른 것을 만들고 싶다면 lvgl/scripts/built_in_font 폴더에서 built_in_font_gen.py 스크립트를 사용할 수 있다.(Python 및 lv_font_conv를 설치해야 한다.)

파일에서 폰트를 선언하려면 LV_FONT_DECLARE(my_font_name)를 사용한다.

오프라인 변환기(lv_font_conv) 를 사용하여 NotoSansKR-Regular 한글 폰트를 LVGL 형식으로 생성하는 예는 다음과 같다.

bin 파일로 변환

lv_font_conv.cmd --font NotoSansKR-Regular.otf -r 0x020-0x07F,0xAC00-0xD7AF --size 28 --format bin --bpp 4 -o NotoSansKR-Regular_28.bin

또는 C파일로 변환

lv_font_conv.cmd --font NotoSansKR-Regular.otf -r 0x020-0x07F,0xAC00-0xD7AF --size 28 --format lvgl --bpp 4 -o NotoSansKR_Regular_28.c

bpp(픽셀당 비트 수)값이 높을수록 글자가 더 부드러워진다.(anti-aliased)

그 다음 폰트를 전역적으로 사용할 수 있게 하기위해(내장 폰트와 같이) 폰트를 lv_conf.h의 LV_FONT_CUSTOM_DECLARE에 추가한다.

#define LV_FONT_CUSTOM_DECLARE LV_FONT_DECLARE(NotoSansKR_Regular_28)

 

스타일에서 NotoSansKR_Regular_28 폰트로 설정한다.

lvgl.png

번호 제목 글쓴이 날짜 조회 수
35 openFrameworks 한글 폰트 설정 및 출력하기 file makersweb 2023.02.19 198
34 Flutter 위젯의 상태관리에 대해서 file makersweb 2023.04.06 450
33 OTA 오픈소스 프로젝트 makersweb 2022.08.03 471
32 도커(docker)설치 및 기본 명령어 makersweb 2019.12.02 482
31 CopperSpice 에 대해서 (C++ Gui 라이브러리) file makersweb 2022.01.02 537
30 라즈베리파이4에서 openFrameworks 예제 실행 file makersweb 2020.12.13 559
29 Windows에서 Qt Creator + CMake + vcpkg 로 C++ 개발환경 구성 (POCO 라이브러리 DirectoryWatcher 예제) file makersweb 2023.01.14 666
28 라즈베리파이에서 Redis의 Pub/Sub 패턴을 사용하는 Electron 응용프로그램 file makersweb 2021.01.31 681
27 Chromium과 Ozone 층 file makersweb 2022.03.03 728
26 윈도우에서 안드로이드 flutter 프로그래밍 개발환경 구축(with Visual Studio Code) file makersweb 2020.09.16 794
25 ZeroMQ 를 이용한 Qt 응용프로그램 간 통신 file makersweb 2021.08.28 831
24 VSCode 와 Qbs 플러그인으로 C/C++ 개발환경 구성 file makersweb 2021.09.12 846
23 NAppGUI, C언어용 크로스 플랫폼 GUI 라이브러리 file makersweb 2022.10.10 861
22 Protocol Buffers 를 이용한 직렬화 with Conan Package Manager file makersweb 2021.02.24 861
21 C++를 위한 Lottie 라이브러리 with SDL2 file makersweb 2021.08.15 962
» LVGL 을 통해 GUI 구현 시 한글 폰트 추가 file makersweb 2023.02.07 1080
19 [NodeGui] JavaScript로 데스크탑 응용프로그램 작성 file makersweb 2023.02.21 1083
18 Qt와 GStreamer 로 작성한 flac 오디오 재생 예제 file makersweb 2020.09.05 1139
17 Flutter/Dart 와 Qt/QML 비교 file makersweb 2021.11.07 1401
16 CANdevStudio 를 사용하여 CAN 네트워크 시뮬레이션 file makersweb 2021.03.09 1695