[Gimp-developer] Re: [CinePaint-dev] GIMP GBR format spec

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



David,

> As a proposal for a modification which would bring back
> compatibility, we could expand the header by 4 bytes to include
> bit depth (8 or 16), which could then be factored into the load
> routines of both our apps (we would crush 16 bit nbrushes down to
> 8 bits, and you would expand 8 bit brushes to 16 bits). As a file
> format change, it would allow is backward compatibility, since
> the format changes nothing in the other header fields.

We're open to that. However, until someone volunteers and sends us a patch,
we have no one ready to take that effort when our format is about to be
replaced anyway.

> The GIMP Paintbrush File Format Version 2 (.gbr)
> ------------------------------------------------
>
> HEADER
> ------
>
> Bytes 0  - 3:  header_size:
> Type: 32 bit unsigned int
> Value: size of brush header (28) + length of brush name
>
> Bytes 4  - 7: version
> Type: 32 bit unsigned int
> Value: The file format version. Currently
>
> Bytes 8  - 11: width
> Type: 32 bit unsigned int
> Value: Brush width
>
> Bytes 12 - 15: height
> Type: 32 bit unsigned int
> Value: Brush height
>
> Bytes 16 - 19: bytes
> Type: 32 bit unsigned int
> Value: Colour depth of brush.
> 1 = greyscale, 4 = RGBA
>
> Bytes 20 - 23: magic_number
> Type: 32 bit unsigned int
> Value: GIMP brush magic number.
> ('G' << 24) + ('I' << 16) + ('M' << 8) + 'P'
>
> Bytes 24 - 27: spacing
> Type: 32 bit unsigned int
> Value: Default spacing to be used for brush. Percentage
> of brush width.
>
> Bytes 28 - (header_size - 28):
> Type: char *
> Value: UTF-8 string - name of brush
>
>
> BODY
> ----
> Size: width * height * bytes
> Type: uchar *
> Value: Pixel values (row-first) for brush

Thanks, appreciate the docs!

To return the favor, enclosed is the spec for CPX that I posted in June. It
is so new it hasn't made it onto our web page docs yet. For clarification,
since my preliminary spec was rather terse, the data blob in CPX is a raw
write of the raster like the PPM P6 format. The CPX format was inspired by
the simplicity of PPM, but with the enhancement of XML tags. Like PPM, all
CPX tags are text but raster data is binary. See at the bottom below.

> ....it would be incorrect to say that we don't identify our team.

I can clarify my meaning, although it seems a moot point. Some GIMP
developers are identified in internal documents within the source code, as
you correctly point out. However,when I asked for a list of developers on
the GIMP list I was told those documents were too inaccurate to be trusted.
It was suggested I could get the names of the GIMP developers by grepping
the check-in names from GIMP CVS -- which seemed a bit of bother -- but I
took the effort to do so anyway. I offered to give that list back to GIMP so
they could post a better public list of developer acknowledgements. The
response was that no new list should be posted by GIMP until it was perfect,
and that my list was inaccurate because Sven and others often check in
patches on behalf of others. I was also told my help wasn't needed.

FYI, using the best information I could gather, we have a list on our web
site recognizing the GIMP developers.

http://cinepaint.sourceforge.net/people/gimp.html

Cheers,

Robin
---------------------------------------------------------------------------
Robin.Rowe@xxxxxxxxxxxxxxx   Hollywood, California
www.CinePaint.org   Free motion picture and still image editing software

----- Original Message -----
From: "Robin Rowe" <rower@xxxxxxxxxxxxxxx>
To: <cinepaint-developers@xxxxxxxxxxxxxxxxxxxxx>
Sent: Saturday, June 07, 2003 3:11 PM
Subject: [CinePaint-dev] cpx file type


> Hi. Just FYI, creating a new image format called CPX (CinePaint XML).
>
> This format will be similar in simplicity to PPM but more flexible using
XML
> tags. Both spec and code will be made available.
>
> A 640x480 8-bit image file example.cpx would be laid out something like
> this:
>
> <CPX>
> <IMG width=640 height=480 depth=8u raster=RGB compress=none bytes=921600
> data=...[921,600 raw bytes]...>
>
> 'depth' may be 8u|16u|16f-ilm|16f-rnh|32f
> 'raster' may be RGB|RGBA|RGBAZ or alternatively 'planes' with the same
> choices
>
> A lot more features could be added later. This is just to let everyone
know
> this is in the works and coming maybe in July.
>
> Cheers,
>
> Robin
> --------------------------------------------------------------------------
-
> Robin.Rowe@xxxxxxxxxxxxxxx   Hollywood, California
> www.CinePaint.org   Free motion picture and still image editing software



[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux