다음은 3x2 크기의 이미지를 표현하는 최대값이 255인 P3 파일이다.
P3
3 2
255
255 0 0 0 255 0 0 0 255
255 255 0 255 255 255 0 0 0
최대값 항목은 색상 수준의 수를 나타낸다.
여기서는 수준 0에서 수준 255까지 총 256단계로 표현할 수 있다.1픽셀은 R, G, B 순으로 저장된다.
R(255) G(0) B(0) => 빨강
R(0) G(255) B(0) => 초록
R(0) G(0) B(255) => 파랑
다음은 3x2 크기의 이미지를 표현하는 최대값이 255인 P6 파일이다.
1) P6 헤더 형식은 P3와 동일하게 ASCII로 표현한다.
P6
3 2
255
→ ASCII 데이터를 Hex로 변환하면 50 36 0A 33 20 32 0A 32 35 35 0A
2) 한 줄을 표현하는 데 필요한 바이트 수 구하기
PPM(P6)는 각 픽셀을 3바이트로 나타내기 때문에 한 줄을 표현하는 데 (이미지 너비 x 3바이트)가 필요하다. 이미지 너비가 3이기 때문에 한 줄을 나타내는데 9바이트를 사용한다.
3) P6 데이터 만들기
위에 'PPM (P3)' 픽셀 데이터를 P6로 변환하면 아래와 같다.
FF 00 00
00 FF 00
00 00 FF
FF FF 00
FF FF FF
00 00 00
참고
http://paulbourke.net/dataformats/ppm/
https://www.fileformat.info/format/pbm/egff.htm