Convert HTML to PDF using GTK WEBKIT
Ruby C
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ext/gtk_webkit_pdf
lib
README
gtk_webkit_pdf.gemspec

README

Creating The PDF from HTML using GTK WEBKIT Tool.

MAIN FEATURE OF GTK_WEBKIT_PDF
==============================
  1 . This is pure ruby extension based pdf creator using gtk webkit api.

FEATURE ADDED WITH THIS NEW VERSION 0.0.2
=========================================
  1 . Supports for RAILS integration.
  2 . Create pdf based on the format in the controller with various options.
  3 . Supports for rake level pdf creation.

EXAMPLE:

  webkit = GTK::Webkit.new(string_data, format, options)  #creates the webkit object
  where "format" => 
    1 . 0(zero) - means you are giving the html string to the first parameter(that is string_data).
    2 . 1(one) - future usage.
    3 . 2(two) - means you are giving the URI to the first parameter(that is string_data).

  printer = webkit.gtk_printer  #which returns the printer object, using this printer object you get the pdf content like below
  printer.pdf_content #returns pdf contenht as a string, then you can save this pdf content to a file or you can render using "send_data"(in the case of download). You can also export to a file using the following
  printer.export(base_url, filename) #base_url => base directory(like /home/mohanraj/), filename => name of the file, you want to export

CONTROLLER BASED PDF CREATION
============================

In your controller just check the format, and render the pdf like below,

class UsersController < ApplicationController
  def index
    @users = User.scoped
    respond_to do |format|
      format.html
      format.pdf{ render :pdf => "pdf_name" }
    end
  end
end

  available options while rendering pdf, 
    :layout => specify the layout, otherwise layout is false
    :template => template name to render
    :file => file to use
    :disposition => default to "inline"
    :format =>
    :handler =>

  NOTE: you have to create the view file for pdf like "index.pdf.erb" in the case of pdf render

MIDDLEWARE SUPPORT
==================
  You can enable middleware by adding following line to config/application.rb
  config.middleware.use GTK::Middleware

INSTALLATION
============
  1.You need to install the following development packages,
    1 . gtk
    2 . libsoup
    3 . webkitgtk
    4 . atk
    5 . gdk-pixbuf
    6 . glib
    7 . cario
    8 . pango
  2.And the following the libs
    1 . libgtk
    2 . libwebkitgtk
  3.NOTE: minimum gtk2 and webkitgtk2 is required.
  4.Then you can install the gem whether directly or by using bundler.

Thanks to GTK WEBKIT community.