找回密码
 加入
搜索
查看: 830|回复: 9

[图形处理] 合成图片时如何缩放图片?

[复制链接]
发表于 2022-6-30 10:57:30 | 显示全部楼层 |阅读模式
本帖最后由 ac5474012 于 2022-6-30 12:08 编辑

请在此基础上,将第二张图缩放一半。

本帖子中包含更多资源

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

×
发表于 2022-6-30 12:14:16 | 显示全部楼层
#include <GDIPlus.au3>

Local $fPicBk = '1.jpg'                ;底图
Local $fPicAdd = '2.jpg'        ;添加小图
Local $aPosAdd = [0, 0, 200, 150]        ;添加小图的坐标及大小
Local $fPicSave = '合成.jpg'

_GDIPlus_Startup()
Local $hImage_Bk = _GDIPlus_ImageLoadFromFile($fPicBk)
Local $hGraphic = _GDIPlus_ImageGetGraphicsContext($hImage_Bk)
Local $hImage_add = _GDIPlus_ImageLoadFromFile($fPicAdd)
_GDIPlus_GraphicsDrawImageRect($hGraphic, $hImage_add, $aPosAdd[0], $aPosAdd[1], $aPosAdd[2], $aPosAdd[3])
_GDIPlus_ImageSaveToFile($hImage_Bk, $fPicSave)
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_ImageDispose($hImage_Bk)
_GDIPlus_ImageDispose($hImage_add)
_GDIPlus_Shutdown()

评分

参与人数 1金钱 +60 收起 理由
ac5474012 + 60 很给力!

查看全部评分

 楼主| 发表于 2022-6-30 11:11:03 | 显示全部楼层
将两个图片合成,一个图片为底,另一个图片覆盖其上,位置固定。
发表于 2022-6-30 11:13:53 | 显示全部楼层
很简单 _GDIPlus_GraphicsDrawImageRect()
 楼主| 发表于 2022-6-30 11:50:51 | 显示全部楼层
afan 发表于 2022-6-30 11:13
很简单 _GDIPlus_GraphicsDrawImageRect()

谢谢,明白了。我的第二张图片比较大,请问如何缩小图片大小?
发表于 2022-6-30 11:53:09 | 显示全部楼层
ac5474012 发表于 2022-6-30 11:50
谢谢,明白了。我的第二张图片比较大,请问如何缩小图片大小?

_GDIPlus_GraphicsDrawImageRect 就是可以调整尺寸的,不然直接 _GDIPlus_GraphicsDrawImage 就好了
 楼主| 发表于 2022-6-30 11:58:09 | 显示全部楼层
afan 发表于 2022-6-30 11:53
_GDIPlus_GraphicsDrawImageRect 就是可以调整尺寸的,不然直接 _GDIPlus_GraphicsDrawImage 就好了

我找到是_GDIPlus_MatrixScale这个命令,但是我发现我不会用。

$hImage2 = _GDIPlus_ImageLoadFromFile($InsImagefile)
        ;~ Local $hImage2 = _GDIPlus_MatrixCreate()
        ; 放大矩阵 2 倍 (所有都将变成 2 倍大小)
        _GDIPlus_MatrixScale($hImage2, 0.1, 0.1)
;~                 $hImage2 = _GDIPlus_BitmapCloneArea($hImage2, 0, 0, 100, 100, $GDIP_PXF24RGB)
        $hGraphics = _GDIPlus_ImageGetGraphicsContext ($hImage1)
        _GDIPlus_GraphicsDrawImage ($hGraphics, $hImage2, $x, $y);插入第一个

这样似乎不行,请问如何修正
 楼主| 发表于 2022-6-30 12:07:15 | 显示全部楼层
afan 发表于 2022-6-30 11:53
_GDIPlus_GraphicsDrawImageRect 就是可以调整尺寸的,不然直接 _GDIPlus_GraphicsDrawImage 就好了

还是没有搞懂,您能在此基础上将第二张图调整小一半吗?





本帖子中包含更多资源

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

×
发表于 2022-6-30 18:17:30 | 显示全部楼层

学习了。随便用了二张图的效果




本帖子中包含更多资源

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

×
发表于 2022-6-30 20:06:58 | 显示全部楼层
chzj589 发表于 2022-6-30 18:17
学习了。随便用了二张图的效果

是的,最常见的应用大概就是加水印、LOGO 之类了
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-23 07:15 , Processed in 0.210349 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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