From 9ec78d362a6301fb7977829d585723fbcd1a6bdb Mon Sep 17 00:00:00 2001 From: John Cupitt Date: Wed, 18 Feb 2015 16:02:19 +0000 Subject: [PATCH] doc polishing --- doc/file-format.xml | 36 +++++++++++++++++++++++++++--------- doc/using-C.xml | 4 +++- 2 files changed, 30 insertions(+), 10 deletions(-) diff --git a/doc/file-format.xml b/doc/file-format.xml index 9c2a9d2b..71fb6b1c 100644 --- a/doc/file-format.xml +++ b/doc/file-format.xml @@ -21,7 +21,8 @@ VIPS has a simple, native file format. It's very fast, there is no image size limit, and it supports arbitrary metadata. Although few other programs can read these images - (though recent versions of ImageMagick do support .vips + (though recent versions of ImageMagick do have basic support for + .vips format), it can be useful as an intermediate format for command-line processing. For example: @@ -47,7 +48,7 @@ $ vips gamma t.v output.tif such as image width in pixels. Next, the image data is stored as a set of band-interleaved scanlines, from the top of the image to the bottom. Finally, after the pixel data comes an optional block of XML containing - any extra metadata, such as ICC profiles. + any extra metadata, such as an ICC profile or the EXIF data. @@ -58,6 +59,16 @@ $ vips gamma t.v output.tif first (Intel ordering). Only the most basic information about the image is in the header: most metadata is stored in the XML extension block after the pixel data. + + + + If the first four bytes of the file are in order 08 f2 a6 b6, the image + data (see the next section) + is stored in Intel byte order (LSB first) and will need to be swapped + if read on a SPARC-style machine (MSB first). + If the magic number is b6 a6 f2 08, the image data is in SPARC order + and will need to swapped if read on an Intel-style machine. libvips does + this swapping automatically. The VIPS header @@ -76,7 +87,7 @@ $ vips gamma t.v output.tif 0 -- 3 - VIPS magic number, 08 f2 f6 b6 + VIPS magic number: 08 f2 a6 b6, or b6 a6 f2 08 @@ -163,6 +174,13 @@ $ vips gamma t.v output.tif Vertical offset of origin, in pixels + + 56 -- 63 + + + Unused + +
@@ -193,8 +211,8 @@ $ vips gamma t.v output.tif If coding is set to #VIPS_CODING_RAD, each pixel is - RGB or XYZ float, with 8 bytes of mantissa - and then 8 bytes of exponent, shared between the three channels. This + RGB or XYZ float, with 8 bits of mantissa + and then 8 bits of exponent, shared between the three channels. This coding style is used by the Radiance family of programs (and the HDR format) commonly used for HDR imaging. @@ -216,10 +234,10 @@ $ vips gamma t.v output.tif
- You can use vipsheader -f getext x.v to get the - XML from a VIPS image, and - vipsedit --setext x.v < file.xml to replace the - XML. + You can use vipsheader -f getext some_file.v to get + the XML from a VIPS image, and + vipsedit --setext some_file.v < file.xml to + replace the XML. diff --git a/doc/using-C.xml b/doc/using-C.xml index dee6054c..3e903774 100644 --- a/doc/using-C.xml +++ b/doc/using-C.xml @@ -31,7 +31,9 @@ When your program starts, use VIPS_INIT() to start up the VIPS library. You should pass it the name of your program, usually argv[0]. Use - vips_shutdown() when you exit. + vips_shutdown() when you exit. VIPS_INIT() is a macro to let it check + that the libvips library you have linked to matches the libvips headers + you included.