<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: GDI+ Редактировать прозрачное изображение]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=13953&amp;type=atom" />
	<updated>2018-07-18T19:40:55Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=13953</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: GDI+ Редактировать прозрачное изображение]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127139#p127139" />
			<content type="html"><![CDATA[<p>Оказалось наоборот, надо из прозрачного битмапа создать графику</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2018-07-18T19:40:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127139#p127139</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: GDI+ Редактировать прозрачное изображение]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127137#p127137" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>pNewBitmap := Gdip_CreateBitmap(Width//div, Height//div)
G2 := Gdip_GraphicsFromImage(pNewBitmap)
Gdip_DrawImage(G2, pBitmap, 0, 0, Width//div, Height//div, 0, 0, Width, Height)
Gdip_SaveBitmapToFile(pNewBitmap, oFile)
Gdip_DeleteGraphics(G2), Gdip_DisposeImage(pNewBitmap)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2018-07-18T19:12:14Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127137#p127137</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: GDI+ Редактировать прозрачное изображение]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127136#p127136" />
			<content type="html"><![CDATA[<p>Так можно изменить размер и отобразить прозрачное изображение, не пойму как сохранить в файл без потери прозрачности. <br />Полагаю, что после DrawImage из Graphics надо получить Bitmap, но что то не то выходит.</p><p><a href="https://ru.files.fm/u/ynya8gvg">Картинка.</a></p><div class="codebox"><pre><code>
#SingleInstance, Force
#NoEnv
SetBatchLines, -1

sFile = Исходный файл
oFile = %A_Desktop%\test.png  


pToken := Gdip_Startup()
OnExit, Exit

Gui, 1: -Caption +E0x80000 +LastFound +AlwaysOnTop +ToolWindow +OwnDialogs
Gui, 1: Show, NA
div := 0.6
hwnd1 := WinExist()

pBitmap := Gdip_CreateBitmapFromFile(sFile)
Width := Gdip_GetImageWidth(pBitmap), Height := Gdip_GetImageHeight(pBitmap)
hbm := CreateDIBSection(Width//div, Height//div)
hdc := CreateCompatibleDC()
obm := SelectObject(hdc, hbm)
G := Gdip_GraphicsFromHDC(hdc)
Gdip_SetInterpolationMode(G, 7)
Gdip_DrawImage(G, pBitmap, 0, 0, Width//div, Height//div, 0, 0, Width, Height)
UpdateLayeredWindow(hwnd1, hdc, 0, 0, Width//div, Height//div)

pBitmap := Gdip_CreateBitmapFromHBITMAP(hbm,hdc) 
Gdip_SaveBitmapToFile(pBitmap, oFile)

SelectObject(hdc, obm)	,DeleteObject(hbm)	,DeleteDC(hdc)
Gdip_DeleteGraphics(G),	Gdip_DisposeImage(pBitmap)
Return
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2018-07-18T18:20:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127136#p127136</id>
		</entry>
</feed>
