1995-03-26 01:35:28 +03:00
|
|
|
|
|
|
|
#------------------------------------------------------------------------------
|
|
|
|
# images: file(1) magic for image formats (see also "c-lang" for XPM bitmaps)
|
|
|
|
#
|
|
|
|
# originally from jef@helios.ee.lbl.gov (Jef Poskanzer),
|
1993-06-10 04:57:28 +04:00
|
|
|
# additions by janl@ifi.uio.no as well as others. Jan also suggested
|
|
|
|
# merging several one- and two-line files into here.
|
|
|
|
#
|
|
|
|
# XXX - byte order for GIF and TIFF fields?
|
1995-04-28 23:23:38 +04:00
|
|
|
# [GRR: TIFF allows both byte orders; GIF is little-endian]
|
1993-06-10 04:57:28 +04:00
|
|
|
#
|
|
|
|
|
1995-03-26 01:35:28 +03:00
|
|
|
# [GRR: what the hell is this doing in here?]
|
|
|
|
0 string xbtoa btoa'd file
|
1993-06-10 04:57:28 +04:00
|
|
|
|
|
|
|
# PBMPLUS
|
1995-03-26 01:35:28 +03:00
|
|
|
0 string P1 PBM file
|
|
|
|
0 string P2 PGM file
|
|
|
|
0 string P3 PPM file
|
|
|
|
0 string P4 PBM "rawbits" file
|
|
|
|
0 string P5 PGM "rawbits" file
|
|
|
|
0 string P6 PPM "rawbits" file
|
|
|
|
|
1995-04-28 23:23:38 +04:00
|
|
|
# NIFF (Navy Interchange File Format, a modification of TIFF) images
|
|
|
|
# this *must* go before TIFF
|
1995-03-26 01:35:28 +03:00
|
|
|
0 string IIN1 NIFF raster data
|
1993-06-10 04:57:28 +04:00
|
|
|
|
1995-04-28 23:23:38 +04:00
|
|
|
# TIFF images
|
1995-03-26 01:35:28 +03:00
|
|
|
0 string MM TIFF file, big-endian
|
1995-04-28 23:23:38 +04:00
|
|
|
>2 beshort >0 - version %d
|
1995-03-26 01:35:28 +03:00
|
|
|
0 string II TIFF file, little-endian
|
1995-04-28 23:23:38 +04:00
|
|
|
>2 leshort >0 - version %d
|
1995-03-26 01:35:28 +03:00
|
|
|
|
1995-04-28 23:23:38 +04:00
|
|
|
# PNG [Portable Network Graphics, or "PNG's Not GIF"] images
|
1995-03-26 01:35:28 +03:00
|
|
|
# (Greg Roelofs, newt@uchicago.edu)
|
1993-06-10 04:57:28 +04:00
|
|
|
#
|
1995-04-28 23:23:38 +04:00
|
|
|
# 137 P N G \r \n ^Z \n [4-byte length] H E A D [HEAD data] [HEAD crc] ...
|
1995-03-26 01:35:28 +03:00
|
|
|
#
|
1995-04-28 23:23:38 +04:00
|
|
|
0 string \x89PNG PNG image,
|
|
|
|
>4 belong !0x0d0a1a0a CORRUPTED,
|
|
|
|
>16 belong x %ld x
|
|
|
|
>20 belong x %ld,
|
|
|
|
>24 byte x %d-bit
|
|
|
|
>25 byte 0 grayscale,
|
|
|
|
>25 byte 2 \b/color RGB,
|
|
|
|
>25 byte 3 colormap,
|
|
|
|
>25 byte 4 gray+alpha,
|
|
|
|
>25 byte 6 \b/color RGBA,
|
|
|
|
#>26 byte 0 deflate/32K,
|
|
|
|
>28 byte 0 non-interlaced
|
|
|
|
>28 byte 1 interlaced
|
1993-06-10 04:57:28 +04:00
|
|
|
|
|
|
|
# GIF
|
1995-03-26 01:35:28 +03:00
|
|
|
0 string GIF GIF image
|
|
|
|
>3 string 87a - version %s,
|
|
|
|
>3 string 89a - version %s,
|
|
|
|
>6 leshort >0 %hd x
|
|
|
|
>8 leshort >0 %hd,
|
|
|
|
#>10 byte &0x80 color mapped,
|
1995-04-28 23:23:38 +04:00
|
|
|
# GRR 950330: the following is not accurate for most GIFs:
|
1995-03-26 01:35:28 +03:00
|
|
|
#>10 byte &0x40 interlaced,
|
1993-06-10 04:57:28 +04:00
|
|
|
>10 byte&0x07 =0x00 2 colors
|
|
|
|
>10 byte&0x07 =0x01 4 colors
|
|
|
|
>10 byte&0x07 =0x02 8 colors
|
|
|
|
>10 byte&0x07 =0x03 16 colors
|
|
|
|
>10 byte&0x07 =0x04 32 colors
|
|
|
|
>10 byte&0x07 =0x05 64 colors
|
|
|
|
>10 byte&0x07 =0x06 128 colors
|
|
|
|
>10 byte&0x07 =0x07 256 colors
|
|
|
|
|
|
|
|
# Miscellany
|
1995-03-26 01:35:28 +03:00
|
|
|
0 long 1123028772 Artisan image file
|
1993-06-10 04:57:28 +04:00
|
|
|
>4 long 1 rectangular 24-bit image
|
|
|
|
>4 long 2 rectangular 8-bit image with colormap
|
1995-03-26 01:35:28 +03:00
|
|
|
>4 long 3 rectangular 32-bit image (24-bit with matte)
|
|
|
|
0 string \361\0\100\273 CMU window manager bitmap
|
|
|
|
0 string #FIG FIG graphics savefile text
|
|
|
|
>6 string 2.1 Version 2.1
|
|
|
|
>6 string 2.0 Version 2.0
|
|
|
|
0 string GKSM GKS Metafile
|
|
|
|
8 string ILBM IFF ILBM file
|
|
|
|
0 string ARF_BEGARF PHIGS clear text archive
|
|
|
|
|
|
|
|
# More miscellany from Daniel Quinlan (quinlan@yggdrasil.com)
|
|
|
|
0 string This\ is\ a\ BitMap\ file Lisp Machine bit-array-file
|
|
|
|
0 string !! Bennet Yee's "face" format
|
|
|
|
0 string @(#)SunPHIGS SunPHIGS
|
|
|
|
# version number follows, in the form m.n
|
|
|
|
>40 string SunBin binary
|
|
|
|
>32 string archive archive
|
|
|
|
0 string BEGMF clear text Computer Graphics Metafile
|
|
|
|
# these should be beshort, but not sure
|
|
|
|
0 beshort&0xffe0 0x0020 binary Computer Graphics Metafile
|
|
|
|
0 beshort 0x3020 character Computer Graphics Metafile
|
|
|
|
|
|
|
|
|
|
|
|
# From: <u31b3hs@pool.informatik.rwth-aachen.de> (Michael Haardt)
|
|
|
|
0 string yz MGR bitmap, modern format, 8 bit aligned
|
|
|
|
0 string zz MGR bitmap, old format, 1 bit deep, 16 bit aligned
|
|
|
|
0 string xz MGR bitmap, old format, 1 bit deep, 32 bit aligned
|
|
|
|
0 string yx MGR bitmap, modern format, squeezed
|
|
|
|
|
|
|
|
0 string %bitmap FBM pixmap
|
|
|
|
>30 long 0x31 (mono)
|
|
|
|
>30 long 0x33 (color)
|
|
|
|
|
|
|
|
4 string Research, Digifax-G3-File
|
|
|
|
>29 byte 1 , fine resolution
|
|
|
|
>29 byte 0 , normal resolution
|
|
|
|
|
|
|
|
# JPEG images
|
|
|
|
0 beshort 0xffd8 JPEG image
|
|
|
|
>6 string JFIF - JFIF standard
|
|
|
|
# from cameron@cs.unsw.oz.au (Cameron Simpson):
|
|
|
|
0 string hsi1 JPEG image - HSI encoded (proprietary)
|
|
|
|
|
|
|
|
# PC bitmaps (OS/2, Windoze BMP files) (Greg Roelofs, newt@uchicago.edu)
|
|
|
|
0 string BM bitmap
|
|
|
|
>14 byte 12 (OS/2 1.x format)
|
|
|
|
>14 byte 64 (OS/2 2.x format)
|
|
|
|
>14 byte 40 (Windows 3.x format)
|
|
|
|
0 string IC icon
|
|
|
|
0 string PI pointer
|
|
|
|
0 string CI color icon
|
|
|
|
0 string CP color pointer
|
|
|
|
0 string BA bitmap array
|
|
|
|
|
|
|
|
# Utah Raster Toolkit RLE images (two versions)
|
|
|
|
#
|
|
|
|
# From <janl@ifi.uio.no>
|
|
|
|
# I made this with the help of the man page for rle(5). Ihey missing
|
|
|
|
# from the magic numbers I have:
|
|
|
|
0 beshort 0xcc52 Utah Raster Toolkit RLE
|
|
|
|
>2 beshort >0 lower left corner: %d
|
|
|
|
>4 beshort >0 lower right corner: %d
|
|
|
|
>6 beshort >0 %d x
|
|
|
|
>8 beshort >0 %d
|
|
|
|
>10 byte&0x1 =0x1 CLEARFIRST
|
|
|
|
>10 byte&0x2 =0x2 NO_BACKGROUND
|
|
|
|
>10 byte&0x4 =0x4 ALPHA
|
|
|
|
>10 byte&0x8 =0x8 COMMENT
|
|
|
|
>11 byte >0 %d colour channels
|
|
|
|
>12 byte >0 %d bits per pixel
|
|
|
|
>13 byte >0 %d colour map channels
|
|
|
|
#
|
|
|
|
# RLE images (Disaster prone simpleton, m91dps@ecs.ox.ac.uk)
|
|
|
|
# Here's a magic file entry for rle images. 24-bit images tend to produce
|
|
|
|
# foo.rle size 42x42, 3 comps each 8 bits
|
|
|
|
# (for arbitary, prossibly different values of 42).
|
|
|
|
# freely redistribuable under the GPL
|
|
|
|
# [GRR: which endianness? big?]
|
|
|
|
0 short 0xcc55 RLE image data
|
|
|
|
>6 short >0 %d x
|
|
|
|
>8 short >0 %d,
|
|
|
|
>2 short >0 x offset by %d,
|
|
|
|
>4 short >0 y offset by %d,
|
|
|
|
>11 byte =0 colour map
|
|
|
|
>11 byte >1 %d comps each
|
|
|
|
>12 byte =1 1 bit
|
|
|
|
>12 byte >1 %d bits
|
|
|
|
|
|
|
|
# FBM images, culled from xli source (d. p. simpleton, m91dps@ecs.ox.ac.uk)
|
|
|
|
0 string %bitmap fbm image data
|
|
|
|
|
|
|
|
# image file format (Robert Potter, potter@cs.rochester.edu)
|
|
|
|
0 string Imagefile\ version- iff image data
|
|
|
|
# this adds the whole header (inc. version number), informative but longish
|
|
|
|
>10 string >\0 %s
|
|
|
|
|
|
|
|
# Sun rasterfiles, from Daniel Quinlan (quinlan@yggdrasil.com)
|
|
|
|
#
|
|
|
|
# XXX - Does the Sun 386i use the same byte order?
|
|
|
|
#
|
|
|
|
0 belong 0x59a66a95 Sun raster image
|
|
|
|
>4 belong >0 %d x
|
|
|
|
>8 belong >0 %d,
|
|
|
|
>12 belong >0 %d-bit,
|
|
|
|
# this is almost the same as the file length (what about compressed?)
|
|
|
|
#>16 belong >0 %d bytes long,
|
|
|
|
>20 belong 0 old format,
|
|
|
|
# no need to complain if it is standard
|
|
|
|
#>20 belong 1 standard,
|
|
|
|
>20 belong 2 compressed,
|
|
|
|
>20 belong 3 RGB,
|
|
|
|
>20 belong 4 TIFF,
|
|
|
|
>20 belong 5 IFF,
|
|
|
|
>20 belong 0xffff reserved for testing,
|
|
|
|
>24 belong 0 no colormap
|
|
|
|
>24 belong 1 RGB colormap
|
|
|
|
>24 belong 2 raw colormap
|
|
|
|
# this doesn't impart much useful information (or does it?)
|
|
|
|
#>28 belong >0 colormap is %d bytes long
|
|
|
|
|
|
|
|
# Daniel Quinlan (quinlan@yggdrasil.com) -- from an SGI machine
|
1995-04-28 23:23:38 +04:00
|
|
|
# There may be a byte swapped version of SGI imagelib images, but
|
|
|
|
# I haven't seen any evidence of programs that support it.
|
|
|
|
0 beshort 000732 SGI imagelib image
|
|
|
|
>6 beshort x \b, %d x
|
|
|
|
>8 beshort x %d
|
|
|
|
#
|
|
|
|
0 string IT01 FIT image file
|
|
|
|
>4 belong x \b, %d x
|
|
|
|
>8 belong x %d x
|
|
|
|
>12 belong x %d
|
1995-03-26 01:35:28 +03:00
|
|
|
#
|
1995-04-28 23:23:38 +04:00
|
|
|
0 string IT02 FIT image file
|
|
|
|
>4 belong x \b, %d x
|
|
|
|
>8 belong x %d x
|
|
|
|
>12 belong x %d
|
1995-03-26 01:35:28 +03:00
|
|
|
#
|
1995-04-28 23:23:38 +04:00
|
|
|
2048 string PCD_IPI Kodak Photo CD image pack file
|
|
|
|
0 string PCD_OPA Kodak Photo CD overview pack file
|
1995-03-26 01:35:28 +03:00
|
|
|
|
|
|
|
# Jeff Uphoff <juphoff@tarsier.cv.nrao.edu>
|
|
|
|
# FITS is the Flexible Image Transport System, the de facto standard for
|
|
|
|
# data and image transfer, storage, etc., for the astronomical community.
|
|
|
|
# FITS format.
|
|
|
|
0 string SIMPLE\ \ = FITS
|
|
|
|
>107 string -32 32 bits per pixel, IEEE big endian float
|
|
|
|
>107 string \ 32 32 bits per pixel, unsigned integer
|
|
|
|
>108 string 16 16 bits per pixel, unsigned integer
|
|
|
|
>109 string 8 8 bits per pixel, unsigned integer
|