在Fortran中创建RAW映像文件

时间:2010-07-27 01:03:47

标签: image fortran

是否可以在Fortran中创建原始图像?我在想BMP,但不确定哪种扩展最好。

基本上,我希望能够有一个包含每个像素的颜色值的数组或文本文件,因此3像素宽的红色图像只是FF0000FF0000FF0000或类似的那个

3 个答案:

答案 0 :(得分:2)

您可以使用PPM格式。 http://en.wikipedia.org/wiki/Netpbm_format

答案 1 :(得分:1)

方面1:你必须知道图像文件的格式。然后你写那个格式。可能任何标准图像文件(PPM,BPM,TIFF,...)都包含某种标题。这是编写标准图像文件所固有的,与语言无关。

方面2:Fortran 2曾经是无情的记录导向,即使对于未格式化的(二进制)文件也没有“很好地”与其他语言(如C)编写的文件或未指定记录分隔符的文件格式“播放”通过Fortran。但是新的Stream I / O方法会生成非记录文件。图像文件将是未格式化的(二进制),因此在open语句中包括:

access='stream', form='unformatted', ....

答案 2 :(得分:0)

是的,您可以使用我们的gtk-fortran绑定(GNU GPL v3)创建一个PNG,其中包括到GdkPixbuf库的接口。 pixbuf是一维数组,其中包含图像每个像素的RGB强度。

请注意,可以仅使用GdkPixbuf库(约20行代码),而无需构建GTK gui:

您只需要一个Fortran编译器(Fortran> = 2003)。