본 블로그는 까마귀가 사용하는 브라우저에서 가장 이쁘게 보입니다.
Permalink: http://blog.crows.kr/4932520

 우선 시작하기 전에 이 방법은 절대로 다른 곳으로 퍼가는 것을 원치 않습니다. 다른 블로그 및 마비노기 타임즈, 디씨 마비노기 갤러리 전부 포함해서 말입니다.

 기존에 공개 됐던 방법 들은 보내기 위해서 임시 저장하는 파일을 임의의 파일로 만들어두고 읽기전용으로 바꿈으로해서 전송시에 새로운 파일이 기록되지 않고, 이전의 파일이 전송되게 하는 방법이었습니다. 컬러로 전송이 가능하지만 문제는 가져오기로 저장이 불가능 하다는 것인데요. 가져오기를 사용하려면 마비노기에서 지원하는 이미지 포맷의 특성을 잘 알아야만 합니다.

 이미지 포맷의 특성은 밑에 썼었던 글에서 잘 나와 있으니 추가 설명은 생략합니다.

 문제는 이 포맷을 저장할 수 있도록 해주는 프로그램이 거의 없다는 점에서 시작합니다. 물론 이 글을 쓰는 시점을 생각해보면 찾았다는 것이겠죠. 위 링크의 최하단에 위치하는 이미지의 특성을 보면 유저 고유ID와 닉네임 부분이 압축된 텍스트로 추가되어 있다고 되어있습니다. 이 부분 때문에 해야할 단계가 하나 더 늘어난 것이 되죠.

 필요한 프로그램은 진행하면서 그때그때 소개하도록 하겠습니다.

e0038774_482049b624794.jpg
 이 이미지를 사용해서 만드는 방법을 소개합니다.

 우선 포토샵을 이용하여 이미지를 불러옵니다. 이미지를 Layer Form으로 바꾸어준 다음에 흰색이 만들어지지 않도록 검은색 바탕 레이어를 만들어서 투명도를 조절하여, 변환했을 때 흰색이 나오지 않도록 조절합니다. 이 부분은 경험이 필요한 부분으로 딱 어느색이라고 할 수도 없고 4레벨 그레이컬러로 바꿀 때에 다르게 바뀔 수도 있는 부분이라 딱히 어느 정도까지 해야한다고는 말 할 수 없겠네요.
shot1253.jpg

 256x96으로 이미지 영역을 지정하여 새 파일을 만들고 붙여넣습니다. 256x96와 같은 비율이 되도록만 하면 됩니다. 후에 이미지 리사이징을 해주면 되니까요. 이미지를 붙여 넣으면 Image → Mode에서 Grayscale을 선택합니다. 그러면 다음과 같은 이미지가 만들어집니다.
shot1254.jpg
 그레이스케일로 바꾸어주는 이유는 컬러상태로 저장할 때에는 완벽한 4레벨 그레이컬러를 만들어 내지 못합니다. 갈색이나 기타 다른색으로 인덱싱 될 수도 있거든요. 사실상 그렇게 사용하더라도 문제는 없지만 가져오기로 불러온 후 전송할 때는 그레이스케일이 되어 전송되니 색을 입히지는 못합니다. 여기서 한가지 알아두셔야 할 점은 마비노기 그림대화는 대화 풍선에서 보일 때에는 흰색은 투명처리를 한다는 것입니다. 즉, 다르게 말하면 사용할 수 있는 색은 흰색을 제외한 나머지 3개 밖에 쓰지 못한다는 것과 같죠. 그래서 흰색을 완전히 없애기 위해서 위의 단계를 거치는 겁니다. 가져오기가 가능한 이미지를 만들기 위해서는 이런 불편함도 감수하는 수 밖에 없습니다.

 File → Save for Web & Devices...로 가서 PNG-8을 선택하신 후 Colors를 4로 맞춰주세요. 사용할 색을 4개로 한정한다는 의미입니다. Dither는 이미지가 어떻게 보이는지 고민해가면서 조절하시면 됩니다. 이미지의 색이 복잡한 경우에는 Diffusion, Pattern, Noise 를 번갈아 가면서 어느게 깔끔하게 보이는지 확인하시면 됩니다. 그리고 제일 중요한 이미지 리사이징을 여기서 해주면 되는데요. 이 단계 이전에 리사이징을 했다면 안해도 됩니다. 다 완료가 되었다면 PNG 파일로 저장합니다. - 여기서 용량을 조절하지 않는 이유는 4레벨 그레이스케일에서는 아무리 용량이 커져도 10kb는 절대 나오지 않기 때문에 용량은 신경 안써도 되기 때문입니다.
