Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Jun 26, 2013
  1. Merge branch 'lzw-fix'

  2. add a spec for the fix in c5866da

Commits on Jun 23, 2013
  1. add an integration spec for times control char glyphs

    * we shouldn't raise an exception when a PDF uses the built in
      times-roman font and includes a control character glyph
Commits on May 12, 2013
  1. ensure we can decrypt PDFs with no ID

    * the PDF spec says encrypted files MUST have a document ID
    * Yet Acrobat reader works just fine when they don't so let's copy their
  2. Merge branch 'page-orientation'

  3. use a context block to make these spec lines < 100 chars

    * so that the quality specs continue to pass on this branch
  4. remove some unused spec PDFs

  5. move page orientation detection into a dedicated class

    * significantly easier to unit test
Commits on May 7, 2013
  1. Adding sample files used to test page orientation

    Lyle Mullican authored
Commits on Apr 27, 2013
  1. @nmadura

    Activated TrueType width calculator

    nmadura authored committed
    The TrueType width calculator was essentially unused, and was being set
    to TypeOneOrThree width calculator, upon activating it, found an error,
    I fixed that as well.
Commits on Apr 26, 2013
  1. Add spec for new method orientation()

    Lyle Mullican authored
Commits on Apr 7, 2013
  1. GlyphHash should recognise names with AXXXXX

    James Healy authored committed
    * where X is a digit
  2. Zapf Dingbat and Symbol fonts with no explicit encoding should defaul…

    James Healy authored
    …t to the correct encodings
    * fixes text extraction from these fonts
Commits on Mar 7, 2013
  1. fix a failing spec for RegisterReceiver#series

    James Healy authored
    * thanks to Peter Suschlik for reporting
Commits on Mar 6, 2013
  1. @splattael
  2. @splattael
  3. @pat

    Handle files with extra characters after the EOF marker.

    pat authored
    In this provided file, the suffix is mb, but this patch will ignore anything after the EOF marker, provided it's part of the same line.
Commits on Mar 2, 2013
  1. oops, this should have been included in ac28f59

    James Healy authored
  2. PDFs in the wild can have a cmap bfrange containing > 255 characters

    James Healy authored
    * I'm not sure why I added this check in the first place. Maybe because
      the cmap spec says only 255 chars are allowed. If that's the case I
      guess we follow the usual policy of "do what adobe acrobat does" and
      support ranges that aren't spec compliant.
    * thanks to AJarreck for reporting it
    * closes #87
Commits on Feb 25, 2013
  1. ensure we can extract text from pages with built in fonts

    James Healy authored
    * and no difference table
  2. update GlyphHash to support two-way translations

    James Healy authored
    * name to unicode codepoint
    * unicode codepoint to name
Commits on Feb 12, 2013
  1. assume 8.5" x 11" pages if the MediaBox is missing

    James Healy authored
    * the PDF spec requires a MediaBox, so any PDF that leaves it out isn't
    * Acrobat seems to just assume the page is 8.5" by 11", so users expect
      these non-compliant files to just work. We'd better copy the behaviour
Commits on Jan 28, 2013
  1. @chip
Commits on Jan 18, 2013
  1. add a forgotten spec file

  2. re-jig PageState#font_size to work with rotated text

    * The final font size is a combination of the text_font_size and any scaling.
    * Closes #74
Commits on Jan 17, 2013
  1. CTM concatenation should be pre-multiplicative

    * The order of multiplication matters when dealing with matrixes
    * PDF 32000-1:2008 spec section "8.3.4 Transformation Matrices" says
      that when concatenating one matrix onto the CTM you should start with
      the new matrix and multiply it by the CTM.
    * Thanks to Zack Drach for reporting (Closes #75)
Commits on Dec 19, 2012
  1. opening an empty file should raise a MalformedPDFError

    * add an integration spec to prove it
    * closes #69
Commits on Nov 26, 2012
Something went wrong with that request. Please try again.