class ChunkyPNG::Chunk::CompressedText

The CompressedText (zTXt) chunk contains keyword/value metadata about the PNG stream. In this chunk, the value is compressed using Deflate compression.

@see ChunkyPNG::Chunk::CompressedText @see ChunkyPNG::Chunk::InternationalText

Attributes

keyword[RW]
value[RW]

Public Class Methods

new(keyword, value) click to toggle source
Calls superclass method ChunkyPNG::Chunk::Base::new
    # File lib/chunky_png/chunk.rb
301 def initialize(keyword, value)
302   super('zTXt')
303   @keyword, @value = keyword, value
304 end
read(type, content) click to toggle source
    # File lib/chunky_png/chunk.rb
306 def self.read(type, content)
307   keyword, compression, value = content.unpack('Z*Ca*')
308   raise ChunkyPNG::NotSupported, "Compression method #{compression.inspect} not supported!" unless compression == ChunkyPNG::COMPRESSION_DEFAULT
309   new(keyword, Zlib::Inflate.inflate(value))
310 end

Public Instance Methods

content() click to toggle source

Creates the content to write to the stream, by concatenating the keyword with the deflated value, joined by a null character.

@return The content that should be written to the datastream.

    # File lib/chunky_png/chunk.rb
316 def content
317   [keyword, ChunkyPNG::COMPRESSION_DEFAULT, Zlib::Deflate.deflate(value)].
318     pack('Z*Ca*')
319 end