|
1dd22c3889
|
Going to try with Text, naturally handling UTF-16 but will still have to parse «int codes» manually from strings
|
2019-10-14 10:17:15 +02:00 |
|
|
98d029c4d4
|
In complete debug, more or less implemented CMap parsing but apparently it uses UTF16 ?!
|
2019-10-14 10:17:15 +02:00 |
|
|
c349d9b4c2
|
Don't trust serializer, they have nothing todo with a reasonable binary encoding
|
2019-10-14 10:17:15 +02:00 |
|
|
e7484ef536
|
Completely lost, the same old Char8 / Word8 again, implemented all the text reading, still needing a couple details to parse CMaps
|
2019-10-14 10:17:15 +02:00 |
|
|
f9e5683bf4
|
WIP: Use previous changes to start implementing font caching and text parsing (still very broken, doesn't compile)
|
2019-10-14 10:17:15 +02:00 |
|
|
b8eb9e6856
|
Generalize the Parser type into a MonadParser class to use with MonadTrans and remove redundant code already defined in Applicative or Attoparsec
|
2019-10-14 10:17:15 +02:00 |
|
|
66d315b7fe
|
Reflect the distinction between eval and run from State monad into the Parser module
|
2019-10-14 10:17:15 +02:00 |
|
|
51db57ec67
|
Ugly commit, breaks everything, still trying to figure a grammar for text
|
2019-10-14 10:17:15 +02:00 |
|
|
6f3c159ea7
|
Adding a module to implement text reading and a demo program to go with it
|
2019-10-14 10:17:15 +02:00 |
|
|
68f90d20e2
|
Implement PDF's multilayer updates and use it in getObj to display only the current version of the object taken into account instead of the concatenation of all its versions
|
2019-09-22 01:40:39 +02:00 |
|
|
3a39c75e6a
|
Stop requiring an empty line between subsections in a xref section
|
2019-09-22 01:37:28 +02:00 |
|
|
29c5823f34
|
Fix precision bug caused by using Floats to represent PDF Number values sometimes used to represent a byte offset within a file
|
2019-09-22 01:34:17 +02:00 |
|
|
699f830a45
|
Simplify XRef structure, clarify integer types and remove nextLine
|
2019-09-20 22:39:14 +02:00 |
|
|
264b0dc92b
|
Stop requiring «trailer» keywords to live on a separate line as counter-examples have been found
|
2019-05-31 15:08:54 +02:00 |
|
|
9dac275f68
|
Keep comment-opening '%' along with the comment and support empty lines
|
2019-05-31 15:07:41 +02:00 |
|
|
85e4eb9273
|
Fix bypassed error message for lines + add one for occurrences
|
2019-05-31 15:06:20 +02:00 |
|
|
11cb6504d7
|
Go strict ByteStrings with attoparsec
|
2019-05-24 10:48:09 +02:00 |
|
|
0daa03d958
|
Remove commented out dead code
|
2019-05-21 09:07:37 +02:00 |
|
|
b60f337cc4
|
First useable version
|
2019-05-18 11:09:03 +02:00 |
|
|
5614a25048
|
Generate valid PDF
|
2019-05-18 09:01:13 +02:00 |
|
|
0336baa687
|
Fix output implementation with dynamic XRefs
|
2019-05-17 16:14:06 +02:00 |
|
|
e23618da68
|
Implement output
|
2019-05-16 22:41:14 +02:00 |
|
|
088637b2c0
|
Compat stuff for Monoid / Semigroup
|
2019-05-16 21:40:19 +02:00 |
|
|
645466024a
|
Starting to implement output with String builder
|
2019-05-16 17:04:45 +02:00 |
|
|
9b2f890227
|
Boyer-Moore is canceled, implement the rest of parsing with naive search
|
2019-05-16 11:01:50 +02:00 |
|
|
fc41f815a3
|
Broken state : trying to implement Boyer-Moore for fast-forwarding to the end of a section
|
2019-05-15 19:13:35 +02:00 |
|
|
379a821550
|
Fix bugs preventing the objects from loading
|
2019-05-15 15:03:55 +02:00 |
|
|
44508a204c
|
Reuse Parser type in PDF.Body (and generalize the type of the comment parser)
|
2019-05-15 09:04:17 +02:00 |
|
|
91292d6401
|
Implement retrieving objects in the body of the document and use it to populate the structure previously parsed
|
2019-05-14 18:42:11 +02:00 |
|
|
8043f84da8
|
Cut PDF module in two, implement basic parsing up to reading XRef table
|
2019-05-13 18:22:05 +02:00 |
|
|
6eacb55fc4
|
Fix bug preventing startXref to be found for files with a single byte EOL encoding
|
2019-05-13 11:34:15 +02:00 |
|
|
c036334b6f
|
Prototype successfully parsing (only last) startxref
|
2019-05-13 08:05:28 +02:00 |
|