ppm文件格式

PPM文件格式分三种:

1. PPM灰度文件
    文件头由3行文本组成,可由fgets读出
    1)第一行为“P2",表示文件类型
    2)第二行为图像的宽度和高度
    3)第三行为最大的象素值255
    接下来是图像数据块。按行顺序存储。每个象素占4个字节,灰度通道为4字节ASCII码表示的整数,
    高字节在前。左上角为坐标原点。
 
2. 16位PPM文件(至少适用于读取由DCRAW生成的PPM文件)
    文件头由3行文本组成,可由fgets读出
    1)第一行为“P6",表示文件类型
    2)第二行为图像的宽度和高度
    3)第三行为最大的象素值
    接下来是图像数据块。按行顺序存储。每个象素占3个字节,依次为红绿蓝通道,每个通道为1字节整
    数。左上角为坐标原点。

3. PPM彩色文件
    文件头由3行文本组成,可由fgets读出
    1)第一行为“P3",表示文件类型
    2)第二行为图像的宽度和高度
    3)第三行为最大的象素值255
    接下来是图像数据块。按行顺序存储。每个象素占12个字节,依次为红绿蓝通道,每个通道为4字节
    ASCII码表示的整数,高字节在前。左上角为坐标原点。

 

例:给一个16位的ppm文件写文件头

// Write header

//其中width和height中间有一个空格

fprintf(pFile, "P6\n%d %d\n255\n", width, height);

 

原文地址:https://www.cnblogs.com/xuanyuanchen/p/2524438.html