독학
[파이썬] 컴퓨터화면캡쳐 윈도우 10 정사각형 캡쳐 프로그램 만들기!
JC story
2021. 8. 16. 11:43
반응형
안녕하세요 시벅이 입니다!
요즘 저만의 프로젝트를 하면서 바쁜 하루를 보내고 있습니다 ㅎㅎ 코로나로 집에만 있으니 이런 거 하나라도 해야죠!
흔히 디지털 막일이라고 불리는 일을 하고 있으며 이 일에서 매우 귀찮은 반복 작업이 있었습니다....
순서는 이미지 캡쳐 -> 정사각 이미지로 변환 -> 1000 X 1000 사이즈로 변경 작업이었습니다.
이러한 작업을 하루 이틀 해보니...
비효율은 못 참지...
그래서 만들었습니다! 윈도우 정사각형 모양 이미지 캡쳐 및 저장 프로그램!
이 프로그램에서 사용한 모듈은 PIL, pyautotui, keyboard, time 모듈입니다. 하나하나 사용 이유에 대해 설명해 보겠습니다.
- pyautogui
pyautogui는 마우스의 좌표값과 화면 캡쳐를 위해 사용했습니다.
- keyboard
keyboard는 마우스 좌표 인식 시작점과 끝점을 입력하기 위해 사용했습니다.
- PIL (Image)
Image 함수는 캡쳐한 사진을 1000 X 1000 사이즈로 변경하기 위해 사용했습니다!
작동 방법은 다음과 같습니다.
- 저장하고 싶은 파일 이름을 입력합니다! n 버튼을 누르면 종료가 되게 만들었습니다.
- 화면으로 돌아가서 이미지 캡쳐 시작점에 마우스를 위치시킨 뒤 q를 눌러줍니다.
- 이미지 캡쳐 끝점에 마우스를 위치시킨 뒤 q를 눌러줍니다.
- 캡쳐 이미지 생성된 것을 확인할 수 있습니다!
한번 속성에서 픽셀 너비를 확인해 보면 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()
이상으로 컴퓨터 화면 캡쳐 프로그램 리뷰 마치겠습니다!
글 내용이 도움되셨다면 구독 또는 좋아요 부탁드립니다~
더 많은 정보와 리뷰를 원하시면 여기로!
모바일은 여기로!
반응형