Project

websnap

0.03
No commit activity in last 3 years
No release in over 3 years
Create snapshot of webpage
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 0
>= 0
>= 0
 Project Readme

WebSnap

Create snapshot of webpage. Uses wkhtmltoimage on the backend which renders HTML using Webkit.

Installation

  1. Install wkhtmltoimage (optional)
  • WebSnap comes bundled with wkhtmltoimage binaries for Linux i386 (OSX i386 will be bundled, when it is available from [wkhtmltopdf] site)
  • WebSnap defaults to user installed versions of wkhtmltoimage if found
  • Installing wkhtmltoimage binary
  • Download the latest binary from https://github.com/wkhtmltopdf/wkhtmltopdf
  • Place the binary somewhere on your path (e.g /usr/local/bin)
  1. Install WebSnap

    $ gem install websnap

Usage

# WebSnap.new takes the HTML and any options for wkhtmltoimage
# run `wkhtmltoimage -H` for a full list of options
snap = WebSnap::Snapper.new('http://google.com', :format => 'png')

# Get the binary image data
png = snap.to_bytes

# Save the PDF to a file
file = snap.to_file('/path/to/save/png')

# WebSnap.new can optionally accept a URL or a File.
kit = WebSnap::Snapper.new('http://google.com')
kit = WebSnap::Snapper.new(File.new('/path/to/html'))

Changes

0.1.5

  • Added supports on x86_64 platform, thanks @willywos for the PR

Attributions

  • This application use wkhtmltoimage as backend
  • This gem is a clone of PDFKit, which use wkhtmltopdf to generate PDF

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so I don't break it in a future version unintentionally.
  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
  • Send me a pull request. Bonus points for topic branches.

Copyright

Copyright (c) 2010 Francis Chong. See LICENSE for details.