shot1255.jpg

 이번 단계에서는 이 이미지를 2비트 PNG로 바꾸는 작업을 합니다. 우선 이 프로그램부터 받아서 적당한 곳에 압축을 풀어두세요. pngcrush-1.6.15-win32.zip 압축을 푼 폴더에 바로 윗 단계에서 만들어진 PNG 파일을 복사해두고 커멘드 라인으로 다음과 같이 명령어를 써줍니다.

pngcrush -bit_depth 2 입력파일 출력파일
입력파일은 이전 단계에서 만든 파일명
출력파일은 변환하여 출력될 파일명

 그러면 다음과 같은 2비트 PNG파일이 만들어집니다.
chat_20090501_000001_웨더.png

 일단 여기까지 끝나면 이미지를 만드는 과정은 다 끝난겁니다. 하지만 이대로는 가져오기에서 불러오기가 되지 않습니다. 처음에 글을 쓰기 시작할 때 해야할 단계가 하나 늘었다고 했던 부분이 있었죠. 이제 해야할 단계는 고유ID와 캐릭명을 넣어야 하는 단계입니다.
 이 단계에서는 또 다른 프로그램이 사용됩니다. tweakpng-1.2.1.zip 적당한 곳에 압축을 푸신 후에 실행을 하시고, 바로 이전 단계에서 만들어진 출력파일을 불러옵니다. 그러면 다음과 같은 화면을 볼 수 있는데요.
shot1256.jpg
 여기서 tEXt로 삽입되어 있는 텍스트 값[Adobe ImageReady]은 필요없습니다. 지워버리세요. 그리고 컨트롤+T를 눌러서 새로운 텍스트 항목을 만듭니다. 첫 번째로 만들 값은 authid로 이름을 만드시고 Compressed를 체크해줍니다. 그리고 고유ID를 넣으면 되는데, 이 때 들어갈 값은 자신의 캐릭터로 그림대화를 해서 만들어진 파일에서 알아 낼 수 있습니다. 이 프로그램으로 열면 바로 보이죠. 그리고 두 번째로 같은 방법으로 컨트롤+T를 눌러 텍스트를 만들어주고 이름은 author로 하시고 값은 캐릭명으로 하시면 됩니다. 여기서 주의하실 점은 Author라고 미리 만들어진 값이 있는데 이 값을 쓰면 안됩니다. 이렇게 추가하고 나면 위 데이터들의 순서를 맞추어주어야 합니다. 새로 추가된 텍스트 바로 위에 있는 IDAT항목을 선택한 후 알트+아래방향 키를 사용하여 IEND 바로 위까지 옮깁니다. 그냥 두 번만 눌러주면 되죠.
shot1257.jpg
 이 파일을 저장해 주시면 파일은 완성입니다.

 그런데 아직 한 단계가 남았습니다. 불러오기를 하려면 파일 이름도 형식에 맞아야합니다. 파일 이름 형식은 간단한데요. 다음과 같은 규칙만 따르면 됩니다.

chat_날짜_시간_캐릭명.png
날짜는 년월일의 순서로 8자리의 숫자이며,
시간은 24시 표기법을 사용한 시간으로 시간분초를 구분하지 않고 붙여서 씁니다.
캐릭명은 그림을 그린 캐릭명으로 이전 단계에서 author에 입력한 캐릭명과 동일하면 됩니다.
예) chat_20090501_000000_웨더.png → 불러오기에서 2009년 5월 1일 0시 0분 0초에 그린 그림이라고 나옴

 이 규칙에 맞게 저장하고 내 문서 ▶ 마비노기 ▶ 그림대화 폴더로 복사하면 가져오기에서 다음과 같은 이미지를 볼 수 있습니다.
