Package: gdk-pixbuf
Class gdk-pixbuf:pixbuf-loader
Superclassesgobject:object, common-lisp:standard-object, common-lisp:t Documented Subclasses
None
Direct Slots
None
Details The gdk-pixbuf:pixbuf-loader class provides a way for applications
to drive the process of loading an image, by letting them send the image
data directly to the loader instead of having the loader read the data from
a file.
Applications can use this functionality instead of the gdk-pixbuf:pixbuf-new-from-file or gdk-pixbuf:pixbuf-animation-new-from-file functions when they need to
parse image data in small chunks. For example, it should be used when reading
an image from a (potentially) slow network connection, or when loading an
extremely large file. To use the gdk-pixbuf:pixbuf-loader class to load an image, just create a new one, and call the gdk-pixbuf:pixbuf-loader-write function to send the data to it. When done, the gdk-pixbuf:pixbuf-loader-close function should be called to end the stream and finalize everything. The loader will emit three important signals throughout the process. The first, the "size-prepared" signal, will be called as soon as the image has enough information to determine the size of the image to be used. If you want to scale the image while loading it, you can call the gdk-pixbuf:pixbuf-loader-set-size function in response to this signal. The second signal, the "area-prepared" signal, will be called as soon as the pixbuf of the desired has been allocated. You can obtain it by calling the gdk-pixbuf:pixbuf-loader-pixbuf function. In addition, no actual information will be passed in yet, so the pixbuf can be safely filled with any temporary graphics (or an initial color) as needed. You can also call the gdk-pixbuf:pixbuf-loader-pixbuf function later and get the same pixbuf. The last signal, the "area-updated" signal gets called every time a region is updated. This way you can update a partially completed image. Note that you do not know anything about the completeness of an image from the area updated. For example, in an interlaced image, you need to make several passes before the image is done loading. Loading an animationLoading an animation is almost as easy as loading an image. Once the first "area-prepared" signal has been emitted, you can call the gdk-pixbuf:pixbuf-loader-animation function to get the gdk-pixbuf:pixbuf-animation object and the gdk-pixbuf:pixbuf-animation-iter function to get an gdk-pixbuf:pixbuf-animation-iter object for displaying it.Signal DetailsThe "area-prepared" signallambda (loader) :run-last
The "area-updated" signallambda (loader x y width height) :run-last
The "closed" signallambda (loader) :run-last
The "size-prepared" signallambda (loader width height) :run-last
| Inherited Slot Access FunctionsSee also |
2025-3-1