调整图片大小 - ScalePixels
函数简介
调整图片大小,按指定倍率放大图片像素。此函数可以对图片进行像素级别的放大,保持图片清晰度,适用于需要放大图片但保持清晰度的场景,如图像处理、UI设计等。
接口名称
ScalePixels
DLL调用
long ScalePixels(long ola, long ptr, int scale)
参数定义:
ola
(长整型数): OLAPlug对象的指针,由 CreateCOLAPlugInterFace 接口生成。ptr
(长整型数): 原OLAImage对象的地址scale
(整型数): 像素放大倍率,必须大于0
示例:
// 加载图片
long imagePtr = LoadImage(ola, "/OLA/pic/pic.bmp");
if (imagePtr != 0) {
// 将图片放大2倍
long scaledImagePtr = ScalePixels(ola, imagePtr, 2);
if (scaledImagePtr != 0) {
// 使用放大后的图片
// ...
// 使用完后释放内存
FreeImagePtr(ola, scaledImagePtr);
}
// 释放原图内存
FreeImagePtr(ola, imagePtr);
}
COM调用
long ScalePixels(long ptr, int scale)
参数定义:
ptr
(长整型数): 原OLAImage对象的地址scale
(整型数): 像素放大倍率,必须大于0
示例:
# 加载图片
imagePtr = LoadImage("/OLA/pic/pic.bmp")
if imagePtr:
# 将图片放大2倍
imagePtrCp = ScalePixels(imagePtr, 2)
if imagePtrCp:
# 使用放大后的图片
# ...
# 使用完后释放内存
FreeImagePtr(imagePtrCp)
# 释放原图内存
FreeImagePtr(imagePtr)
返回值
长整型数: 返回放大后的OLAImage对象的地址。如果失败返回0。
注意事项
- 放大倍率必须大于0,否则可能导致程序异常
- 放大后的图片会占用更多内存,请注意内存使用
- 放大后的图片尺寸会相应增加,请注意处理大图片时的性能影响
- 图片使用完后需要调用 FreeImagePtr 接口释放内存
- 原图片的内存需要单独释放,不会自动释放
- 放大后的图片会保持原图的清晰度,但可能会增加文件大小
- 建议在放大图片前检查内存是否充足
- 如果原图片指针无效,函数将返回0