Commit Graph
100 Commits
Author SHA1 Message Date
Eliot Jones d92186f25e licensing stuff 2018-01-10 20:01:37 +00:00
Eliot Jones 45d0a8f863 add icon in preparation for deployment 2018-01-10 19:54:31 +00:00
Eliot Jones ec62542b64 change the project name to something silly 2018-01-10 19:49:32 +00:00
Eliot Jones ab5a357665 fix bugs with reading documents from microsoft print to pdf 2018-01-10 19:23:10 +00:00
Eliot Jones 674945206c handle case where no unicode value is found for type 1 fonts. 2018-01-09 22:32:18 +00:00
Eliot Jones b2936660d7 update the readme and document public properties 2018-01-08 23:19:51 +00:00
Eliot Jones 10df612a00 throw informative exception when the document is encrypted 2018-01-08 22:43:48 +00:00
Eliot Jones bf7d3868da check public api through reflection 2018-01-08 22:08:58 +00:00
Eliot Jones b1fbcd0ccd support type 1 normal fonts and fix bug with fetching resource dictionary 2018-01-08 21:58:07 +00:00
Eliot Jones 133ab43d45 fix a bug with font reading order in multi-page documents 2018-01-07 20:19:17 +00:00
Eliot Jones 59c36a7ddd fix a bug with t* operator due to incorrect specification. add generic name to type 3 fonts. 2018-01-07 15:38:43 +00:00
Eliot Jones 70361973b3 add support for reading encoding differences from font dictionary. add type 3 font support. 2018-01-07 14:49:17 +00:00
Eliot Jones 18eeb896e0 more documentation and remove unused code 2018-01-07 12:41:55 +00:00
Eliot Jones bb93484909 encapsulation for internal classes, remove old code, document public api 2018-01-07 12:37:48 +00:00
Eliot Jones ad1ef0e167 make package nuget publishable 2018-01-07 12:09:23 +00:00
Eliot Jones a6c3dba25a bug fix for indirect page link, bug fix for array in base font range in cmap 2018-01-07 11:51:18 +00:00
Eliot Jones c75b9d10bd add test for unusual latin characters and different document producer. 2018-01-06 21:06:26 +00:00
Eliot Jones d1aa390f01 support reading text from type 1 fonts which use standard 14 fonts 2018-01-06 20:51:20 +00:00
Eliot Jones 96d787e498 finish adobe font metrics parser 2018-01-06 19:48:07 +00:00
Eliot Jones 02845e8ebb handle case where contents is an array of objects 2018-01-06 18:25:47 +00:00
Eliot Jones eb66611e55 checkpoint check in for adobe font metrics parsing 2018-01-06 14:11:14 +00:00
Eliot Jones 03f31a84e5 tests for end of line tokenizer and branch coverage for string tokenizer 2018-01-06 12:08:52 +00:00
Eliot Jones bbcb5af2be fix bugs revealed by mortality metadata document. get references using the direct object finder. fix a bug with string tokenizer 2018-01-05 23:08:20 +00:00
Eliot Jones 2e7f9b8d76 add a more complicated type 2 font pdf and tests 2018-01-04 21:25:49 +00:00
Eliot Jones 6b4bd8689f start migrating cross reference parsing process to token scanner 2018-01-04 21:09:47 +00:00
Eliot Jones 1c41618950 cover missing line in file trailer parsing 2018-01-03 22:51:44 +00:00
Eliot Jones 1aacb14285 add test for multiple page pdf from libre office 2018-01-03 22:46:26 +00:00
Eliot Jones 21be34a938 substitute the token scanner into the file trailer parsing and test 2018-01-03 22:29:09 +00:00
Eliot Jones f09ef85e5a make tokenizer classes internal and change the file header to use a scanner rather than the pdfbox type reader 2018-01-03 20:15:25 +00:00
Eliot Jones 72ffa1f308 make byte array input bytes behave correctly when seeking rather than forcing the consumer to work around it. 2018-01-03 19:17:12 +00:00
Eliot Jones bfdca3079f change the itext document test to reflect its text being form content. fix readme typo 2018-01-03 19:13:12 +00:00
Eliot Jones 7a28b05372 update readme to provide more details on the api 2018-01-03 13:06:54 +00:00
Eliot Jones 0ef33f5215 move catalog parsing to its own factory. parse document information if present and expose publically. add test for itext generated document 2018-01-02 23:26:58 +00:00
Eliot Jones 8b8f2941a5 undo debugging code 2018-01-02 22:23:50 +00:00
Eliot Jones 5ab8d69ea5 fix bug with computing text positions 2018-01-02 22:23:08 +00:00
Eliot Jones d03c04cca1 test coverage for parsing glyph lists and fix bug with octal conversion 2018-01-01 18:39:18 +00:00
Eliot Jones d7b9a9d559 implement glyph list for mapping from character code to name to unicode 2018-01-01 17:23:32 +00:00
Eliot Jones c34bdac92a add test for non latin characters and use normal ints rather than octal in the encoding classes. 2018-01-01 13:49:24 +00:00
Eliot Jones 874f713566 load resources dictionary from pages as well as page node and throw informative error when the font is not found. 2018-01-01 10:49:05 +00:00
Eliot Jones b77b7ec0d8 delete unused code and move cosboolean to pdfboolean 2017-12-31 16:04:50 +00:00
Eliot Jones 8f18a55c22 add very basic handler for simple truetype fonts 2017-12-31 15:30:47 +00:00
Eliot Jones d668c4e892 make everything internal which does not need to be public 2017-12-31 14:23:36 +00:00
Eliot Jones a77e8e1a56 implement the show text with positioning operator, fix bugs with parsing stream lengths contained in indirect objects. fix bug with parsing font dictionaries contained in indirect objects. 2017-12-31 14:11:13 +00:00
Eliot Jones 33c628e0c8 add page size and more tests for cross reference table parsing 2017-12-30 18:37:57 +00:00
Eliot Jones cf41614cc2 add doc comments, make point size internal until I can learn matrices, add test case for ascii 85 filter, add test case for document text 2017-12-30 18:02:59 +00:00
Eliot Jones 88c86971d8 test coverage for cross reference table parsing 2017-12-30 17:47:41 +00:00
Eliot Jones 2a706af87b test coverage and fix bugs with ascii 85 filter 2017-12-30 13:09:46 +00:00
Eliot Jones 6adc0c169d fix bugs with reading cross reference tables. 2017-12-30 12:56:46 +00:00
Eliot Jones f869bba72c add run length filter and delete old code 2017-12-29 11:08:59 +00:00
Eliot Jones 26e244371b add support for ascii hex encoding in streams 2017-12-28 18:10:18 +00:00
Eliot Jones 1feaf878cb make test data more tolerant to different environments 2017-12-28 17:06:02 +00:00
Eliot Jones 17d1d77abc add more documents to test font size and add tests to check our text positions against other providers 2017-12-28 16:58:52 +00:00
Eliot Jones b1d28a5af8 encapsulate the internals better and improve the api for pdfdocument, delete old code and tidy tests. expand readme 2017-12-28 13:14:03 +00:00
Eliot Jones 940c51e2fb change the content stream processor to extract letters rather than just strings. 2017-12-27 19:11:27 +00:00
Eliot Jones d826ac1b79 change the name of the cmap class file back with the correct case 2017-12-27 17:49:40 +00:00
Eliot Jones ae79108d3c changes to cmap to correctly map for cid fonts. tests for codespace range 2017-12-27 17:49:08 +00:00
Eliot Jones 889b6a346d remove debugging code 2017-12-26 19:19:39 +00:00
Eliot Jones e050499db3 delete unused code, add cidsysteminfo to the cidfont and fix bug with string parser 2017-12-26 19:18:19 +00:00
Eliot Jones a6cdb4d508 remove more unused code 2017-12-26 14:40:58 +00:00
Eliot Jones 7a849639ae move and rename the pdf stream object 2017-12-26 14:31:30 +00:00
Eliot Jones b042ad7919 purge outdated code 2017-12-26 14:24:13 +00:00
Eliot Jones a97bac2c69 start creating interface structure for cid fonts to be used elsewhere. port most encoding classes from pdfbox 2017-12-26 14:02:47 +00:00
Eliot Jones cab46f1ecf handle error case where the descendant font for a type 0 composite font is not a dictionary 2017-12-25 22:30:34 +00:00
Eliot Jones 8d3c65b6cd fix bug where the end of data bytes were missing from an ascii 85 stream 2017-12-25 22:19:02 +00:00
Eliot Jones a3010e20ef add support for ascii 85 decoding 2017-12-24 22:34:08 +00:00
Eliot Jones b0960872a5 remove more unused classes 2017-12-22 23:58:16 +00:00
Eliot Jones f4d58e8aa9 create Type0 font, notes about font format, heavy duty refactoring to inject dependencies rather than god object 2017-12-22 23:54:54 +00:00
Eliot Jones 206eb91ff1 finish reading the encoding cmap for the type 0 font 2017-12-21 22:45:18 +00:00
Eliot Jones a0205ab637 test all predefined cmaps and fix bugs 2017-12-20 22:52:42 +00:00
Eliot Jones 078e67893d add predefined cmaps as resources and include in type0 font parsing 2017-12-20 22:14:47 +00:00
Eliot Jones 1d3f93acc1 Merge branch 'master' of https://github.com/UglyToad/Pdf 2017-12-17 09:51:51 +00:00
Eliot Jones e5aa752248 fix problems with parsing the glyph table and other bugs with truetype parsing 2017-12-17 09:51:37 +00:00
Eliot Jones 3cf55212f1 add apache 2 licence 2017-12-08 13:40:51 +00:00
Eliot Jones 7bde49d019 scaffold the code for reading the glyph data table 2017-12-06 21:12:56 +00:00
Eliot Jones ede706baae add very simple tests to boost coverage 2017-12-06 00:13:33 +00:00
Eliot Jones f8c7595ddd update record of script for appveyor 2017-12-05 23:59:55 +00:00
Eliot Jones 7a0c4aaf9f add index to location table and remove old version of opencover from the tools folder 2017-12-05 23:59:41 +00:00
Eliot Jones 2dc7e78d2e add coverage badge 2017-12-05 23:45:59 +00:00
Eliot Jones f40ff24786 change script options for app veyor 2017-12-05 23:20:14 +00:00
Eliot Jones 6b11d570c9 add a different way of running open cover since it doesn't work on app veyor 2017-12-05 22:44:37 +00:00
Eliot Jones 70b01deb38 add tools for code coverage metrics 2017-12-05 21:26:07 +00:00
Eliot Jones 8d9960ef98 add postscript table 2017-12-04 23:00:57 +00:00
Eliot Jones c0618a303f add maximum profile table 2017-12-04 22:15:47 +00:00
Eliot Jones 236cdd286e add horizontal header table parsing 2017-12-04 21:52:10 +00:00
Eliot Jones 207b0ebe7b remove old debugging code 2017-12-04 07:46:43 +00:00
Eliot Jones 0ca417e21c create javascript to verify the output of the true type font parser. fix bugs 2017-12-04 01:36:30 +00:00
Eliot Jones 33c10a3ff7 start adding true type font parsing logic 2017-12-03 21:31:59 +00:00
Eliot Jones 644fd3e19d rename contentstreamdictionary to pdfdictionary. add initial structure for cid fonts 2017-12-03 15:01:17 +00:00
Eliot Jones b4cddbec7b start porting the afm parser from pdf box, so many comments! 2017-12-03 00:10:40 +00:00
Eliot Jones bb07bd5cd4 reorganise code for parsing font dictionaries and add the afm files as resources for adobe font metrics 2017-12-02 23:50:58 +00:00
Eliot Jones b8aff65e1a add assertion to the document parsing test 2017-12-02 19:33:18 +00:00
Eliot Jones 3d082ef236 get the text out of the google docs document finally 2017-12-02 19:08:38 +00:00
Eliot Jones 257439b8a3 make classes internal and scaffold reading of glyphs 2017-12-02 14:57:44 +00:00
Eliot Jones 188c6efa61 add a run method to all graphics state operations 2017-12-02 14:11:20 +00:00
Eliot Jones ced3a86293 add gethashcode for transformation matrix 2017-11-30 23:49:53 +00:00
Eliot Jones 90b67586dc add empty run methods to operations we are not implementing yet 2017-11-30 23:47:24 +00:00
Eliot Jones 1de60d7479 implement text positioning operations and general operations. as well as cm operation. 2017-11-30 23:34:38 +00:00
Eliot Jones ab5377884f add operation processing for text state operations, support for matrix multiplication with tests and td operation support 2017-11-29 22:55:53 +00:00
Eliot Jones 157030ea31 fix failing test due to bug in deep clone of graphics state 2017-11-26 22:23:40 +00:00
Eliot Jones ed634e86fe arrange operations into folders in line with grouping from the specification and start creating a context to mutate through operations. 2017-11-26 22:19:42 +00:00