Magic number for #GdkPixdata structures.
The length of a #GdkPixdata structure without the @pixel_data pointer.
A pixel buffer suitable for serialization and streaming.
Using `GdkPixdata`, images can be compiled into an application,
making it unnecessary to refer to external image files at runtime.
`GdkPixbuf` includes a utility named `gdk-pixbuf-csource`, which
can be used to convert image files into `GdkPixdata` structures suitable
for inclusion in C sources. To convert the `GdkPixdata` structures back
into a `GdkPixbuf`, use `gdk_pixbuf_from_pixdata()`.
`GdkPixdata` should not be used any more. `GResource`
should be used to save the original compressed images inside the
program's binary
magic number. A valid `GdkPixdata` structure must have
`GDK_PIXBUF_MAGIC_NUMBER` here
less than 1 to disable length checks, otherwise
`GDK_PIXDATA_HEADER_LENGTH` plus the length of `pixel_data`
information about colorspace, sample width and
encoding, in a `GdkPixdataType`
Distance in bytes between rows
Width of the image in pixels
Height of the image in pixels
`width` x `height`
pixels, encoded according to `pixdata_type` and `rowstride`
Deserializes (reconstruct) a #GdkPixdata structure from a byte stream.
The byte stream consists of a straightforward writeout of the
`GdkPixdata` fields in network byte order, plus the `pixel_data`
bytes the structure points to.
The `pixdata` contents are reconstructed byte by byte and are checked
for validity.
This function may fail with `GDK_PIXBUF_ERROR_CORRUPT_IMAGE`
or `GDK_PIXBUF_ERROR_UNKNOWN_TYPE`.
Use `GResource` instead.
Upon successful deserialization `TRUE` is returned,
`FALSE` otherwise.
a #GdkPixdata structure to be filled in.
length of the stream used for deserialization.
stream of bytes containing a
serialized #GdkPixdata structure.
Converts a `GdkPixbuf` to a `GdkPixdata`.
If `use_rle` is `TRUE`, the pixel data is run-length encoded into
newly-allocated memory and a pointer to that memory is returned.
Use #GResource instead.
If `use_rle` is
`TRUE`, a pointer to the newly-allocated memory for the run-length
encoded pixel data, otherwise `NULL`.
a `GdkPixdata` to fill.
the data to fill `pixdata` with.
whether to use run-length encoding for the pixel data.
Serializes a #GdkPixdata structure into a byte stream.
The byte stream consists of a straightforward writeout of the
#GdkPixdata fields in network byte order, plus the @pixel_data
bytes the structure points to.
Use #GResource instead.
A
newly-allocated string containing the serialized #GdkPixdata
structure.
a valid #GdkPixdata structure to serialize.
location to store the resulting stream length in.
Generates C source code suitable for compiling images directly
into programs.
GdkPixbuf ships with a program called `gdk-pixbuf-csource`, which offers
a command line interface to this function.
Use #GResource instead.
a newly-allocated string buffer containing
the C source form of `pixdata`.
a `GdkPixdata` to convert to C source
used for naming generated data structures or macros
the kind of C source to be generated
An enumeration which is used by gdk_pixdata_to_csource() to
determine the form of C source to be generated. The three values
@GDK_PIXDATA_DUMP_PIXDATA_STREAM, @GDK_PIXDATA_DUMP_PIXDATA_STRUCT
and @GDK_PIXDATA_DUMP_MACROS are mutually exclusive, as are
@GDK_PIXBUF_DUMP_GTYPES and @GDK_PIXBUF_DUMP_CTYPES. The remaining
elements are optional flags that can be freely added.
Generate pixbuf data stream (a single
string containing a serialized #GdkPixdata structure in network byte
order).
Generate #GdkPixdata structure (needs
the #GdkPixdata structure definition from gdk-pixdata.h).
Generate <function>*_ROWSTRIDE</function>,
<function>*_WIDTH</function>, <function>*_HEIGHT</function>,
<function>*_BYTES_PER_PIXEL</function> and
<function>*_RLE_PIXEL_DATA</function> or <function>*_PIXEL_DATA</function>
macro definitions for the image.
Generate GLib data types instead of
standard C data types.
Generate standard C data types instead of
GLib data types.
Generate static symbols.
Generate const symbols.
Provide a <function>*_RUN_LENGTH_DECODE(image_buf, rle_data, size, bpp)</function>
macro definition to decode run-length encoded image data.
An enumeration containing three sets of flags for a #GdkPixdata struct:
one for the used colorspace, one for the width of the samples and one
for the encoding of the pixel data.
each pixel has red, green and blue samples.
each pixel has red, green and blue samples
and an alpha value.
mask for the colortype flags of the enum.
each sample has 8 bits.
mask for the sample width flags of the enum.
the pixel data is in raw form.
the pixel data is run-length encoded. Runs may
be up to 127 bytes long; their length is stored in a single byte
preceding the pixel data for the run. If a run is constant, its length
byte has the high bit set and the pixel data consists of a single pixel
which must be repeated.
mask for the encoding flags of the enum.
Converts a `GdkPixdata` to a `GdkPixbuf`.
If `copy_pixels` is `TRUE` or if the pixel data is run-length-encoded,
the pixel data is copied into newly-allocated memory; otherwise it is
reused.
Use `GResource` instead.
a new pixbuf
a #GdkPixdata to convert into a `GdkPixbuf`.
whether to copy raw pixel data; run-length encoded
pixel data is always copied.