Retro Game & PC/매뉴얼 팁 작업

작은별 도트프린터 출력 흉내내기

smores 2021. 3. 19. 19:36

자꾸 과거의 추억만 반추하는 것 보니 늙었나봅니다. -_-

 

앞서서 애플2 사랑의 별점에 대해 몇개의 글/질문을 올렸었습니다. 아직 해결 못한 것 중 하나는 프로그램의 에러 수정이고요. 새로 해 본 것은 도트프린터 출력을 흉내내서 postscript, pdf 를 만들어 봤습니다. 일단 그림으로 먼저 보여드립니다.

 





 

기본 개념은 앞서 AppleWin 에서 출력한 N 바이트 파일을 크롬 브라우저 익스텐션인 HanAutomata 로 일단 윈도우 기본 완성형(?)으로 변환한 다음 간단한 코드 컨버전 프로그램(C++)으로 조합형으로 바꾸었습니다. 그리고 파이썬으로 아주 간단한 프로그램을 작성해서 24x24 한글폰트 및 12x24 영문폰트 읽어들인 후 조합형 파일을 바이트단위로 분석해서 해당되는 폰트를 선택하고 이를 postscript에 하나의 도트에 해당하는 원의 좌표값을 출력 파일에 내보냅니다. 화면이 아닌 가상 종이상의 좌표로 보낸 셈이죠. 다음에 제가 일할때 쓰려고 만들어 둔 간단한 postscript 유틸리티로 각각의 좌표에 조그만 원을 하나씩 그려서 프린터 토트를 흉내냈습니다. 너무 완벽한 원이어서 조금 그렇기는 하지만 이것을 프린터로 다시 출력하면 적당히 찌그러지길 기대합니다. 이렇게 출력된 postscript 파일은 ghostview 등으로 볼 수 있고, 역시 ghostview를 이용해서 pdf 로 변환할 수도 있습니다.

 

제 실력이 부족하고 짧은 시간에 급조한 프로그램이라 여러 페이지가 한꺼번에 한 파일에 들어가는 것이 아니라 페이지 단위로 별도의 ps 파일로 내보냈습니다. :(

 

비록 종이 사이즈는 다르지만 예전 80컬럼 프린터의 추억을 생각해서 좌우는 80컬럼으로 제한하였고 상하는 대략 라인간 피치를 5.4 mm (한글 하나의 크기는 4.4 mm x 4.4 mm) 로 했더니 제 유틸리티 프로그램을 쓸 경우 50 라인을 넣을 수 있더군요. 하지만 최종적으로 프린팅 하게 되면 아마도 레터지 기준의 좌우 여백을 A4로 바꾸면서 스케일링 등을 하면서 글자 크기가 약간 달라질 수도 있을 것 같습니다. 실제 잉크젯 또는 레이저 프린터로는 아직 출력해 보질 않아서 어떻게 보일지 잘 모르겠네요.

 

화면상으로 볼 경우는 만들어진 ps 파일을 텍스트 에디터로 열어보면 맨 위의 24-26 라인에 원 (사실은 타원) 그리는 정의가 있는데 첫 두 변수가 가로/세로의 반경입니다. 이것을 조절하면 출력이 더 흐려보이거나 진해보일수도 있게 조절 가능합니다. 도트 위치는 일정하므로 도트 사이즈에 따라 overlap 되거나 서로 간격을 두고 떨어지거나 하는 셈입니다.

 

/ft1 {

0.115 0.115 0 360 ellipse 0 0 0 setrgbcolor fill

} def

 

혹시나 저처럼 실없는 짓에 관심이 있는 분들을 위해 일한 내용들을 압축해서 올려놓도록 하겠습니다.

 

덧1) Apple2 Forever ~~~  (누군가 별점 프로그램 버그 고쳐주시길 기원하며...)

 

덧2) 참고로 C++은 Borland C++ 5.5 커맨드라인 컴파일러 사용했고 Python은 2.7.3 사용했습니다.

 

덧3) 글 올릴때 마다 어느 카테고리에 넣을지 망설여지는 글들이 있습니다. 필요하다면 카페 매니저님께서 적절한 곳으로 옮겨주세요.

 

ks2tg.zip
0.07MB
mimic-dotprinter.zip
8.22MB

'Retro Game & PC > 매뉴얼 팁 작업' 카테고리의 다른 글

MAME 로 Apple II 에뮬레이션하기  (0) 2022.03.29
dosbox CRT scan mode  (0) 2022.03.28
작은별 도트프린터 출력 흉내내기  (0) 2021.03.18
Active GS joystick keys  (0) 2020.10.20
PRODOS  (0) 2020.10.20