본문 바로가기

Autohotkey강좌

Autohotkey#30, 다양한 그래픽 처리하기 Gdip_all.ahk 사용하기

반응형

https://youtu.be/szzpZTga4Lg

그래픽에 대한 처리가 필요한 경우가 많이 있습니다. 그 경우 유용한 기능을 훌륭한 분들이 만들어 놨으니 우리는 갖다 쓰면 됩니다. 바로  gdip_all.ahk가 그것입니다. 

Gdip_All.ahk
0.09MB


기본적인 사용법은 다음과 같습니다.

1) 먼저 gdip_all.ahk를 불러와야 사용이 가능하므로 아래처럼 불러옵니다.
#include gdip_all.ahk 

2) gdip를 사용하기 위한 첫 단계는 Gdip_Startup()을 호출하는 것입니다.
실제 함수의 내용을 보면 GetModuleHandle과 GdiplusStartup를 호출해 주어 본격적으로 사용할 수 있게 합니다.
pToken := Gdip_Startup()

3) 이제는 Gdip에서 제공하는 어떤 함수도 불러 사용할 수 있습니다. 우리는 Clipboard의 내용을 Bitmap으로 저장하기 위해 아래 함수를 사용합니다.
pBitmap := Gdip_CreateBitmapFromClipboard()

4) Bitmap으로 저장된 이미지를 별도의 변수로 저장하려고 여러가지를 시도했으나 실패하였고, 할 수 없이 그냥 파일로 저장합니다.
Gdip_SaveBitmapToFile(pBitmap, name)

5) 사용된 이미지를 더 이상 사용할 일이 없으므로 제거합니다.
Gdip_DisposeImage(pBitmap)

6) 프로그램 종료시에는 아래처럼 Gdip_Shutdown해주면 됩니다.
Gdip_Shutdown(pToken)

이 내용을 간단한 gui를 써서 확인해 보겠습니다. 먼저 GUI화면을 간단히 구성해 줍니다.
어떻게 동작하는지 설명을 자세히 써서 사용하는데 문제가 없도록 해 줍니다. 

실행단추를 누르기 전에 미리 클립보드에 어떤 것을 복사해 놔야 합니다. 글자도 좋고 그림도 좋습니다. 

잘 모르겠으면 아무 창이나 띄우고 Alt+PrtScr을 눌러 주면 해당 창을 복사해서 클립보드에 저장이 됩니다.
이제 실행 단추를 눌러보면 스크립트가 있는 폴더에 yourclipboard.jpg가 저장되었다고 완료 메시지만 뜹니다. 실제로 스크립트가 있는 해당 폴더에 yourclipboard.jpg가 생성되었는지 확인합니다.

본인이 복사해 놓은 내용이 yourclipboard.jpg에 저장이 되어 있다면 정상적으로 수행된 것입니다

스크립트는 아래 파일을 참고하면 됩니다.

gdiptest.ahk
0.00MB



다음에는 이런 기초 지식이 있는 상태에서 기존에 작성한 프로그램중에서 미니탭에서 엑셀로 그래프를 복사해서 이동하는 스크립트를 업데이트해 보려고 합니다.

 

반응형