매크로

  • 출석 포인트는 로그인시 자동으로 부여됩니다.
  • 11월 1일부터 엑스퍼트 게시판은 Lv2 이상으로 운영됩니다. (신규 개설 게시판은 제외)
  • 도배 및 의미 없는 어뷰징글은 시간이 걸려도 강력 제재합니다.
조회 수 57 추천 2 댓글 0

;------------------------------------------------------------------------------------------

; 이미지 필터링 효과 스크립트...

;

; http://lodev.org/cgtutor/filtering.html 

;

; 위 사이트의 C++ 소스코드를 오토핫키 스크립트용으로 컨버젼 해봤습니다.

; 역시 오토핫키로는 엄청나게 느려서 써먹진 못할듯 합니다.

;

;------------------------------------------------------------------------------------------




Ko11BNc.png  


PjnCAVO.png





#SingleInstance Force

#include gdip.ahk  ;https://autohotkey.com/board/topic/29449-gdi-standard-library-145-by-tic/


srcImageFile = 1.png

outImageFile = 2.bmp

filter := [1,  1,  1

          ,1, -7,  1

          ,1,  1,  1]


gdipToken := Gdip_Startup()

if pBmpSrc := Gdip_CreateBitmapFromFile(srcImageFile)

{

  if pBmpOut := ImageFilterCore(pBmpSrc, filter)

    Gdip_SaveBitmapToFile(pBmpOut, outImageFile), Gdip_DisposeImage(pBmpOut)

  Gdip_DisposeImage(pBmpSrc)

}

Gdip_Shutdown(gdipToken)

MsgBox, 테스트완료

ExitApp



;filter = {w,h, factor, bias}

ImageFilterCore(pBitmap, filter)

{

  if !pBitmap or !IsObject(filter) or !filter.MaxIndex()

    return


  factor := filter.factor? filter.factor:1.0

  bias := filter.bias? filter.bias:0.0

  filterW := filter.w? filter.w: filter.h? filter.MaxIndex()//filter.h:Round(Sqrt(filter.MaxIndex()))

  filterH := filter.h? filter.h: filter.w? filter.MaxIndex()//filter.w:Round(Sqrt(filter.MaxIndex()))

  

  if (filterW * filterH > filter.MaxIndex())

    return


  imageW := Gdip_GetImageWidth(pBitmap)

  imageH := Gdip_GetImageHeight(pBitmap)

  if !imageW or !imageH

    return


  pBmpOut := Gdip_CreateBitmap(imageW, imageH)

  If Gdip_LockBits(pBitmap,0,0,imageW,imageH,StrideSrc,ScanSrc,DataSrc)

    return

  If Gdip_LockBits(pBmpOut,0,0,imageW,imageH,StrideOut,ScanOut,DataOut)

    return


  loop % imageW

  {

    x := A_Index - 1

    loop % imageH

    {

      y := A_Index - 1

      red := green := blue := 0.0

      loop % filterH

      {

        filterY := A_Index - 1

        loop % filterW

        {

          filterX := A_Index - 1

          

          imageX := Mod(x - filterW//2 + filterX + imageW, imageW)

          imageY := Mod(y - filterH//2 + filterY + imageH, imageH)

          Gdip_FromARGB( Gdip_GetLockBitPixel(ScanSrc, imageX, imageY,StrideSrc) , cA, cR, cG, cB)

          red += cR * filter[filterY * filterW + filterX + 1]

          green += cG * filter[filterY * filterW + filterX + 1]

          blue += cB * filter[filterY * filterW + filterX + 1]

        }

      }

      cR := factor * red + bias, cG := factor * green + bias, cB := factor * blue + bias

      cR := cR<0? 0: cR>255? 255: cR, cG := cG<0? 0: cG>255? 255: cG, cB := cB<0? 0: cB>255? 255: cB

      Gdip_SetLockBitPixel( Gdip_ToARGB(0, cR, cG, cB) ,ScanOut,X,Y,StrideOut)

    }

  }


  Gdip_UnlockBits(pBitmap,DataSrc)

  Gdip_UnlockBits(pBitmap,DataOut)

  return pBmpOut

}




List of Articles
분류 제목 글쓴이 최근변경 날짜 추천
자유 오토핫키 입문자 유용 정보 피카부 2016.11.25 2016.11.25 1/0
질문 녹스 또는 미뮤에서 이미지 서치 후, 클릭 new sunsion 4 시간 전 2017.06.25 0/0
질문 녹스 매크로 화면비율 설정 문의드립니다. new 다크템플러 20 시간 전 2017.06.24 0/0
질문 오핫 우회관련 질문합니다!! 1 OEOCOAO 2017.06.21 2017.06.21 0/0
질문 Gui tab 관련 질문 드립니다. 2 가족오락관 2017.06.21 2017.06.19 0/0
질문 스크립트 몇초간 일시정지하는 기능 질문 1 sontim 2017.06.18 2017.06.18 0/0
질문 라디오버튼에 따라 sleep 값 조정 1 Skiinny 2017.06.18 2017.06.17 0/0
이미지 필터링 효과 스크립트... 와이로 2017.06.17 2017.06.17 2/0
질문 비활성 마우스 클릭 질문입니다. 1 쌈빡빽쑤 2017.06.16 2017.06.16 0/0
질문 이미지 서치 질문드립니다.. 굴착꾼시몬 2017.06.16 2017.06.16 0/0
질문 N사 M게임 우회 질문 드립니다. 헤흐히히 2017.06.15 2017.06.15 0/0
질문 요즘은 오토핫키 오버워치 에임핵 다 막혔죠? 스탠리베이 2017.06.15 2017.06.15 0/0
자유 프로그래밍이 처음이신분들은 여기 참고해보세요 Allyce 2017.06.14 2017.06.14 0/0
질문 한창 공부 중인데 추천 해줄만한 책 있나요?? Minuya 2017.06.13 2017.06.13 0/0
질문 여기서 이런 질문을 드려도 될지는 모르겠지만 아마 저... 생존자8 2017.06.13 2017.06.13 0/0
질문 ADB관련 이미지삭제 고수님들에 도움이 필요합니다 (__) 2 도시가스보일러 2017.06.16 2017.06.13 0/0
질문 안녕하십니까 굇수님들 질문하나만 드리겠습니다, 비활... 1 이코노뮉승 2017.06.12 2017.06.12 0/0
질문 WinHttp로 정보를 받아왔을때 한글이 깨져서 나옵니다 2 여의도김매력 2017.06.12 2017.06.12 0/0
질문 여러계정 로그인 무한반복 2 작은이득 2017.06.12 2017.06.11 0/0
질문 이미지서치 기다렸다가 클릭하는법 2 작은이득 2017.06.12 2017.06.11 0/0
질문 정말 간단한 한곳클릭하는 비활성 메크로 짜봤는데 동... 데프픗 2017.06.11 2017.06.11 0/0
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 122 Next
/ 122

전체 최신 인기글

전체 주간 인기글

테일스타 공지