mabinogi_2009_05_01_001.jpg
 그러면 이제 다른 사람들 앞에가서 가져오기를 써보세요. 아주 잘 표시가 될겁니다. 자신의 이름도 찍혀있기 때문에 다른 사람이 저장해서 사용한다고해도 이름이 박혀있으니 누가 만든건지 바로 알 수 있습니다.

 마비노기의 그림대화는 특성상 한번 만들어진 파일을 복제 전송하기 때문에 최초에 이름을 박아넣은 그림은 가져오기를 몇 번을 하더라도 처음 그림을 그린[만든]사람의 닉이 그림에 항상 박혀있는 구조입니다. 다른 이름을 넣고 싶다면 점 하나라도 찍어서 수정해야하죠. 그런데 대부분의 경우에는 수정은 안할테니 그냥 자기껀 자기 이름 박혀서 계속 보인다고 생각 하면 될겁니다.

 

 위 과정 중간에 발생되는 문의 점은 추가로 답해드리지는 않습니다. 순서대로만 하면 다 할 수 있으니까요.
 이 방법의 공개로 추후에 그림대화 전송 방법이 변경된다고 해도 책임지지 않습니다.

이 글은 스프링노트에서 작성되었습니다.



by 까마귀 | 2009/05/02 01:22 | 놀던이야기 | 트랙백 | 덧글(50) | Top
트랙백 주소 : http://blog.crows.kr/tb/4932520
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 사상 at 2009/05/02 02:15
음.. 그림 파일들이 왜 전부 엑박일까요 ㅠㅠ
Commented by 까마귀 at 2009/05/02 02:20
이미지가 첨부되어 있던 글이 비공개 였던 것 때문에 이미지가 안나왔었는데 공개해서 이제 나올겁니다.
Commented by at 2009/05/02 03:31
음 도스창에서 저 프로그램 실행하는 명령어는 뭔가요?
Commented by 까마귀 at 2009/05/02 03:33
본문에 써있는 그대로 하면 됩니다.
Commented by at 2009/05/02 03:38
pngcrush는 내부 또는 외부 명령, 실행할수있는 프로그램, 또는 배치파일이 아니라는군여 ㅠ 왜이래에엥 여기서 막히넹
Commented by 에리카 at 2009/05/02 07:18
하....한글판은..............(털썩)
Commented by Gollangel at 2009/05/02 08:41
질문드립니다. 저는 2비트로 변환이 돼질 않는군요.

명령어가 -bit_depth 다음에 2를 써넣어야 2비트 png가 될것인데

2를 써넣으면 명령어가 먹히질 않습니다;;;

2를 넣지 않고 공백으로 저대로 진행하면 당연히 용량만 줄어서 나옵니다 [...]

