|
40475a3093
|
Clean unneeded stuff separating the monadic type constraint from the actual monad stack used, one more step towrds MonadFail -> MonadError
|
2020-03-14 16:55:34 +01:00 |
|
|
b6c1f670ef
|
Generalize the search for FlateDecode (there can be several filters in an array)
|
2020-03-11 10:47:52 +01:00 |
|
|
dce10ae63a
|
Keep Page as only a reference object keeping the ObjectId explicit so we can modify the actual objects one day, write an OrderedMap data structure to help
|
2020-03-08 22:18:47 +01:00 |
|
|
2b9abc24b6
|
Add a separate instance for Raw streams that don't try to decode them
|
2020-03-04 18:31:30 +01:00 |
|
|
7cef65d799
|
Fixed vicious bug introduced by 6096a1a237 (since follow is now automatic for references, it's not called explicitely but should in case of 'several' Content, which is an array of references, each of which should be expended) — TODO: add a unit test for that
|
2020-03-04 18:14:33 +01:00 |
|
|
2c02e44adf
|
Export the PDFContent monadic type used in PDF.Pages
|
2020-03-03 18:16:12 +01:00 |
|
|
4969c6442e
|
Simple String aliasing to prepare the day when we'll be able to have more complex Component than just PDF Names (and access elements in an array)
|
2020-02-28 18:14:27 +01:00 |
|
|
99014ff30d
|
Recognize openStream was just an implementation of r for the Box m () Object ByteString, and extend it implementing the w operation while we're at it
|
2020-02-26 22:13:29 +01:00 |
|
|
36b1782464
|
Follow previous renaming for a local variable in Navigation for more clarity
|
2020-02-23 22:15:52 +01:00 |
|
|
bcf2e05bfb
|
Move Content out of Object module into a separate one incorporating PDF.Update (which is actually an operation that is defined only on that structure), and rename it Layer to avoid confusion with Content streams as defined in the specs (which have their own PDF.Content module already)
|
2020-02-17 15:29:59 +01:00 |
|
|
6096a1a237
|
Simplify navigations by centering everything on Objects to avoid needing to many conversion tools between DirectObject / Object / Dictionary
|
2020-02-15 13:51:24 +01:00 |
|
|
23186100a8
|
Reimplement getObj with the newest tools in PDF.Object.Navigation, in particular implement browsing by paths or random objectId access
|
2020-02-15 10:25:09 +01:00 |
|
|
b916ab5206
|
Just noticed Streams are a kind of Dictionary too, since they have a header
|
2020-02-15 10:23:32 +01:00 |
|
|
4a6dbda7d3
|
Move Error type from Pages to Navigation as a candidate for MonadFail required by PDFContent defined there
|
2020-02-15 10:22:42 +01:00 |
|
|
eb4d76002c
|
Finish the split of Navigation out of Page, generalize the use of MonadFail with a custom Error monad (~= Either String)
|
2020-02-11 22:41:46 +01:00 |
|
|
704d7a7fcf
|
It turns out Output.concat wasn't necessary, OBuilder seems already is a Monoid so mconcat works (that fact was used in the very implementation of concat…)
|
2020-02-11 17:36:29 +01:00 |
|
|
aed7af376a
|
WIP: still trying to figure things out, moved to a separate submodule for Navigation, proper naming is hell
|
2020-02-11 08:29:08 +01:00 |
|