### Namespace

# AppStreamCompose – 1.0

Library to compose AppStream catalog metadata

Version | 1.0.3
Authors | AppStream Developers
License | LGPL-2.1-or-later
Website | https://www.freedesktop.org/software/appstream/docs/
Source | https://github.com/ximion/appstream

#### Build

C headers | `appstream-compose.h`
pkg-config files | `appstream-compose`

#### Dependencies

GObject—2.0 | The base type system library
| Browse documentation
Gio—2.0 | A modern, easy-to-use VFS API
| Browse documentation
AppStream—1.0 | Library to work with AppStream metadata
| Browse documentation

#### Additional documentation

- Classes Hierarchy

#### Classes

Canvas | since: 1.0
Compose | since: 1.0
DirectoryUnit | since: 1.0
Hint | since: 1.0
IconPolicy | since: 1.0
Image | since: 1.0
Result | since: 1.0
Unit | since: 1.0

#### Structs

IconPolicyIter | A `AscIconPolicyIter` structure represents an iterator that can be used to iterate over the icon sizes / policy entries of an `AscIconPolicy`. `AscIconPolicyIter` structures are typically allocated on the stack and then initialized with asc_icon_policy_iter_init(). since: 1.0

#### Enumerations

IconState | Designated state for an icon of a given size. since: 1.0
ImageFormat | File format of an image. since: 1.0

#### Bitfields

ComposeFlags | since: 1.0
ImageLoadFlags | The flags used for loading images. since: 1.0
ImageSaveFlags | The flags used for saving images. since: 1.0

#### Error Domains

CanvasError | A drawing error. since: 1.0
ComposeError | A metadata composition error. since: 1.0
ImageError | An image processing error. since: 1.0

#### Callbacks

CheckMetadataEarlyFn | Function which is called after all metainfo and related data (e.g. desktop-entry files) has been loaded, but before any expensive operations such as screenshot downloads or font searches are performed. since: 1.0
TranslateDesktopTextFn | Function which is called while parsing a desktop-entry file to allow external translations of string values. This is used in e.g. the Ubuntu distribution. since: 1.0

#### Functions

build_component_global_id | Builds a global component ID from a component-id and a (usually MD5) checksum generated from the component data. since: 1.0
filename_from_url | Generate a filename from a web-URL that can be used to store the file on disk after download. since: 1.0
globals_add_hint_tag | Register a new hint tag. If a previous tag with the given name already existed, the existing tag will not be replaced unless `overrideExisting` is set to `TRUE`. Please be careful when overriding tags! Tag severities can not be lowered by overriding a tag. since: 1.0
globals_clear | Clear all global state and restore defaults. since: 1.0
globals_get_ffprobe_binary | Get path to the “ffprobe” binary we should use. since: 1.0
globals_get_hint_tags | Retrieve all hint tags that we know. since: 1.0
globals_get_optipng_binary | Get path to the “optipng” binary we should use. since: 1.0
globals_get_tmp_dir | Get temporary directory used by appstream-compose. since: 1.0
globals_get_tmp_dir_create | Get temporary directory used by appstream-compose and try to create it if it does not exist. since: 1.0
globals_get_use_optipng | Get whether images should be optimized using optipng. since: 1.0
globals_hint_tag_explanation | Retrieve the explanation template of the given hint tag. since: 1.0
globals_hint_tag_severity | Retrieve the severity of the given hint tag. since: 1.0
globals_set_ffprobe_binary | Set path to the “ffprobe” binary we should use. since: 1.0
globals_set_optipng_binary | Set path to the “optipng” binary we should use. since: 1.0
globals_set_tmp_dir | Set temporary directory used by appstream-compose. since: 1.0
globals_set_use_optipng | Set whether images should be optimized using optipng. since: 1.0
optimize_png | Optimizes a PNG graphic for size with optipng, if its binary is available and this feature is enabled. since: 1.0
pixbuf_blur | since: 1.0
pixbuf_sharpen | since: 1.0