Skip to content

Latest commit

 

History

History
91 lines (64 loc) · 2.28 KB

README.md

File metadata and controls

91 lines (64 loc) · 2.28 KB

fastimage.cr

Build Status GitHub release GitHub license

Library that finds the dimensions and type of an image fetching as little as needed.

Documentation

https://jetrockets.github.io/fastimage.cr

Installation

  1. Add the dependency to your shard.yml:

    dependencies:
      fastimage:
        github:jetrockets/fastimage.cr
  2. Run shards install

Usage

require "fastimage"

.type : String|Nil

Returns image type. Returns nil if image type is not supported.

FastImage.type("https://file-examples.com/wp-content/uploads/2017/10/file_example_PNG_3MB.png")
# => png

.type! : String

Same as #type, but raise exception if anything goes wrong.

.dimensions : Tuple(UInt16?, UInt16?)|Nil

Returns image width and height as a Tuple(UInt16?, UInt16?). Returns nil if image type is not supported.

FastImage.dimensions("https://file-examples.com/wp-content/uploads/2017/10/file_example_PNG_3MB.png")
# => [2200, 1467]

.dimensions! : Tuple(UInt16?, UInt16?)

Same as #dimensions, but raise exception if anything goes wrong.

Feature Progress

  • Data sources
    • Remote file
      • HTTP/HTTPS
      • Proxy
      • HTTP redirects
    • Local file
    • IO
    • Base64
  • File formats
    • BMP
    • CUR
    • GIF
    • ICO
    • JPEG
      • parse EXIF information for JPEG orientation
    • PNG
    • PSD
    • SVG
    • TIFF
    • WEBP

Contributing

  1. Fork it (https://github.com/jetrockets/fastimage.cr/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors