module ChunkyPNG::Canvas::DataUrlImporting

Methods to import a canvas from a PNG data URL.

Public Instance Methods

from_data_url(string) click to toggle source

Imports a canvas from a PNG data URL. @param [String] string The data URL string to load from. @return [Canvas] The imported canvas. @raise ChunkyPNG::SignatureMismatch if the provides string is not a properly

formatted PNG data URL (i.e. it should start with "data:image/png;base64,")
   # File lib/chunky_png/canvas/data_url_importing.rb
12 def from_data_url(string)
13   if string =~ %r[^data:image/png;base64,((?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)$]
14     from_blob($1.unpack("m").first)
15   else
16     raise SignatureMismatch, "The string was not a properly formatted data URL for a PNG image."
17   end
18 end