1 (изменено: wladkokopops, 2019-04-10 08:32:58)

Тема: AHK: Склеить фото

Возникла потребность склеть два фото в одно,
первое фото должно быть 1.jpeg,второе же 2.png(прозрачный ватермарк).
Как это сделать посредством AHK , даже не имею понятия, есть идеи?

UPD: Второе фото должно наложится на первое и вывести результат в 3.jpeg.

2

Re: AHK: Склеить фото

Есть люди которые встречались с подобными задачами?
Может Bat/cmd прикрутить как то?

3

Re: AHK: Склеить фото

Найдите софт который это умеет и автоматизируйте его хоть через bat.
Или выводите картинки в gui, затем делаете скриншот результата.

4

Re: AHK: Склеить фото

Берёте в буфер 2.png.

1) Открываете в Paint'е 1.jpeg
2) Посылаете ^V
3) Посылаете ^S
4) Посылаете !F4
5) Ждёте закрытия окна Paint

Открываете в Paint'е 2.jpeg... и так далее

5

Re: AHK: Склеить фото

Пэйнт не умеет ни в слой с прозрачностями, ни в полупрозрачный слой.

6

Re: AHK: Склеить фото

Насчёт прозрачности не соглашусь. Может и не умеет грамотно сохранять с прозрачностью, но может держать в буфере рисунок, содержащий прозрачность. Там ещё различается "выделение" и "прозрачное выделение". А в конечном результате (3.jpeg) сохранять с прозрачностью и не требовалось.

7

Re: AHK: Склеить фото

Что за троллинг, простейшая вещь в GDI+, какие нафиг скриншоты.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.30.03 (Unicode 32-bit). AhkSpy, Hotkey, ClockGui

8

Re: AHK: Склеить фото

Gdip_All.ahk.

#SingleInstance, Force
#NoEnv
#Include <GDIP_All>
pToken := Gdip_Startup()
OnExit, Exit

sFile1 = 1.jpeg
sFile2 = 2.png
sFileRes = 3.jpeg

pBitmap1 := Gdip_CreateBitmapFromFile(sFile1)
Gdip_GetImageDimensions(pBitmap1, Width, Height)

pResultBitmap := Gdip_CreateBitmap(Width, Height)
G := Gdip_GraphicsFromImage(pResultBitmap)
Gdip_SetInterpolationMode(G, 7)

Gdip_DrawImage(G, pBitmap1, 0, 0, Width, Height, 0, 0, Width, Height) 
Gdip_DisposeImage(pBitmap1)

pBitmap2 := Gdip_CreateBitmapFromFile(sFile2)
Gdip_GetImageDimensions(pBitmap2, Width2, Height2)

X := (Width - Width2) // 2
Y := (Height - Height2) // 2

Gdip_DrawImage(G, pBitmap2, X, Y, Width2, Height2, 0, 0, Width2, Height2) 
Gdip_DisposeImage(pBitmap2)

Gdip_DeleteGraphics(G)

Gdip_SaveBitmapToFile(pResultBitmap, sFileRes)
Gdip_DisposeImage(pResultBitmap)
Run %sFileRes%  

Exit: 
	Gdip_Shutdown(pToken)
	ExitApp 
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.30.03 (Unicode 32-bit). AhkSpy, Hotkey, ClockGui