「App:Library:LVGL:docs:3rd party libraries:BMP decoder」の版間の差分

提供: robot-jp wiki
ナビゲーションに移動検索に移動
 
(同じ利用者による、間の4版が非表示)
1行目: 1行目:
 
https://docs.lvgl.io/8.2/libs/bmp.html
 
https://docs.lvgl.io/8.2/libs/bmp.html
 
__NOTOC__
 
__NOTOC__
 +
= BMP decoder =
 
{| class="wikitable"
 
{| class="wikitable"
 
!英文
 
!英文
6行目: 7行目:
 
|-
 
|-
 
|
 
|
|
+
This extension allows the use of BMP images in LVGL. This implementation uses bmp-decoder library.
|}
 
  
= BMP decoder =
+
The pixels are read on demand (not the whole image is loaded) so using BMP images requires very little RAM.
This extension allows the use of BMP images in LVGL. This implementation uses bmp-decoder library. The pixels are read on demand (not the whole image is loaded) so using BMP images requires very little RAM.
 
  
If enabled in <code>lv_conf.h</code> by <code>LV_USE_BMP</code> LVGL will register a new image decoder automatically so BMP files can be directly used as image sources. For example:
+
If enabled in <code style="color: #bb0000;">lv_conf.h</code> by <code style="color: #bb0000;">LV_USE_BMP</code> LVGL will register a new image decoder automatically so BMP files can be directly used as image sources. For example:
 +
<syntaxhighlight lang="C++" style="border:1px dashed gray;">
 
  lv_img_set_src(my_img, "S:path/to/picture.bmp");
 
  lv_img_set_src(my_img, "S:path/to/picture.bmp");
Note that, a file system driver needs to registered to open images from files. Read more about it here or just enable one in <code>lv_conf.h</code> with <code>LV_USE_FS_...</code>
+
</syntaxhighlight>
 +
 
 +
 
 +
Note that, a file system driver needs to registered to open images from files.  
 +
 
 +
Read more about it here or just enable one in <code style="color: #bb0000;">lv_conf.h</code> with <code style="color: #bb0000;">LV_USE_FS_...</code>
 +
|この拡張機能により、LVGLでBMPイメージを使用できます。この実装では、bmp-decoderライブラリを使用します。
 +
ピクセルはオンデマンドで読み取られるため(画像全体が読み込まれるわけではありません)、BMP画像を使用するために必要なRAMはごくわずかです。
 +
 
 +
 
 +
<code style="color: #bb0000;">lv_conf.h</code>の中の<code style="color: #bb0000;">LV_USE_BMP</code>で有効にすると、LVGLは自動的に新しい画像デコーダを登録し、BMPファイルを画像ソースとして直接使用できるようになります。例えば
 +
<syntaxhighlight lang="C++" style="border:1px dashed gray;">
 +
lv_img_set_src(my_img、 "S:path / to / picture.bmp");
 +
</syntaxhighlight>
 +
ファイルからイメージを開くには、ファイルシステムドライバを登録する必要があることに注意してください。
 +
 
 +
 
 +
詳しくはこちらをご覧ください。
 +
 
 +
また、<code style="color: #bb0000;">lv_conf.h</code>で <code style="color: #bb0000;">LV_USE_FS_...</code> を指定して有効にすることもできます。
 +
|}
 +
 
  
 
== Limitations ==
 
== Limitations ==
 +
{| class="wikitable"
 +
!英文
 +
!自動翻訳
 +
|-
 +
|
  
* Only BMP files are supported and BMP images as C array (<code>lv_img_dsc_t</code>) are not. It's because there is no practical differences between how the BMP files and LVGL's image format stores the image data.
+
* Only BMP files are supported and BMP images as C array (<code style="color: #bb0000;">lv_img_dsc_t</code>) are not. It's because there is no practical differences between how the BMP files and LVGL's image format stores the image data.
 
* BMP files can be loaded only from file. If you want to store them in flash it's better to convert them to C array with LVGL's image converter.
 
* BMP files can be loaded only from file. If you want to store them in flash it's better to convert them to C array with LVGL's image converter.
* The BMP files color format needs to match with <code>LV_COLOR_DEPTH</code>. Use GIMP to save the image in the required format. Both RGB888 and ARGB888 works with <code>LV_COLOR_DEPTH 32</code>
+
* The BMP files color format needs to match with <code style="color: #bb0000;">LV_COLOR_DEPTH</code>. Use GIMP to save the image in the required format. Both RGB888 and ARGB888 works with <code style="color: #bb0000;">LV_COLOR_DEPTH 32</code>
 
* Palette is not supported.
 
* Palette is not supported.
 
* Because not the whole image is read in can not be zoomed or rotated.
 
* Because not the whole image is read in can not be zoomed or rotated.
 +
|
 +
* BMPファイルのみがサポートされており、C配列(<code style="color: #bb0000;">lv_img_dsc_t</code>)としてのBMPイメージはサポートされていません。これは、BMPファイルとLVGLの画像形式が画像データを保存する方法に実際的な違いがないためです。
 +
* BMPファイルはファイルからのみロードできます。それらをフラッシュに保存したい場合は、LVGLの画像コンバーターを使用してC配列に変換することをお勧めします。
 +
* BMPファイルのカラーフォーマットは、<code style="color: #bb0000;">LV_COLOR_DEPTH</code>と一致させる必要があります。GIMPを使用して、必要なフォーマットで画像を保存してください。<code style="color: #bb0000;">LV_COLOR_DEPTH 32</code>ではRGB888とARGB888の両方が動作します。
 +
* パレットはサポートされていません。
 +
* 画像全体が読み込まれないため、ズームや回転はできません。
 +
|}
 +
  
 
