Re: is it the same RGBA, though? (was Re: Graphic Images)


Subject: Re: is it the same RGBA, though? (was Re: Graphic Images)
From: Leonard Rosenthol (leonardr@lazerware.com)
Date: Sat Apr 21 2001 - 17:18:26 CDT


At 12:34 PM 4/20/2001 -0700, Paul Rohr wrote:
>Thus, at the time I could run the same XP decoder to emit individual pixels,
>but I needed platform-specific routines to construct the necessary
>uncompressed buffers to bit-blast to the screen. Running that kind of
>process in reverse to get back to a PNG or JPEG sounds even more obnoxious.
>
>Is this not a problem any more? It'd be wonderful to hear that things have
>been standardized enough that you could hand the exact same uncompressed
>RGB(A) buffer to drawing routines on most or all of our supported platforms.
         You are correct that Mac, Windows and Unix/X have slightly
different native representations of how the combination of RGBA pixels are
stored - but using a single ifdef in a header you have still have 100% XP
code. In fact, this is exactly what ImageMagick does. Here is the
declaration for a "PixelPacket":

typedef struct _PixelPacket
{
#if defined(WORDS_BIGENDIAN)
   Quantum
     red,
     green,
     blue,
     opacity;
#else
#if defined(macintosh)
   Quantum
     opacity,
     red,
     green,
     blue;
#else
   Quantum
     blue,
     green,
     red,
     opacity;
#endif
#endif
} PixelPacket;

LDR



This archive was generated by hypermail 2b25 : Sat Apr 21 2001 - 19:48:12 CDT