이거 왜 이런걸까요.
Commented by 마갤에서 왔습니다 at 2009/05/02 08:53
아아악 밤중에 들엇느데 결국 안대
Commented by 아르케인 at 2009/05/02 17:24
오오오 이거 엄청난 팁이군요!!! 이런걸 다 찾아내시다니... 정말 존경스럽습니다... ;ㅁ;
이 방법 잘쓰도록 하겠습니다!!!!
Commented by 아르케인 at 2009/05/02 17:27
배발 1. 참 pngcrush 알집으로 풀려니까 파일이 깨지더군요. WinRAR로 푸니까 잘되네요
뱀발 2. pngcrush -bit_depth 2 입력파일 출력파일 할때 확장자까지 써야되더군요;; 이거 때문에 좀 헤맸습니다;;;;
예) (바꾸려는 파일 이름이 input.png고 바꿔서 나올 이미지 이름을 Outcome.png로 하려할때 C:\pngcrush -bit_depth 2 input.png outcome.png
Commented by 까마귀 at 2009/05/02 17:36
1. 알집 자체가 원래 압축 풀 때문제가 많습니다. 가급적이면 안쓰는게 좋죠.. 압축 알고리즘도 안좋아서 광고조차 없는 7-Zip보다 압축률이 극도로 떨어집니다. 속도도 느리구요.
2. 입력파일에 대해서는 확장자까지 입력을 해주어야합니다. 출력파일은 별 신경 안쓰셔도 될겁니다. 단지 이미지 파일로 쓰기 위해서는 확장자를 붙여줘야되니 나중에 이름 바꾸는 것보다 아예 제대로 다 넣어주는게 편한거죠.
Commented by 셸렉 at 2009/05/02 20:58
pngcrush실행하면 검으화면 잠깐 떳다가 사라지는데 왜그런거죠?
Commented by 까마귀 at 2009/05/02 21:27
콘솔 프로그램은 윈도우 프로그램처럼 폼을 가지고 있지 않기 때문에 바로 실행되고 종료됩니다. 위에 써둔 것처럼 커맨드 라인 명령을 사용해야만 하죠.
Commented by 로긴 at 2009/05/02 22:22
이제 막힌듯 싶은데 ...
계속 시도해봐도 안되네요 ;;
Commented by 까마귀 at 2009/05/02 22:41
정상적으로 사용가능합니다. 이 방법은 막을 수가 없거든요. 마비노기의 그림대화 시스템을 통채로 바꾸지 않는 이상은 지속적으로 사용 가능합니다.
Commented by 으악 at 2009/05/03 01:06
tweakpng 사용했을때 이전 파일불러오면 gAMA 라는 파일도 같이 나오는데 이것도 삭제해야하나요?
Commented by 까마귀 at 2009/05/03 08:29
위에 없는 값은 다 지우면 됩니다.
Commented by 마갤러 at 2009/05/03 01:41
웹용으로 저장을 누르면 화질이 극악으로 떨어지는데 저 예시 사진은 매우 깔끔하네요...어떻게 해야하나요?
Commented by 까마귀 at 2009/05/03 08:31
예시로 사용한건 일부러 색이 많이 사용되지 않은 이미지로 했습니다. 그리고 디더링을 하지 않았죠. 디더링을 해야만 깨끗하게 보이는 이미지가 있는가하면, 그렇지 않은 경우도 있어서 잘 맞춰줘야합니다.
Commented by 백아곰 at 2009/05/03 04:42
ㅠㅠ 저역시 tweakpng를 사용했을 경우에 감마라는 이름의 파일이 함께 나오네요
이걸 지워보기도 하고 그냥 냅둬보기도했는데 두경우 다 실행이안되는걸로봐서는 여기가 문제인 것 같은데 해결할 수 있는 방법이 있을까요? 잘못한 부분은 없다고 생각했는데 왜그런지 모르겠네요ㅠㅠ
Commented by 까마귀 at 2009/05/03 08:33
gAMA라는 값은 이미지의 감마값을 지정해둠으로해서 디스플레이이간 밝기의 차이를 줄일 수 있도록 삽입되는 값입니다. 그런데 프로그램에서 자체적으로 감마값을 사용한다면 무의미하기 때문에 없어도 무방합니다.
일단 이 값은 필요없는 값이기 때문에 지워야합니다.
Commented by 잉여룬다사람 at 2009/05/03 04:49
본문의커맨드라인 명령프롤로트에서 막히네요
pngcrush파일은 머 실핼,배치어쩌구안된다고계속뜨는 이상황
이거만 어찌풀면 나중은 뭐...
ㅁ...
슬프네여,.
Commented by 까마귀 at 2009/05/03 08:34
저 단계에서 힘들어 하시는 분들이 좀 있으신것 같은데요. 배치 파일이나 콘솔 명령 파일을 만들어 쓰면 간단히 해결할 수 있습니다. 메모장에 명령어를 쓰시고 확장자를 cmd 혹은 bat로 저장하셔서 같은 폴더 안에서 실행하세요.
Commented by 코우에 at 2009/05/03 10:02
우왓 명령프롬로트에서 막혔지만 제 명령어 미스로 30분 헤맷어요 ;ㅅ;
랄까 쓰고나니 굉장하더군요!!! 'ㅅ'
Commented by ㅇㅅㅇ at 2009/05/03 12:01
명령프롬토콜 사용방법
시작-실행-cmd
도스창 뜨면
cd 그림있는경로
그림있는경로에 간후 위와 같이 실행
Commented by ㅇㅅㅇ at 2009/05/03 12:02
참고로 명령프롬토콜도 붙여넣기 됩니다.
컨트롤+V 가 아니고
마우스 오른쪽클릭후 붙여넣기입니다.
경로 편하게 할수있다죠 ㅋㅋ.
Commented by 34 at 2009/05/03 21:44
위와같이실행이 자세히 어디서부터인지..ㅠㅠ
Commented by \'ㅅ\' at 2009/05/03 13:26
랄까...
저걸 풀동영상으로 해주신다든지
명령프롤로트부분도 스샷을보여준다든지하면
엄청좋겟는데 말이죠..

으ㅏㅏㅏㅏㅏ...
Commented by lieun at 2009/05/03 20:21
ㄴ...너무어렵네요ㅠㅠㅠㅠㅠㅠㅠ
윗분말에 공감...........
Commented by Elohim at 2009/05/03 23:21
그리고 실행에서 막히시는 분들~
실행→cmd 하시면 명령프롬포트 작업을 할 영역이 표시되어있을겁니다.
제 경우를 예로 들자면 현재 위치가 아래와 같이 표시되어 있거든요.

ex) C:\Documents and Settings\cheng_com>

