Sha256: ad385d76e897814d017b124cecf0c351cbdc5f779cf124ae156b288a9704b1f7
Contents?: true
Size: 1.04 KB
Versions: 4
Compression:
Stored size: 1.04 KB
Contents
require 'epub/constants' require 'epub/parser/version' require 'epub/parser/ocf' require 'epub/parser/publication' require 'epub/parser/content_document' require 'zipruby' require 'nokogiri' module EPUB class Parser class << self def parse(file, options = {}) new(file, options).parse end end def initialize(filepath, options = {}) raise "File #{filepath} not readable" unless File.readable_real? filepath @filepath = File.realpath filepath @book = create_book options @book.epub_file = @filepath end def parse Zip::Archive.open @filepath do |zip| @book.ocf = OCF.parse(zip) @book.package = Publication.parse(zip, @book.rootfile_path) # @book.content_document =??? parse_content_document # ... end @book end private def create_book(params) case when params[:book] params[:book] when params[:class] params[:class].new else require 'epub/book' Book.new end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
epub-parser-0.1.2 | lib/epub/parser.rb |
epub-parser-0.1.1 | lib/epub/parser.rb |
epub-parser-0.1.0 | lib/epub/parser.rb |
epub-parser-0.0.9.4 | lib/epub/parser.rb |