dart_pdf_reader
Small pure-dart library for parsing PDF files. Supports reading all pdf structures
2.2.0
51K downloads/mo
#1461 most downloaded on pub.dev
NicolaVerbeeck/dart_pdf_reader
What this package is like to depend on
Last release 5 months ago
02 Mar 2026
Ships unpredictably
gaps range from 8 days to 1.5 years
Nearly every release is documented
notes for 34 of 34 stable releases
Nothing withdrawn
no release was ever pulled
3 years old
34 releases · first in 2023
1 release in the last 12 months
see the full history below
Release timeline
34 releases · Jun 2023 to Mar 2026Releases
latest 34-
2.2.002 Mar 2026 -
2.1.002 Sep 2024Release notes
Open source →What's Changed
- Use episolon to compare numbers by @NicolaVerbeeck in #144
Full Changelog: v2.0.1...v2.1.0
Release notes
Open source →- !POTENTIALLY BREAKING! Use delta when comparing numbers for equality. Fixes #143
-
2.0.104 Jul 2024Release notes
Open source →What's Changed
- Add flag to stop always caching read objects in memory by @NicolaVerbeeck in #123
Full Changelog: v2.0.0...v2.0.1
-
2.0.003 Jun 2024Release notes
Open source →What's Changed
- Add web support
- Support badly formatted PDFs that have only 19 byte long xref sections
- Breaking FileStream has moved to dart_pdf_reader_io library
Release notes
Open source →- Add web support
- Support badly formatted PDFs that have only 19 byte long xref sections
- Breaking FileStream has moved to dart_pdf_reader_io library
-
1.0.123 Apr 2024 -
1.0.001 Apr 2024Release notes
Open source →What's Changed
- Graduating to a first major release by @NicolaVerbeeck in #79
- Fixed bug in RunLengthDecode filter by @NicolaVerbeeck in #78
- Integrate build pipeline with openssf and step-security
- Mature repo
New Contributors
- @step-security-bot made their first contribution in #53
Full Changelog: v0.5.1...v1.0.0
Release notes
Open source →- Graduating to a first major release
- Fixed issue in RunLengthDecode filter where it would not advance the data pointer correctly (off-by-one error)
- Integrate build pipeline with openssf and step-security
- Mature repo
-
0.5.107 Jan 2024Release notes
Open source →What's Changed
- Allow parsing of streams with extra whitespaces by @NicolaVerbeeck in #51
Full Changelog: v0.5.0...v0.5.1
Release notes
Open source →- Fix parsing PDFs where stream or startxref ends with extra whitespace (#50)
-
0.5.021 Dec 2023Release notes
Open source →What's Changed
- Add support for web by using archive package. by @NicolaVerbeeck in #49
Full Changelog: v0.4.3...v0.5.0
Release notes
Open source →- Add support for web by using the archive package. (#48)
- Breaking: EOFException and ParseException now no longer implement dart:io's IOException, just base Exception. ( #48)
-
0.4.319 Dec 2023Release notes
Open source →What's Changed
- Feature/more parser tests by @NicolaVerbeeck in #43
- Add more tests for parser folder by @NicolaVerbeeck in #44
- Add test for compressed stream by @NicolaVerbeeck in #45
- Bump lints from 2.1.1 to 3.0.0 by @dependabot in #46
- Add tests for flate decoder by @NicolaVerbeeck in #47
New Contributors
- @dependabot made their first contribution in #46
Full Changelog: v0.4.2...v0.4.3
-
0.4.205 Sep 2023 -
0.4.105 Sep 2023Release notes
Open source →- Don't require endstream to be followed by a newline (#40)
- Use read word to read trailer header (#41)
- Cleanup usages of PDFName and group common names in PDFNames
-
0.4.004 Sep 2023Release notes
Open source →- Add experimental support for extends on object streams (#29)
- Ensure compressed xrefs can be read without decode parameters (#33)
- Seek further backwards when searching for %%EOF (#34)
-
0.3.004 Sep 2023Release notes
Open source →- Added
pageCounttoPDFPages - Updated
PDFNumberto use 10 fraction digits intoStringinstead of 5
- Added
-
0.2.603 Sep 2023Release notes
Open source →- Add buffered stream implementation to enable for faster reading of files
-
0.2.521 Aug 2023 -
0.2.418 Aug 2023Release notes
Open source →- Add direct support for accessing page's art, bleed, crop and trim boxes
- Add direct support for accessing page's rotation flag
-
0.2.318 Aug 2023 -
0.2.218 Aug 2023 -
0.2.118 Aug 2023 -
0.2.017 Aug 2023Release notes
Open source →- Bugfix: Hex strings now consume their ending bracket
- Bugfix: Multiple content streams in a page are now supported
- Update: Support direct dictionaries in outlines
- Breaking:
destinationinPDFOutlineGoToActionhas been updated to a generic object as per spec - Deprecation:
page.contentStreamhas been deprecated in favor ofpage.contentStreams
-
0.1.615 Aug 2023Release notes
Open source →- Fixed bug in
ByteOutputStreamwhere writeAll would not update position - Added tests for
ByteOutputStreamandByteInputStream
- Fixed bug in
-
0.1.514 Aug 2023Release notes
Open source →- Fixed bug when using fastRead
- Added more uint list optimizations where possible
-
0.1.411 Aug 2023Release notes
Open source →- Use Uint8List instead of List<int> for bytes
- Add fast path for copying bytes from ByteStream
-
0.1.310 Aug 2023 -
0.1.227 Jul 2023 -
0.1.125 Jun 2023 -
0.1.023 Jun 2023Release notes
Open source →- Breaking: require dart 3
- Experimental: support loading compressed xref streams and compressed object streams
-
0.0.819 Jun 2023 -
0.0.714 Jun 2023 -
0.0.614 Jun 2023Release notes
Open source →- Add asPDFString to PDFStringLike that returns the string encoded for output in pdf
-
0.0.513 Jun 2023 -
0.0.413 Jun 2023 -
0.0.312 Jun 2023Release notes
Open source →- Remove unused dependencies
- Add some clone methods
- Change visibility of some dictionary map
-
0.0.112 Jun 2023