bitmaptools
– 位图操作工具的集合¶
在这些板上可用
-
bitmaptools.
rotozoom
(dest_bitmap: displayio.Bitmap, source_bitmap: displayio.Bitmap, *, ox: int, oy: int, dest_clip0: Tuple[int, int], dest_clip1: Tuple[int, int], px: int, py: int, source_clip0: Tuple[int, int], source_clip1: Tuple[int, int], angle: float, scale: float, skip_index: int) → None¶ 将源位图区域插入到具有旋转(角度)、缩放和剪裁(在源位图和目标位图上)的目标位图中。
- 参数
dest_bitmap (bitmap) – 将被复制到的目标位图
source_bitmap (bitmap) – 包含要复制的图形区域的源位图
ox (int) – 目标位图中放置源位图点 (px,py) 的水平像素位置
oy (int) – 目标位图中放置源位图点 (px,py) 的垂直像素位置
px (int) – 源位图中的水平像素位置,放置在 (ox,oy) 处的目标位图中
py (int) – 源位图中的垂直像素位置,放置在 (ox,oy) 处的目标位图中
angle (float) –旋转角度,以弧度为单位(正为顺时针方向)
scale (float) – 缩放因子
skip_index (int) – 源中不会被复制的位图调色板索引,设置为 None 以复制所有像素
-
bitmaptools.
fill_region
(dest_bitmap: displayio.Bitmap, x1: int, y1: int, x2: int, y2: int, value: int) → None¶ 将颜色值绘制到由 (x1,y1) 和 (x2,y2) 限定的矩形区域内的目标位图中,不包括在内。
-
bitmaptools.
boundary_fill
(dest_bitmap: displayio.Bitmap, x: int, y: int, fill_color_value: int, replaced_color_value: int) → None¶ 将颜色值绘制到 background_value 颜色的像素的目标位图封闭区域中。像“油漆桶”填充工具。
-
bitmaptools.
draw_line
(dest_bitmap: displayio.Bitmap, x1: int, y1: int, x2: int, y2: int, value: int) → None¶ 在位图中绘制一条线,指定两个端点 (x1,y1) 和 (x2,y2)。
-
bitmaptools.
arrayblit
(bitmap: displayio.Bitmap, data: _typing.ReadableBuffer, x1: int = 0, y1: int = 0, x2: Optional[int] = None, y2: Optional[int] = None, skip_index: Optional[int] = None) → None¶ 将像素从 插入
data
到宽度×高度像素的矩形中,左上角为(x,y)
从这些值中
data
被取模颜色值的数量avalable在目标位图。如果未指定 x1 或 y1,则取为 0。如果未指定 x2 或 y2,或指定为 -1,则取为图像的宽度和高度。
受 blit 影响的坐标是和。
x1 <= x < x2
andy1 <= y < y2
.data
必须至少包含所需的元素。如果它包含多余的元素,它们将被忽略。blit 按行进行,因此第一个元素
data
转到第一行,下一个元素转到下一行,依此类推。
-
bitmaptools.
readinto
(bitmap: displayio.Bitmap, file: BinaryIO, bits_per_pixel: int, element_size: int = 1, reverse_pixels_in_element: bool = False, swap_bytes_in_element: bool = False, reverse_rows: bool = False) → None¶ 从二进制文件读取到位图。
文件的位置必须使其由
bitmap.height
像素数据行组成,其中每一行是element_size
可以容纳bitmap.width
像素的最小字节倍数。元素中的字节可以随意交换,元素中的像素可以颠倒。此外,行加载方向可以颠倒,这可能需要加载某些位图文件。
此函数不解析图像标头,但可用于加速未压缩图像格式(如 PCF 字形数据)的加载。
- 参数
bitmap (displayio.Bitmap) – 可写位图
file (typing.BinaryIO) – 以二进制模式打开的文件
bits_per_pixel (int) – 每个像素的位数。支持值 1、2、4、8、16、24 和 32;
element_size (int) – 每个元素的字节数。支持 1、2 和 4 的值,但 24
bits_per_pixel
需要每个元素 1 个字节。reverse_pixels_in_element (bool) – 如果设置,则字中的第一个像素取自最重要的位;否则,它取自最低有效位。
swap_bytes_in_element (bool) – 如果
element_size
不是 1,则反转每个元素读取的字节顺序。reverse_rows (bool) – 反转行加载的方向(某些位图图像需要)。