开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 722|回复: 9
收起左侧

[完成] 有大佬帮我看看GetDIBits()的问题吗?

 关闭 [复制链接]
结帖率:100% (6/6)
发表于 2023-11-10 00:45:09 | 显示全部楼层 |阅读模式   广东省广州市
100精币


这段代码是我从大佬的源码改的https://www.eyuyan.la/post/8265.html
他的代码获取完缩略图直接导入进了超级列表框。但如果是长图,在超级列表框就会压缩成正方形
我想着在他的代码获取缩略图图时直接获取图片数据,然后我把这个图片数据提出来重新调整好比例再放进超级列表框(我的方法是,通过画板补上白边,把长图变成正方形再放进超级列表框,我其实不太懂这个方法对不对哈哈哈哈)
但我取不出来

补充内容 (2023-11-10 00:52):
我写的源码指定在下面了 不知道为啥写帖子的时候有写,但发出来就没了+_+

最佳答案

查看完整内容

直接用 精益模块里的 图片_缩放透明() 得到缩放后的图片
结帖率:100% (6/6)
 楼主| 发表于 2023-11-10 00:50:11 | 显示全部楼层   广东省广州市
这是我修改的源码
  
窗口程序集名保 留  保 留备 注
窗口程序集1   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
图片框1.图片 = 取图像缩略图 (“D:\图片测试\30.png”, 30, 20)
子程序名返回值类型公开备 注
取图像缩略图字节集 成功返回位图句柄,失败返回0。备注:如果不再使用此句柄,请用“DeleteObject”释放资源。
参数名类 型参考可空数组备 注
文件路径文本型
缩略图宽度整数型
缩略图高度整数型
变量名类 型静态数组备 注
图像整数型 
缩略图整数型 
位图句柄整数型 
返回字节集字节集 
GdipLoadImageFromFile (A2W (文件路径), 图像)  ' 加载图像
GdipGetImageThumbnail (图像, 缩略图宽度, 缩略图高度, 缩略图, 0, 0)
GdipCreateHBITMAPFromBitmap (缩略图, 位图句柄, 0)
GdipDisposeImage (缩略图)
GdipDisposeImage (图像)  ' 销毁图像,释放资源
返回图片 = 获取位图数据 (位图句柄, 缩略图宽度, 缩略图高度)
返回 (返回字节集)
子程序名返回值类型公开备 注
A2W字节集 将Ansi转成Unicode
参数名类 型参考可空数组备 注
欲转换的文本文本型
变量名类 型静态数组备 注
缓冲区字节集 
缓冲区大小整数型 
缓冲区大小 = MultiByteToWideChar (0, 0, 欲转换的文本, -1, {  }, 0) × 2
缓冲区 = 取空白字节集 (缓冲区大小)
MultiByteToWideChar (0, 0, 欲转换的文本, 取文本长度 (欲转换的文本), 缓冲区, 缓冲区大小)
返回 (缓冲区)
子程序名返回值类型公开备 注
获取位图数据字节集 成功返回位图数据,失败返回空字节集。
参数名类 型参考可空数组备 注
位图句柄整数型
缩略图宽度整数型
缩略图高度整数型
变量名类 型静态数组备 注
设备上下文整数型 
位图信息字节集 
位图数据字节集 
结果整数型 
' 这一步不知道为啥一直返回不了图片,网上找了好久也没有答案,下面的代码是我在网上找的,但试了不行,是我写法有问题吗--------------------------
设备上下文 = GetDC (0)
调试输出 (设备上下文)
位图信息 = 取空白字节集 (40)
位图数据 = 取空白字节集 (缩略图宽度 × 缩略图高度 × 4)
结果 = GetDIBits (设备上下文, 位图句柄, 0, 缩略图高度, 位图数据, 位图信息, 0)
' 调试输出 (结果)
ReleaseDC (0, 设备上下文)
如果 (结果 = 0)
返回 (取空白字节集 (0))
返回 (位图数据)


i支持库列表   支持库注释   
spec特殊功能支持库

回复

使用道具 举报

结帖率:100% (20/20)

签到天数: 20 天

发表于 2023-11-10 00:45:10 | 显示全部楼层   浙江省杭州市
直接用 精益模块里的 图片_缩放透明()   得到缩放后的图片

评分

参与人数 1荣誉 +1 收起 理由
项目部004 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 21 天

发表于 2023-11-10 13:41:00 | 显示全部楼层   广东省深圳市
你这取位图数据写的是个啥啊,中间漏了一大堆步骤
回复

使用道具 举报

发表于 2023-11-10 14:34:16 | 显示全部楼层   福建省漳州市
新人来学习了。。。。。。。。。。。。。。。
回复

使用道具 举报

结帖率:100% (6/6)
 楼主| 发表于 2023-11-10 19:36:58 | 显示全部楼层   广东省广州市
a6661680 发表于 2023-11-10 14:34
新人来学习了。。。。。。。。。。。。。。。

回复

使用道具 举报

结帖率:100% (6/6)
 楼主| 发表于 2023-11-10 19:39:55 | 显示全部楼层   广东省广州市
b0y 发表于 2023-11-10 07:53
直接用 精益模块里的 图片_缩放透明()   得到缩放后的图片

大佬我试了下 精易模块这么如果文件很多很大的话会很慢,他的能秒取到缩略图,不知道为啥
回复

使用道具 举报

结帖率:100% (6/6)
 楼主| 发表于 2023-11-10 19:40:52 | 显示全部楼层   广东省广州市
同学麻烦让让 发表于 2023-11-10 13:41
你这取位图数据写的是个啥啊,中间漏了一大堆步骤

大佬可以点拨一下吗
回复

使用道具 举报

结帖率:100% (20/20)

签到天数: 20 天

发表于 2023-11-10 19:49:50 | 显示全部楼层   浙江省杭州市
lanseqinfang1 发表于 2023-11-10 19:39
大佬我试了下 精易模块这么如果文件很多很大的话会很慢,他的能秒取到缩略图,不知道为啥 ...

用带透明的那个也慢?  
回复

使用道具 举报

结帖率:100% (6/6)
 楼主| 发表于 2023-11-10 20:21:33 | 显示全部楼层   广东省广州市
b0y 发表于 2023-11-10 19:49
用带透明的那个也慢?

成功了大佬,透明这个很快,刚才做的时候我忘删之前的代码重循环了一遍做的才感觉很慢{{{(>_<)}}},嘿嘿,那我不研究GetDIBits()了,完全看不懂

补充内容 (2023-11-10 20:23):
感谢大佬^0^
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表