如何将png图片的指定区域挖空,变成透明?【已解决】
本帖最后由 fenhanxue 于 2017-9-10 10:47 编辑例如:
假设有一张png图片,想要将其某一指定的矩形区域变透明,再保存为新的png,应该如何实现?
如有一张400*400的图片,想要以下区域变透明:
左上角坐标(相对于图片):50,50
右下角坐标(相对于图片):100,100
应如何实现?
本帖最后由 帆船 于 2017-9-9 21:25 编辑
#include <GDIPlus.au3>
Func _Bitmap_SetTransRect($hBitmap, $aRect)
For $Num = $aRect To $aRect
For $Mum = $aRect To $aRect
_GDIPlus_BitmapSetPixel($hBitmap, $Num, $Mum, 0x00FFFFFF)
Next
Next
EndFunc ;==>_Bitmap_SetTransRect
Func _Bitmap_SetTransColor($hBitmap, $iColor)
For $Num = 0 To _GDIPlus_ImageGetWidth($hBitmap) - 1
For $Mum = 0 To _GDIPlus_ImageGetHeight($hBitmap) - 1
If _GDIPlus_BitmapGetPixel($hBitmap, $Num, $Mum) = "0xFF" & Hex($iColor, 6) Then
_GDIPlus_BitmapSetPixel($hBitmap, $Num, $Mum, 0x00FFFFFF)
EndIf
Next
Next
EndFunc ;==>_Bitmap_SetTransColor
自用的两个小函数,分别是将指定区域全部透明和指定颜色透明 回复 2# 帆船
感谢
页:
[1]