NetBSD/usr.bin/file/magdir/images

223 lines
7.0 KiB
Plaintext

#------------------------------------------------------------------------------
# images: file(1) magic for image formats (see also "c-lang" for XPM bitmaps)
#
# originally from jef@helios.ee.lbl.gov (Jef Poskanzer),
# 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?
# [GRR: TIFF allows both byte orders; GIF is little-endian]
#
# [GRR: what the hell is this doing in here?]
0 string xbtoa btoa'd file
# PBMPLUS
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
# NIFF (Navy Interchange File Format, a modification of TIFF) images
# this *must* go before TIFF
0 string IIN1 NIFF raster data
# TIFF images
0 string MM TIFF file, big-endian
>2 beshort >0 - version %d
0 string II TIFF file, little-endian
>2 leshort >0 - version %d
# PNG [Portable Network Graphics, or "PNG's Not GIF"] images
# (Greg Roelofs, newt@uchicago.edu)
#
# 137 P N G \r \n ^Z \n [4-byte length] H E A D [HEAD data] [HEAD crc] ...
#
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
# GIF
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,
# GRR 950330: the following is not accurate for most GIFs:
#>10 byte &0x40 interlaced,
>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
0 long 1123028772 Artisan image file
>4 long 1 rectangular 24-bit image
>4 long 2 rectangular 8-bit image with colormap
>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
# 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
#
0 string IT02 FIT image file
>4 belong x \b, %d x
>8 belong x %d x
>12 belong x %d
#
2048 string PCD_IPI Kodak Photo CD image pack file
0 string PCD_OPA Kodak Photo CD overview pack file
# 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