找回密码
 加入
搜索
查看: 4617|回复: 6

[图形处理] 【求助】 改变图片宽高出现诡异的现象,不解

  [复制链接]
发表于 2014-12-12 11:19:53 | 显示全部楼层 |阅读模式
AUToit的画图好难啊,求大神帮忙,感谢!

问题:
1) 下面第二段代码相对第一段,只是改了一下变量名,为什么得到的图片final.jpg就不一样呢?
2) 第一段中_GDIPlus_BitmapCreateFromGraphics只是将原图改变了宽和高吧?为什么内容都变了,成了全黑的
3) 第三段是将图片背景由黑色刷为红色,可是为什么没有实现呢?

图片:screen.jpg
第一段
        $hBitmap = _GDIPlus_BitmapCreateFromFile("d:\screen.jpg")
        $hGraphic = _GDIPlus_ImageGetGraphicsContext($hBitmap)
        $hBitmap = _GDIPlus_BitmapCreateFromGraphics(200, 200, $hGraphic)
        _GDIPlus_ImageSaveToFile($hBitmap, "d:\final.jpg")
得到的final.jpg


第二段
        $hBitmap = _GDIPlus_BitmapCreateFromFile("d:\screen.jpg")
        $hGraphic = _GDIPlus_ImageGetGraphicsContext($hBitmap)
        $hBitmap1 = _GDIPlus_BitmapCreateFromGraphics(200, 200, $hGraphic)
        _GDIPlus_ImageSaveToFile($hBitmap1, "d:\final.jpg")
得到的final.jpg


第三段
        $hBitmap = _GDIPlus_BitmapCreateFromFile("d:\screen.jpg")
        $hGraphic = _GDIPlus_ImageGetGraphicsContext($hBitmap)
        $hBitmap = _GDIPlus_BitmapCreateFromGraphics(200, 200, $hGraphic)
        $hGraphic1 = _GDIPlus_ImageGetGraphicsContext($hBitmap)
        $Brush = _GDIPlus_BrushCreateSolid(0xFF0000) ;创建一个实体画刷,画刷颜色定义为红色
        _GDIPlus_GraphicsFillRect($hGraphic1, 0, 0, $Width, $Height, $Brush)
        _GDIPlus_ImageSaveToFile($hBitmap, "d:\1.jpg")

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2014-12-12 11:27:20 | 显示全部楼层
_GDIPlus_BitmapCreateFromFile只支持位图格式
发表于 2014-12-12 11:57:34 | 显示全部楼层
看清楚变量不一样
$hBitmap和 $hBitmap1
仔细体会
 楼主| 发表于 2014-12-12 14:15:09 | 显示全部楼层
嗯呢  就是不明白换了个变量怎么就不行了呢

回复 3# seniors
发表于 2014-12-14 02:51:28 | 显示全部楼层
GDI我是小白。。。 太难了~
 楼主| 发表于 2014-12-15 09:46:34 | 显示全部楼层
up up up up
 楼主| 发表于 2014-12-31 09:47:08 | 显示全部楼层
up up up up
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-17 14:28 , Processed in 0.073218 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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