== Example ==
 
== Example ==
 
+
{| class="wikitable"
 +
!英文
 +
!自動翻訳
 +
|-
 +
|
 
=== Open a BMP image from file ===
 
=== Open a BMP image from file ===
[[ファイル:LVGL docs others gridnav 03.png|サムネイル]]
+
[[file:LVGL docs others gridnav 03.png|link=https://docs.lvgl.io/8.2/libs/bmp.html#open-a-bmp-image-from-file]]
 +
|
 +
|}
  
 
https://docs.lvgl.io/8.2/libs/bmp.html#open-a-bmp-image-from-file
 
 
----
 
  
 
== API ==
 
== API ==
 +
{| class="wikitable"
 +
!英文
 +
!自動翻訳
 +
|-
 +
|
 
Functions
 
Functions
  
 
; <span id="_CPPv311lv_bmp_initv"></span><span id="_CPPv211lv_bmp_initv"></span><span id="lv_bmp_init__void"></span><span id="lv__bmp_8h_1a840775046f734a65dfeaca9d4a606154" class="target"></span>void lv_bmp_init(void)
 
; <span id="_CPPv311lv_bmp_initv"></span><span id="_CPPv211lv_bmp_initv"></span><span id="lv_bmp_init__void"></span><span id="lv__bmp_8h_1a840775046f734a65dfeaca9d4a606154" class="target"></span>void lv_bmp_init(void)
 +
|
 +
|}
  
  
  
  
 
 
 
 
 
----
 
 
:[[App:Library:LVGL:docs:3rd party libraries|戻る : Previous]]
 
:[[App:Library:LVGL:docs:3rd party libraries|戻る : Previous]]

2022年6月29日 (水) 15:20時点における最新版

https://docs.lvgl.io/8.2/libs/bmp.html

BMP decoder

英文 自動翻訳

This extension allows the use of BMP images in LVGL. This implementation uses bmp-decoder library.

The pixels are read on demand (not the whole image is loaded) so using BMP images requires very little RAM.

If enabled in lv_conf.h by LV_USE_BMP LVGL will register a new image decoder automatically so BMP files can be directly used as image sources. For example:

 lv_img_set_src(my_img, "S:path/to/picture.bmp");


Note that, a file system driver needs to registered to open images from files.

Read more about it here or just enable one in lv_conf.h with LV_USE_FS_...

この拡張機能により、LVGLでBMPイメージを使用できます。この実装では、bmp-decoderライブラリを使用します。

ピクセルはオンデマンドで読み取られるため(画像全体が読み込まれるわけではありません)、BMP画像を使用するために必要なRAMはごくわずかです。


lv_conf.hの中のLV_USE_BMPで有効にすると、LVGLは自動的に新しい画像デコーダを登録し、BMPファイルを画像ソースとして直接使用できるようになります。例えば

 lv_img_set_srcmy_img "S:path / to / picture.bmp";

ファイルからイメージを開くには、ファイルシステムドライバを登録する必要があることに注意してください。


詳しくはこちらをご覧ください。

また、lv_conf.hLV_USE_FS_... を指定して有効にすることもできます。


Limitations

英文 自動翻訳
  • Only BMP files are supported and BMP images as C array (lv_img_dsc_t) are not. It's because there is no practical differences between how the BMP files and LVGL's image format stores the image data.
  • BMP files can be loaded only from file. If you want to store them in flash it's better to convert them to C array with LVGL's image converter.
  • The BMP files color format needs to match with LV_COLOR_DEPTH. Use GIMP to save the image in the required format. Both RGB888 and ARGB888 works with LV_COLOR_DEPTH 32
  • Palette is not supported.
  • Because not the whole image is read in can not be zoomed or rotated.
  • BMPファイルのみがサポートされており、C配列(lv_img_dsc_t)としてのBMPイメージはサポートされていません。これは、BMPファイルとLVGLの画像形式が画像データを保存する方法に実際的な違いがないためです。
  • BMPファイルはファイルからのみロードできます。それらをフラッシュに保存したい場合は、LVGLの画像コンバーターを使用してC配列に変換することをお勧めします。
  • BMPファイルのカラーフォーマットは、LV_COLOR_DEPTHと一致させる必要があります。GIMPを使用して、必要なフォーマットで画像を保存してください。LV_COLOR_DEPTH 32ではRGB888とARGB888の両方が動作します。
  • パレットはサポートされていません。
  • 画像全体が読み込まれないため、ズームや回転はできません。


Example

英文 自動翻訳

Open a BMP image from file

LVGL docs others gridnav 03.png


API

英文 自動翻訳

Functions

void lv_bmp_init(void)



戻る : Previous