라고 뜨는데요, C드라이버 안에 있는 Documents and Settings폴더 안에 cheng_com이라는 폴더가 현재 위치인겁니다. 아마 각자 컴퓨터에 따라 다르게 뜨겠지요;
압축 푸신 pngcrush폴더가 cheng_com폴더 안에 위치해있어야 합니다.

잘라내기를 하든 붙여넣기를 하든 각자 현재 위치 안에 pngcrush폴더를 넣으시고,
이제 입력을 해봅시다. cd /pngcrush 하시고 엔터.
(이때 cd뒤에 한칸 띄우셔야 합니다. /뒤에는 pngcrush.exe가 들어있는 폴더 이름이 와야겠죵.
전 편의를 위해 그냥 pngcrush뒤에 붙은 잡다한 이름을 지워버렸습니다;)

그리고 까마귀님이 알려주신 명령어를 입력해봅시다.
이때 입력파일 출력파일명은 뒤에 .png라는 확장명까지 꼭 써주셔야해요.

*아마 각자 압축파일 푸신 위치가 다를것이고,
보통 폴더가 하나 생성되도록 압축파일을 풀지 않을까해서 올린 댓글입니다.
제가 그렇게 해서 실행과정에서 좀 헤맸거든요;;
그냥 폴더없이 파일만 생성되도록 압축 푸셨다면, 그 실행파일만 C드라이브의 해당 작업영역에 옮기시고
바로 본문에 나와있는대로 실행하시면 될거예요
Commented by 나나키 at 2009/05/04 20:15
그림을 수정해도 '가져온' 것이라면 처음 만든 사람의 이름이 박히더군요 ㅎㅎ;
Commented by 까마귀 at 2009/05/04 20:22
빈 그림이면 현재 유저 정보를 기록하고 가져오기 하면 파일에 있는 유저 정보를 가져오더군요. 본문 내용에 이 내용이 잘 못 되어 있기는한데 짧은 부분이고해서 수정 안하고 있었습니다. 원본도 수정하려니 귀찮더라구요...;
Commented by 루딘 at 2009/05/05 05:25
설명대로 전부다하고 그림대화 폴더에 넣었으나
어찌하여 가져오기에는 데브캣뿐인고..
Commented by 낭만파 at 2009/05/05 12:26
ㅋㅋㅋ 와 정말 잘되는데요?

그런데 궁금한게 제가 하면 까마귀님 그림처럼 저렇게 깔끔하게 안나온다는거지요.

