Commit Graph

746 Commits

Author SHA1 Message Date
Jeremy Singer-Vine 7e28e76dd3 Remove test_issue_1089 (#1263)
@booxter makes a good point that the test is platform-specific. The
issue has been resolved, and it's not expected to return, so I think
provisionally OK to remove this test.
2025-03-25 23:03:13 -04:00
Jeremy Singer-Vine 630f30ef10 pragma:nocover exceptions no longer raised by pdfminer.six 2025-03-25 22:52:47 -04:00
Jeremy Singer-Vine 12a73a2599 Bump pdfminer.six to version 20250324 2025-03-25 22:52:16 -04:00
Jeremy Singer-Vine 6349adb26d Add escapechar for .to_csv(...) 2025-02-10 22:09:28 -05:00
Jeremy Singer-Vine 980494a782 Use csv.QUOTE_MINIMAL for .to_csv(...) 2025-02-10 21:54:10 -05:00
Jeremy Singer-Vine 47a7ab88e3 Update exception handler 2025-02-10 21:53:17 -05:00
Jeremy Singer-Vine 8f5f498d8f Fix wrong exception expectation in test 2025-02-09 17:23:37 -05:00
Jeremy Singer-Vine 43ccc5b260 Catch exceptions from pdfminer and malformed PDFs
... thanks to OSS-Fuzz and @ennamarie19

Cf.: https://github.com/google/oss-fuzz/pull/12949
2025-02-09 16:25:30 -05:00
Jeremy Singer-Vine a77808a524 Merge pull request #1270 from mara004/patch-1
test_issue_1089: update wording regarding pypdfium2
2025-02-02 11:16:58 -05:00
mara004 5d47d5a927 test_issue_1089: update wording regarding pypdfium2
See https://github.com/jsvine/pdfplumber/issues/1089#issuecomment-2007961627 for background
2025-02-02 16:27:53 +01:00
Jeremy Singer-Vine c562774331 Bump version to 0.11.5 v0.11.5 2025-01-01 10:30:00 -05:00
Jeremy Singer-Vine 4af0e1dfef Update CHANGELOG.md 2025-01-01 10:29:53 -05:00
Jeremy Singer-Vine 7c6354193f Add thanks to @stolarczyk in README.md 2025-01-01 10:29:53 -05:00
Jeremy Singer-Vine 078df970aa Fix #1237 (tf → table_settings) h/t @n-traore
And thanks to @cmdlineluser for the nudge.
2024-12-31 09:11:32 -05:00
Jeremy Singer-Vine 6e54799542 Add thanks to @brandonrobertz (#1235) 2024-12-28 12:13:32 -05:00
Jeremy Singer-Vine 69d010a093 Add initial test/docs for format --text (#1235) 2024-12-15 23:24:31 -05:00
Jeremy Singer-Vine e0ee254726 Merge pull request #1235 from brandonrobertz/add-text-output-mode
Add a --format text option
2024-12-15 23:07:14 -05:00
Brandon Roberts f3f2b57fc0 Add a --format text option
I use this regularly because pdfplumber has among the best layout
preserving methods for PDFs, especially machine generated ones.
Exposing the page output via CLI lets me use pdfplumber as a general
purpose PDF-to-text tool.

Usage:

pdfplumber --format text file.pdf > file.txt
2024-12-10 14:21:22 -08:00
Jeremy Singer-Vine 28d4f50437 Merge PR #1195 2024-12-08 23:10:15 -05:00
Jeremy Singer-Vine 20731649dc Appease linter 2024-12-08 22:55:30 -05:00
Michal Stolarczyk c80c78dcf9 add a test to cover raise_unicode_errors parameter 2024-11-22 16:48:19 +01:00
Jeremy Singer-Vine 1e4b48aaa6 Run 'make format' and ignore code line-length 2024-11-22 08:18:11 -05:00
Michal Stolarczyk 138ababb3b rename warn_unicode_error to raise_unicode_errors for clarity
additionally change the default accordingly
2024-11-13 18:34:35 +01:00
Jeremy Singer-Vine ea3b3e5420 Merge pull request #1221 from erghelium/develop
Fix broken link to Anssi Nurminen's master's thesis in the README.md
2024-11-10 22:47:33 -05:00
Guilherme 8542adb95e Fix broken link to Anssi Nurminen's master's thesis in README 2024-11-10 18:19:04 -03:00
Jeremy Singer-Vine 6ef62c9791 Add name property to image objects (#1201)
h/t @djr2015
2024-10-02 21:11:38 -04:00
Michal Stolarczyk 396c5e3669 warn on unicode decoding errors in PDF annotations
in some cases the the annotations may contain some junk that hinders annotations processing altogether. This allows to ignore the error and warn instead, which is configurable via warn_unicode_error arguments in the PDF initializer and/or open() method.
2024-08-30 10:24:39 +02:00
Jeremy Singer-Vine e921ea748b Bump to v0.11.4 v0.11.4 2024-08-18 19:41:05 -04:00
Jeremy Singer-Vine 1d0eeff419 Quickfix for Python 3.8 type hint issue 2024-08-18 19:28:29 -04:00
Jeremy Singer-Vine e2a707b8bf Bump version to v0.11.3 v0.11.3 2024-08-07 15:50:29 -04:00
Jeremy Singer-Vine d7e4915c11 Update example notebooks 2024-08-07 15:50:10 -04:00
Jeremy Singer-Vine 349d315489 Prep CHANGELOG.md for next release 2024-08-07 15:48:35 -04:00
Jeremy Singer-Vine ab8cea9c9e Upgrade pytest 2024-08-07 10:40:57 -04:00
Jeremy Singer-Vine 61e497640b Upgrade mypy and fix resulting type errors/warnings 2024-08-07 10:40:57 -04:00
Jeremy Singer-Vine 6e769ea66d Rerun upgrade code-formatting libraries 2024-08-07 10:40:57 -04:00
Jeremy Singer-Vine 4a91adc71e Upgrade code-formatting libraries 2024-08-07 10:40:57 -04:00
Jeremy Singer-Vine 491c8096c4 Remove consulting note from README 2024-08-07 10:40:57 -04:00
Jeremy Singer-Vine 046bd874d5 Apply mediabox fix to pts and path 2024-08-07 10:40:57 -04:00
Jeremy Singer-Vine 9025c3fc56 Fix object coordinates when mediabox != (0,0,...)
See issue #1181 for details.
2024-08-05 12:28:42 -04:00
Jeremy Singer-Vine 03a477f7f0 Add pdfplumber.open(unicode_norm=...)
Allows user to pre-normalize Unicode characters.

h/t @petermr + @agusluques in #905
2024-08-04 14:11:58 -04:00
Jeremy Singer-Vine 22494e8da2 Make Page.crop(...) also crop .annots/.hyperlinks
h/t @Safrone in #1171
2024-08-04 13:14:12 -04:00
Jeremy Singer-Vine b16acc36be Fix coords for annotations on CroppedPages 2024-08-04 13:09:42 -04:00
Jeremy Singer-Vine 1496cbda7d Add return_chars=True kwarg to Page.extract_words
h/t @cmdlineluser in #1173
2024-08-04 11:14:07 -04:00
Jeremy Singer-Vine 2dd9c0451d Fix username in changelog 2024-08-04 10:48:52 -04:00
Jeremy Singer-Vine c20cd3b617 Fix Page.attr: resolve before None-check (#1176)
h/t @zzhangyun + @mkl-public
2024-08-04 10:44:31 -04:00
Jeremy Singer-Vine d39302fa2c Add Table.columns, analogous to Table.rows (#1050)
h/t @Pk13055 for the suggestion
2024-08-02 19:00:23 -04:00
Jeremy Singer-Vine 48cab3f73e Change default .repair(...) setting h/t @Laubeee
Now passes "default" rather than "prepress" to Ghostscript's
`-dPDFSETTINGS` parameter.

Also makes that setting modifiable via `.repair(setting=...)`, where the
value is one of `"default"`, `"prepress"`, `"printer"`, or `"ebook"`.

See #874 and https://ghostscript.com/docs/9.54.0/VectorDevices.htm
2024-07-31 18:16:00 -04:00
Jeremy Singer-Vine 6c1bbd41a4 Update CHANGELOG.md 2024-07-14 17:34:19 -04:00
Jeremy Singer-Vine e5737d29c2 Fix broken CroppedPage.annots/hyperlinks
Issue was caused by missing `.initial_doctop` and `.rotation`
properties. h/t @Safrone in #1171
2024-07-14 17:27:05 -04:00
Jeremy Singer-Vine fc1e671687 Merge pull request #1169 from dhdaines/struct_follow_refs
fix: dereference structure element attributes
2024-07-14 17:15:06 -04:00