IT(122)
-
#2 전자액자 프로젝트 - 사진보이기
지난번 포스팅에 이어서 오늘은 무엇을 해야 하나? https://sohyemin.tistory.com/706 #1 전자액자 프로젝트 얼마전에 '전자액자를 만들어볼까?' 하는 생각을 했었다. 한동안 애써 외면하다가 오늘은 필요한 사진이 있어 NAS를 뒤적이게 되었다. 사진이 엄청나게 많았고 찾고자 하는 사진을 찾는 것이 아 sohyemin.tistory.com 1. 화면사이즈를 읽어와야 한다. 그래야 모니터의 크기에 맞춰서 꽉찬 사진을 출력할 수 있다. 2. 프로그램의 타이틀바를 없애야 한다. 3. 이미지 사이즈를 화면에 맞게 줄여야 한다. 4. 이미지를 내가 원하는 화면 위치에 출력한다. 화면 사이즈 읽기는 생각보다 쉽다. geometry로 설정한 것과 상관 없이 winfo로 읽어올 수 있다. 다음은 윈..
2022.03.19 -
#1 전자액자 프로젝트 - 시작 / 슬라이드 쇼
얼마전에 '전자액자를 만들어볼까?' 하는 생각을 했었다. 한동안 애써 외면하다가 오늘은 필요한 사진이 있어 NAS를 뒤적이게 되었다. 사진이 엄청나게 많았고 찾고자 하는 사진을 찾는 것이 아니라 사진 감상을 하고 있었다. 그래서 다시 전자액자 프로젝트를 시작해 보려고 한다. https://sohyemin.tistory.com/672 전자액자, 파이썬, 라즈베리파이 잘 사용하지 않는 휴대용 모니터가 있다. 매직미러 프로젝트를 할 때 사용했었던 모니터다. 그리고 라즈베리파이도 있다. 이 둘을 이용해 전자 액자를 만들어보고 싶다는 생각이들었다. 차근차 sohyemin.tistory.com 우선 간단하게 Slideshow가 되는 소스코드를 GeeksforGeeks에서 찾아서 테스트를 해 본다. Python에서 ..
2022.03.18 -
파이썬 디컴파일 (python de-compile)
예전에는 역 어셈블링이라는 것이 있었다는 것이 갑자기 기억이 난건 python으로 개발 중이던 소스코드에서 github에 올리려고 준비하던 중에 실수로 .py 파일이 삭제되었고 휴지통에서도 찾을 수 없는 상태가 되었을 때다. 언젠가 python으로 만든 소프트웨어는 배포를 하게되면 소스코드가 누출이 될 수 있다는 글을 읽은 기억이 났다. 그래서 소스코드가 삭제되긴 했지만 복구할 수 있을 것이라는 기대감을 가지고 검색을 했다. 역시나 uncompyle6라는 것을 찾을 수 있었다. 이놈을 이용하면 pyc 파일을 py 파일로 복구를 할 수 있다고 한다. 다음과 같은 아주 간단한 명령으로 말이다. uncompyle6 .\DailyTest.cpython-37.pyc > DailyTest.py 그럼 pyc 파일이란..
2022.03.18 -
UART 사용하기
Arduino를 이용해서 Relay board를 제어하도록 만들었다. 그리고 PC와 UART 통신을 통해서 PC로 Arduino를 제어하고자 한다. Arduino에는 5v로 동작하는 16포트의 Relay가 달려있다. 이 기기를 PC에서 작동시키기 위해서 기본이 되는 UART 제어 루틴을 만들어 보고자 한다. 설치해야 하는 모듈은 다음과 같다. pip install pyserial UART를 읽는 코드와 읽고 보내는 루틴은 다음과 같다. Windows와 Mac에서 검증을 했다. import sys import time import glob import serial import serial.threaded from threading import Thread import datetime class sUART(..
2022.03.13 -
전자액자, 파이썬, 라즈베리파이
잘 사용하지 않는 휴대용 모니터가 있다. 매직미러 프로젝트를 할 때 사용했었던 모니터다. 그리고 라즈베리파이도 있다. 이 둘을 이용해 전자 액자를 만들어보고 싶다는 생각이들었다. 차근차근 준비를 해 보자. 사진은 나스 서버에서 불러오도록 해 보자. 검색결과 참고용 https://www.geeksforgeeks.org/create-a-sideshow-application-in-python/ Create a Sideshow application in Python - GeeksforGeeks A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and program..
2022.02.12 -
[Python / 프로그램 자동화] 외부 실행파일 실행시키고 화면 최대화하기
파이썬을 이용해서 업무를 자동화하는 프로그램을 만들기 위한 테스트 코드입니다. 배치 파일처럼 프로그램을 동작시키기 위해서는 특정 위치로 마우스를 움직여 Click이벤트를 발생시키거나 spy 툴을 이용해서 버튼을 누른 효과를 내야 합니다. 하지만 각각의 화면 Resolution이 다를 수 있기 때문에 화면을 최대화 하는 것이 쉬운 방법입니다. 그리고 이미 프로그램이 실행되고 있는 경우에는 Activation을 시켜 화면의 맨 앞으로 나오게 한 후에 최대화를 시키고, 실행이되고 있지 않다면 실행을 한 후에 최대화를 합니다. 두 경우 모두 화면 최상단으로 올라오기 전에 호출 될 수 있으므로 2초의 sleep을 둡니다. 주석처리된 subprocess를 이용해 프로그램을 실행하게 되면 해당 프로그램이 종료될 때까..
2022.01.10 -
[python/pywinauto] cmd.exe에서 출력 읽기
윈도우에서 작업을 자동화하기 위해서 준비 중이다. 작업 중에서는 console을 열고 명령을 실행할 경우가 있을 것 같아서 cmd.exe를 실행해서 명령어를 실행하고 그 결과를 어떻게 읽을 수 있을지 고민을 했다. pywinauto를 이용해서 cmd를 실행하는 것은 쉽게 할 수 있었는데 console output을 어떻게 읽어야 할 것인지 방법을 찾기가 쉽지 않았다. 라인을 console에서 읽는 것도 방법이 되겠지만 command를 re-direct하여 text 파일을 읽는 방법으로 구현하면 쉽게 그 결과를 읽을 수 있을 것 같아 다음과 같이 간단한 테스트 프로그램을 만들었다. from pywinauto import Application from pywinauto import keyboard app =..
2022.01.07 -
파이썬 배열의 기초
test = [] test.append((44,55)) test.append((55,66)) print("==========배열에 추가하기 - append ===========") print(len(test), test) test.pop(len(test)-1) print("===========배열에서 빼기 - pop ==============") print(len(test), test) test.append((345.34, 2355.44)) print("=========append & pop=====================") print(len(test), test) print(str(test)) test.pop(len(test)-1) test.pop(len(test)-1) print(len(tes..
2021.12.15 -
파이썬 - 투명한 배경을 가진 이미지를 PDF로 저장하기
import img2pdf from PIL import Image im = Image.open("../Resources/tmp/trans.png") bg = Image.new("RGB", im.size, (255,255,255)) bg.paste(im,im) bg.save("../Resources/tmp/trans.jpg") with open('../Resources/tmp/trans.pdf', "wb") as ff: ff.write(img2pdf.convert('../Resources/tmp/trans.jpg')) 투명한 배경을 가진 이미지를 img2pdf를 이용해서 pdf로 저장하는 루틴이다. 여기서 trans.png 파일은 alpha channel을 가지고 있어 배경이 투명하다. 이 파일을 img2..
2021.12.15 -
Python / Image to PDF
Python에서 Image를 PDF로 저장하는 방법을 검색해 보면 다양하게 찾을 수 있다. 하지만 내가 원하는 것은 PDF에 이미지를 담아 출력하면서 DPI를 같이 출력하기를 원했다. pdf2image부터 다양하게 사용을 해 왔었는데 DPI를 같이 저장한 경우는 없었고 지금 개발 중인 프로그램에서는 PIL과 reportlab을 사용 중이었다. 생각보다 인터넷에 자료가 많지는 않았다. PIL은 좋기는 한데 RGBA를 PDF로 저장할 수 없다는 메시지가 떠서 reportlab을 잠시 사용을 했다. 하지만 저장하는 이미지의 dpi가 원본은 150인데 72로 바뀌어 저장이 되었고 resolution은 그대로 였다. 큰 문제는 아닐 수 있으나 Client가 바꿔달라고 하기에 방법을 찾았다. 다만 RGBA로 저장할..
2021.10.29