GithubHelp home page GithubHelp logo

isabella232 / pdf-inspector Goto Github PK

View Code? Open in Web Editor NEW

This project forked from prawnpdf/pdf-inspector

0.0 0.0 0.0 98 KB

A collection of PDF::Reader based analysis classes for inspecting PDF output. Mainly used for testing Prawn, but will work with any PDF.

Home Page: http://prawnpdf.org

License: Other

Ruby 100.00%

pdf-inspector's Introduction

PDF::Inspector: A tool for analyzing PDF output

Maintained: yes Build status

This library provides a number of PDF::Reader based tools for use in testing PDF output. Presently, the primary purpose of this tool is to support the tests found in Prawn, a pure Ruby PDF generation library.

However, it may be useful to others, so we have made it available as a gem in its own right.

Installation

The recommended installation method is via Rubygems.

gem install pdf-inspector

Or put this in your Gemfile, if you use Bundler:

group :test do
  gem 'pdf-inspector', require: "pdf/inspector"
end

Usage

Check for text in the generated PDF:

rendered_pdf = your_pdf_document.render
text_analysis = PDF::Inspector::Text.analyze(rendered_pdf)
text_analysis.strings # => ["foo"]

Note that strings returns an array containing one string for each text drawing operation in the PDF. As a result, sentences and paragraphs will often be returned in fragments. To test for the presence of a complete sentence or a longer string, join the array together with an operation like full_text = text_analysis.strings.join(" ").

Check number of pages

rendered_pdf = your_pdf_document.render
page_analysis = PDF::Inspector::Page.analyze(rendered_pdf)
page_analysis.pages.size # => 2

Licensing

Matz’s terms for Ruby, GPLv2, or GPLv3. See LICENSE for details.

Mailing List

pdf-inspector is maintained as a dependency of Prawn, the ruby PDF generation library.

Any questions or feedback should be sent to the Prawn google group.

Authorship

pdf-inspector was originally developed by Gregory Brown as part of the Prawn1 project. In 2010, Gregory officially handed the project off to the Prawn core team. Currently active maintainers include Brad Ediger, Daniel Nelson, James Healy, and Jonathan Greenberg.

You can find the full list of Github users who have at least one patch accepted to pdf-inspector on GitHub Contributors page.

pdf-inspector's People

Contributors

pointlessone avatar bradediger avatar practicingruby avatar yob avatar petergoldstein avatar packetmonkey avatar davetron5000 avatar iamjohnford avatar alexblackie avatar alexsoble avatar gnclmorais avatar henrik avatar johnnyshields avatar sigmike avatar fnando avatar msbit avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.