|

楼主 |
发表于 2025-1-2 09:13:46
|
显示全部楼层
重庆市重庆市
本帖最后由 asasqwwq 于 2025-1-2 14:49 编辑
第一个代码发错了,有错误,大家别用第一个。
|
图像_位图_旋转_绕点 | 字节集 | | |
位图字节集 | 字节集 | | | | 旋转角度 | 小数型 | | | | 旋转中心x | 小数型 | | | | 旋转中心y | 小数型 | | | | 置背景色 | 整数型 | | | | 裁剪空白边框 | 逻辑型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | GP图形 | GP图形 | | | 中心点 | 坐标F | | | GP图像 | GP图像 | | | GP位图 | GP位图 | | | 局字节集 | 字节集 | | | GP纯色画刷 | GP纯色画刷 | | | Gdiplus初始化 () 如果真 (旋转角度 = 0 ) 返回 (位图字节集 )GP图像.创建自字节集 (位图字节集, )GP位图. 创建自像素格式 (GP图像. 取宽度 (), GP图像. 取高度 (), )GP图形. 创建自图像 (GP位图 ) 如果真 (置背景色 ≠ 0 ) GP纯色画刷. 创建 (RGB到ARGB (置背景色, ))  GP图形. 填充矩形I (GP纯色画刷, 0, 0, GP图像. 取宽度 (), GP图像. 取高度 ())  GP纯色画刷. 销毁 ()
中心点.x = 旋转中心x 中心点.y = 旋转中心y GP图形. 变形旋转在 (旋转角度, 中心点, )GP图形. 画图像 (GP图像, 0, 0 )局字节集 = GP位图. 保存到字节集 ( #图像格式_BMP, ) 如果真 (裁剪空白边框 ) 局字节集 = 图像_位图_裁剪空白边框 (局字节集, 置背景色 ) GP图像. 销毁 ()GP位图. 销毁 ()GP图形. 销毁 ()Gdiplus关闭 ()返回 (局字节集 )
|
图像_位图_裁剪空白边框 | 字节集 | | |
位图数据 | 字节集 | | | | 空白边框颜色 | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 位图 | 位图 | | | 裁剪位图 | 位图 | | | 宽 | 整数型 | | | 高 | 整数型 | | | 左X | 整数型 | | | 顶Y | 整数型 | | | 右X | 整数型 | | | 底Y | 整数型 | | | x | 整数型 | | | y | 整数型 | | | 发现非边框色 | 逻辑型 | | |
位图. 载入数据 (位图数据 )宽 = 位图. 取宽度 ()高 = 位图. 取高度 ()连续赋值 (-1, 左X, 顶Y, 右X, 底Y ) 变量循环首 (0, 宽 - 1, 1, x ) 发现非边框色 = 假  变量循环首 (0, 高 - 1, 1, y )  如果真 (位图. 取某点颜色 (x, y ) ≠ 空白边框颜色 )   发现非边框色 = 真   跳出循环 ()    变量循环尾 () 如果 (发现非边框色 )  如果 (左X = -1 )   左X = x    右X = x      如果真 (左X ≠ -1 )  跳出循环 ()    变量循环尾 () 变量循环首 (0, 高 - 1, 1, y ) 发现非边框色 = 假  变量循环首 (0, 宽 - 1, 1, x )  如果真 (位图. 取某点颜色 (x, y ) ≠ 空白边框颜色 )   发现非边框色 = 真   跳出循环 ()    变量循环尾 () 如果 (发现非边框色 )  如果 (顶Y = -1 )   顶Y = y    底Y = y      如果真 (顶Y ≠ -1 )  跳出循环 ()    变量循环尾 ()左X = 选择 (左X = -1, 0, 左X )顶Y = 选择 (顶Y = -1, 0, 顶Y )右X = 选择 (右X = -1, 宽 - 1, 右X )底Y = 选择 (底Y = -1, 高 - 1, 底Y )裁剪位图. 创建 (右X - 左X + 1, 底Y - 顶Y + 1, 24, )位图. 复制到 (左X, 顶Y, 右X - 左X + 1, 底Y - 顶Y + 1, 裁剪位图, 0, 0, )返回 (裁剪位图. 取位图数据 ())
|
|