티스토리 뷰

반응형

안녕하세요 시벅이 입니다!

 

요즘 저만의 프로젝트를 하면서 바쁜 하루를 보내고 있습니다 ㅎㅎ 코로나로 집에만 있으니 이런 거 하나라도 해야죠!

흔히 디지털 막일이라고 불리는 일을 하고 있으며 이 일에서 매우 귀찮은 반복 작업이 있었습니다....

순서는 이미지 캡쳐 -> 정사각 이미지로 변환 -> 1000 X 1000 사이즈로 변경 작업이었습니다.

 

이러한 작업을 하루 이틀 해보니... 

비효율은 못 참지...

 

그래서 만들었습니다! 윈도우 정사각형 모양 이미지 캡쳐 및 저장 프로그램!

컴퓨터화면캡쳐프로그램
이미지 캡쳐 프로그램

이 프로그램에서 사용한 모듈은 PIL, pyautotui, keyboard, time 모듈입니다. 하나하나 사용 이유에 대해 설명해 보겠습니다.

 

  • pyautogui

pyautogui는 마우스의 좌표값과 화면 캡쳐를 위해 사용했습니다.

 

  • keyboard

keyboard는 마우스 좌표 인식 시작점과 끝점을 입력하기 위해 사용했습니다.

 

  • PIL (Image)

Image 함수는 캡쳐한 사진을 1000 X 1000 사이즈로 변경하기 위해 사용했습니다!

 

 

작동 방법은 다음과 같습니다.

 

파일 이름 입력 구간
파일 이름 입력 구간

  1. 저장하고 싶은 파일 이름을 입력합니다! n 버튼을 누르면 종료가 되게 만들었습니다.
  2. 화면으로 돌아가서 이미지 캡쳐 시작점에 마우스를 위치시킨 뒤 q를 눌러줍니다.
  3. 이미지 캡쳐 끝점에 마우스를 위치시킨 뒤 q를 눌러줍니다.
  4. 캡쳐 이미지 생성된 것을 확인할 수 있습니다!

생성된 캡쳐파일
생성된 캡쳐파일

한번 속성에서 픽셀 너비를 확인해 보면 1000 X 1000으로 되어있는 것을 볼 수 있습니다.

저장된 캡쳐파일 이미지 크기
저장된 캡쳐파일 이미지 크기

이렇게 손쉽게 1000 X 1000 화면 캡쳐 프로그램을 만들었습니다! 전체 스크립트는 아래 참고 부탁드립니다 ㅎㅎ

from PIL import Image
import pyautogui
import keyboard
import time


def main():
    while True:
        check = input("파일 이름을 입력하시오. (종료 원하면n): ")
        if check == "n":
            break
        filepath = f"./이미지모음/{check}.jpg"
        while True:
            if keyboard.is_pressed("q"):
                start = pyautogui.position()
                time.sleep(0.3)
                break

        while True:
            if keyboard.is_pressed("q"):
                end = pyautogui.position()
                time.sleep(0.3)
                break
        xx = start[0]
        yy = start[1]
        ww = end[0] - start[0]
        hh = end[0] - start[0]
        img = pyautogui.screenshot(filepath, region = (xx,yy,ww,hh))
        img_resize = img.resize((1000, 1000), Image.LANCZOS)
        if img_resize.mode != 'RGB':
            img_resize = img_resize.convert('RGB')
        img_resize.save(filepath)
        start, end = 0, 0


if __name__ == "__main__":
    main()

이상으로 컴퓨터 화면 캡쳐 프로그램 리뷰 마치겠습니다!

글 내용이 도움되셨다면 구독 또는 좋아요 부탁드립니다~

더 많은 정보와 리뷰를 원하시면 여기로!

모바일은 여기로!

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함