Class | ChunkyPNG::Chunk::Transparency |
In: |
lib/chunky_png/chunk.rb
|
Parent: | Generic |
A transparency (tRNS) chunk defines the transparency for an image.
Images having a color mode that already includes an alpha channel, this chunk should not be included.
@see ChunkyPNG::Chunk::Palette @see ChunkyPNG::Palette
Returns the grayscale entry to be replaced by transparent pixels.
This method should only be used for images having color mode ChunkyPNG::COLOR_GRAYSCALE (0).
@return [Integer] The (grayscale) color to replace with fully transparent pixels.
# File lib/chunky_png/chunk.rb, line 216 216: def grayscale_entry(bit_depth) 217: value = ChunkyPNG::Canvas.send("decode_png_resample_#{bit_depth}bit_value""decode_png_resample_#{bit_depth}bit_value", content.unpack('n')[0]) 218: ChunkyPNG::Color.grayscale(value) 219: end
Returns the alpha channel for the palette of an indexed image.
This method should only be used for images having color mode ChunkyPNG::COLOR_INDEXED (3).
@return [Array<Integer>] Returns an array of alpha channel values [0-255].
# File lib/chunky_png/chunk.rb, line 197 197: def palette_alpha_channel 198: content.unpack('C*') 199: end
Returns the truecolor entry to be replaced by transparent pixels,
This method should only be used for images having color mode ChunkyPNG::COLOR_TRUECOLOR (2).
@return [Integer] The color to replace with fully transparent pixels.
# File lib/chunky_png/chunk.rb, line 206 206: def truecolor_entry(bit_depth) 207: values = content.unpack('nnn').map { |c| ChunkyPNG::Canvas.send("decode_png_resample_#{bit_depth}bit_value""decode_png_resample_#{bit_depth}bit_value", c) } 208: ChunkyPNG::Color.rgb(*values) 209: end