48
edits
Changes
increased restriction for blend_op and dispose_op
If `blend_op` is APNG_BLEND_OP_SOURCE all color components of the frame, including alpha, overwrite the current contents of the frame's output buffer region. If `blend_op` is APNG_BLEND_OP_OVER the frame should be composited onto the output buffer based on its alpha, using a simple OVER operation as described in the "Alpha Channel Processing" section of the PNG specification [PNG-1.2]. Note that Variation 2 of the sample code is applicable.
The first `fcTL` chunk has these restrictions:
* `blend_op` must be APNG_BLEND_OP_SOURCE
* `dispose_op` must not be APNG_DISPOSE_OP_PREVIOUS
The `fcTL` chunk corresponding to the default image has additional restrictions, if it exists:
* The `x_offset` and `y_offset` fields must be 0.
* The `width` and `height` fields must equal the corresponding fields from the `IHDR` chunk.
As noted earlier, if a `fcTL` chunk does not precede `IDAT`, the default image is not part of the animation, and the output buffer must be completely initialized to fully transparent black at the beginning of each iteration.