그리고 저희집 포토샵 화면과 다르네요? 전 7.0버젼인데

더 높은 버젼을 써야 좋은가요?
Commented by 까마귀 at 2009/05/05 12:31
일단 제가 사용한 버전은 CS4입니다만 딱히 버전에 따라서 다른점은 없습니다. 고급 기능들의 차이일 뿐이지 이런 단순한 기능은 그 이하 버전에서도 별반 다르지 않으니까요.
이미지를 깔끔하게 저장하는건 선택한 이미지와 디더링을 알맞게 선택하는 것에 달려있습니다. 디더링을 해야만 좋게 보이는 경우도 있고 반대로 그렇지 않은 경우도 있거든요.
Commented by \\\'ㅅ\\\' at 2009/05/05 14:12
지금 다햇는데 이상하게 가져오기부분에서 안불러와지네여 으아..
도데체 어디서실수한거지 [..]
Commented by ㅇㅅㅇ at 2009/05/07 14:53
저도 다 잘했는데 가져오기가 안돼는군요..
파일명도 제대로 썼는데..
Commented by 까마귀 at 2009/05/07 15:54
불러오기가 안된다면 과정 중 제대로 안된 부분이 있는겁니다. 차근차근 한 단계씩 확인해 보시면서 하세요.
Commented by ㅇㅅㅇ at 2009/05/08 16:07
우와...좀전에 성공햇습니다...
인증아뒤가 뭔가 했내요....그냥 자기가 아무거나 그리고 임시저장한다음 그걸 불러와서 거기잇는걸 복사한다음 하니 되내요...이때까지 데브그림에 잇는 인증아뒤로만 했으니 실패했을수밖에...
Commented by 페이트202 at 2009/05/08 17:34
고유id가 뭔가요...
Commented by ㅇㅅㅇ at 2009/05/08 18:26
자신이 그린 그림을 tweakpng 이걸로 불러옴니다 그러면 자신 캐릭터 이름과 다른건 숫자가잇을껀데
그 숫자가 고유id입니다
Commented by 위위위 at 2009/05/09 12:08
잘 되는되요,, "가져오기" 해서 그림을 불러온담에 그 그림에 수정을 하면
왜 "보내기"했을때 안될까요..
어떤건 되기도 하는데 대부분 안되네요;
Commented by 필드보스 at 2009/05/12 17:04
룬다 토미루 그 씹덕은 처음에 이 방식 소수만 알게 한답시고 다른 네임드들을 쫒아내고 지세상인마냥 깝쳐서 참 보기 싫었음
Commented by \' ㅇ\' at 2009/05/13 16:55
와...디게 깔끔하게 되네요.쟤가 한건 심하게 깨져서 나오던데...뭐가 문젠지..
Commented at 2009/05/14 16:50
비공개 덧글입니다.
Commented by 끄아아앙! at 2009/05/17 13:33
저기 명령프로그램 에서 .. 적힌대로 했는데도 파일은 나오는데 2비트맵 으로 안나오네요..
어떻게해야함 ㅠ?
Commented by 스욘 at 2009/05/31 22:04
이거 막혔나여?
Commented by 까마귀 at 2009/05/31 22:13
아뇨. 사용 가능합니다.
Commented by 지나가던행인 at 2010/06/05 09:52
다 되다가 게임에서 가져오기에까지 뜨는데
보내기를하면 나오질 않아요 orz
Commented by 조프 at 2010/08/14 09:55
pngcrush 입력 좀더 쉽게 할 수 있어요. pngcrush의 바로가기를 만드셔서(마우스 오른쪽 누르면 있음) 속성(역시 마우스 오른쪽 누르면 나옴)을 열어서 대상 부분 맨뒤에 한칸 띄고(스페이스) -bit_depth 2 1.png 2.png (입력파일명은 임의로 1이라고 했습니다.)를 붙여넣고 바로가기를 실행하면 됩니다.
그림으로 설명하면 간단한데 말로 하니 복잡하네요.

:         :

:

비공개 덧글