James R. Barlow
9bb42c0229
Wrong error type used for missing language
2017-08-24 01:07:23 -07:00
James R. Barlow
93a954ef9f
Fix missing import for Py3.5
2017-07-26 23:40:01 -07:00
James R. Barlow
0b012697e5
Whitelist the Latin-1 languages that work with HOCR
...
Omitted French because the rare 'oe' and 'ÿ' glyphs are not in Latin-1.
Basically steer people away from HOCR renderer but avoid a potential
disruptive behavior change.
2017-07-26 21:03:18 -07:00
James R. Barlow
58e357c992
Report location of attempted output_file that fails to write
2017-07-22 17:49:56 -07:00
James R. Barlow
71fbad83ad
Fix py3.5 test
2017-07-21 17:01:06 -07:00
James R. Barlow
1aa34f5d2e
Make some interfaces accepting of both str-paths and Path objects
2017-07-21 13:28:30 -07:00
James R. Barlow
dfa1d88ce9
Fix missing user_words/user_patterns from textonly_pdf case
2017-07-20 17:14:04 -07:00
James R. Barlow
dd38519f07
Merge branch 'feature/user-words' into develop
...
# Conflicts:
# ocrmypdf/exec/tesseract.py
2017-07-20 16:25:20 -07:00
James R. Barlow
cd1a99a0de
Refactor int(os.path.basename(s)[0:6]) -> page_number(s)
2017-06-26 13:29:40 -07:00
James R. Barlow
48e3b267fc
Accept PDFs with whitespace ahead of %PDF marker
...
Noticed in @aagahi 's fork
2017-06-26 13:17:47 -07:00
James R. Barlow
2c24f67deb
Rename “tess4” renderer to “sandwich” and make it default in Tess 3.05.01
...
Tesseract 3.05.01 backported the textonly_pdf=1 which allows the use
of this superior PDF renderer prior to 4.00 alpha. This means that
the tess4 name is no longer accurate, so call it a sandwich because of
its merge-preserve characteristic. Preserve the tess4 name. Fix the
documentation and tests to reflect this.
Make it the default, because it’s better. It does not have the issues
the “tesseract” renderer does prior to Tess 3.05.00 with rendering
PDFs that Ghostscript corrupts, and it produces better output without
re-rastering.
Deprecate some old stuff to avoid the test suite growing obscenely
large.
2017-06-13 13:09:12 -07:00
James R. Barlow
3232643809
Support “textonly PDF” renderer in Tesseract 3.05.01
2017-06-13 10:18:08 -07:00
James R. Barlow
d3c54fbbde
For —rotate-pages, rasterize preview at half DPI instead of 200 DPI
...
Ensures that time is not wasted on previews at higher resolution than
the input as was sometimes the case
2017-05-29 13:01:18 -07:00
James R. Barlow
1d57bcc99e
Fix Ghostscript rasterizing of UserUnit pages and related sizing issues
2017-05-29 12:14:10 -07:00
James R. Barlow
facdd13879
Ghostscript: refactor image output resizing
2017-05-29 11:42:27 -07:00
James R. Barlow
6e891f91d3
ghostscript, qpdf: Restore API backward compatibility
2017-05-29 11:13:06 -07:00
James R. Barlow
9b50ede977
Partially solve ghostscript rasterize_pdf producing wrong file size
...
Kludge. Assumes JPEG for now. Messy.
2017-05-25 01:17:43 -07:00
James R. Barlow
82cf010333
Error out if trying to produce PDF/A >200” due to Ghostscript limitation
2017-05-25 00:07:29 -07:00
James R. Barlow
6ff6c8614f
—output-type=pdf now outputs /UserUnit PDFs at the correct size
...
This currently distorts the output size because Tesseract assumes it
knows the DPI better than we do.
Does not work for Ghostscript, because it emerges that Ghostscript
honors /UserUnit for rasterizing but not in pdfwrite (resolve/wontfix).
https://bugs.ghostscript.com/show_bug.cgi?id=690781
Ghostscript’s output would need to be patched in a PDF/A safe way for
this to work. Temporary route may be to block Ghostscript if
/UserUnit.
2017-05-24 23:26:07 -07:00
James R. Barlow
eb1cd38f6c
Add an open helper that is compatible with pathlib
2017-05-24 16:19:15 -07:00
James R. Barlow
148b632b4f
Prove multiprocessing works, although it is still racy in some places
2017-05-23 16:32:13 -07:00
James R. Barlow
d9005a1074
pdfinfo: replace most remaining dict-style access
2017-05-19 16:17:36 -07:00
James R. Barlow
3e73fa81bf
pageinfo: deprecation warning
2017-05-19 16:17:07 -07:00
James R. Barlow
ba6e290231
Restore old pageinfo.py to avoid breaking compatibility
2017-05-19 15:49:23 -07:00
James R. Barlow
08e47117a3
Rename pageinfo to pdfinfo
2017-05-19 15:48:23 -07:00
James R. Barlow
532ef38157
/UserUnit is a scalar, not an array
2017-05-19 14:19:50 -07:00
James R. Barlow
4c04d802d7
Introduce /UserUnit checking
2017-05-19 12:01:19 -07:00
James R. Barlow
8694f8d2eb
Replace magic strings colorspace and encoding with Enums
2017-05-18 22:32:27 -07:00
James R. Barlow
263f9b79f4
pageinfo: debug stuff
2017-05-18 21:52:55 -07:00
James R. Barlow
56d2aae963
Refactor from ImageInfo index to attribute accessing
2017-05-18 18:39:14 -07:00
James R. Barlow
127706153d
Refactor dictionary based image info to ImageInfo
2017-05-18 18:26:31 -07:00
James R. Barlow
caee5b1428
Access PageInfo instance variables instead of dictionary
2017-05-18 17:12:04 -07:00
James R. Barlow
6c12e7e944
Refactor pageinfo dictionary to PageInfo()
2017-05-18 16:53:38 -07:00
James R. Barlow
cd04ae6949
Refactor PdfInfo(str(filename)) -> PdfInfo(filename)
2017-05-18 16:43:50 -07:00
James R. Barlow
6a0b68298f
Refactor pdf_get_all_pageinfo to PdfInfo
2017-05-18 16:31:18 -07:00
James R. Barlow
131a5b741d
tesseract.py: update canned HOCR template to tess 3.05 output
...
Seems better to not claim the existence of several entities that don’t
exist as the older one does
2017-05-14 23:40:09 -07:00
James R. Barlow
65b89687a9
ghostscript: fix missing “import sys”, only applicable for an exception
2017-05-14 23:38:52 -07:00
James R. Barlow
048ae40e75
Update copyrights
2017-05-14 23:38:28 -07:00
James R. Barlow
234183ecd2
Fix: Tesseract 3.04 is sensitive to order of configuration commands
...
“txt hocr” is not acceptable and does not produce expected output .txt
while “hocr text” works fine, so switch the order everywhere.
Should fix #169
2017-05-14 23:27:46 -07:00
James R. Barlow
b1f79e4d97
Disable other use redo_ocr
2017-05-12 13:24:30 -07:00
James R. Barlow
115d6df94f
Warn user when —image-dpi is supplied but ignored
2017-05-12 12:09:53 -07:00
James R. Barlow
559af9635f
—redo-ocr is not implemented, so disable
2017-05-12 12:08:16 -07:00
James R. Barlow
83230097ae
Insist on Tesseract 3.04 wherever we check for it
2017-05-11 23:51:28 -07:00
James R. Barlow
8f91acf956
Remove Tesseract 3.02 and 3.03 compatibility shims
2017-05-11 23:50:52 -07:00
James R. Barlow
56e6ed1249
Fix missing import; all tests passing!
2017-05-11 23:28:05 -07:00
James R. Barlow
0dae1602c7
Fix missing import PIPE
2017-05-11 23:07:20 -07:00
James R. Barlow
96045e98f4
Update develop with master changes
...
We’re well out of the “trivial updates” zone
2017-05-11 22:54:27 -07:00
James R. Barlow
01b7205e2c
Ensure skipped pages are explained in sidecars
2017-05-11 00:43:36 -07:00
James R. Barlow
c8a4cbcf17
Fix test suite breakage after sidecar feature added
...
Forgot to update tesseract spoofers to account for change in tesseract
parameters. Also the change to outputting multiple files in the collate
steps affected how ruffus passes information into downstream consumers
of those files.
2017-05-11 00:17:24 -07:00
James R. Barlow
16b6442b23
Add changes to __main__.py that should have been in last commit
2017-05-10 17:55:42 -07:00