Package: ocrmypdf
OCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched or copy-pasted.ocrmypdf# it's a scriptable command line program-leng+fra# it supports multiple languages--rotate-pages# it can fix pages that are misrotated--deskew# it can deskew crooked PDFs!--title"My PDF"# it can change output metadata--jobs4# it uses multiple cores by default--output-typepdfa# it produces PDF/A by defaultinput_scanned.pdf# takes PDF input (or images)output_searchable.pdf# produces validated PDF outputSee the release notes for details on the latest changes.Main featuresGenerates a searchablePDF/Afile from a regular PDFPlaces OCR text accurately below the image to ease copy / pasteKeeps the exact resolution of the original embedded imagesWhen possible, inserts OCR information as a "lossless" operation without disrupting any other contentOptimizes PDF images, often producing files smaller than the input fileIf requested, deskews and/or cleans the image before performing OCRValidates input and output filesDistributes work across all available CPU coresUsesTesseract OCRengine to recognize more than100 languagesKeeps your private data private.Scales properly to handle files with thousands of pages.Battle-tested on millions of PDFs.For details: please consult thedocumentation.MotivationI searched the web for a free command line tool to OCR PDF files: I found many, but none of them were really satisfying:Either they produced PDF files with misplaced text under the image (making copy/paste impossible)Or they did not handle accents and multilingual charactersOr they changed the resolution of the embedded imagesOr they generated ridiculously large PDF filesOr they crashed when trying to OCROr they did not produce valid PDF filesOn top of that none of them produced PDF/A files (format dedicated for long time storage)...so I decided to develop my own tool.InstallationLinux, Windows, macOS and FreeBSD are supported. Docker images are also available, for both x64 and ARM.Operating systemInstall commandDebian, Ubuntuapt install ocrmypdfWindows Subsystem for Linuxapt install ocrmypdfFedoradnf install ocrmypdfmacOS (Homebrew)brew install ocrmypdfmacOS (nix)nix-env -i ocrmypdfLinuxBrewbrew install ocrmypdfFreeBSDpkg install py-ocrmypdfCondaconda install ocrmypdfUbuntu Snapsnap install ocrmypdfFor everyone else,see our documentationfor installation steps.LanguagesOCRmyPDF uses Tesseract for OCR, and relies on its language packs. For Linux users, you can often find packages that provide language packs:# Display a list of all Tesseract language packsapt-cachesearchtesseract-ocr# Debian/Ubuntu usersapt-getinstalltesseract-ocr-chi-sim# Example: Install Chinese Simplified language pack# Arch Linux userspacman-Stesseract-data-engtesseract-data-deu# Example: Install the English and German language packs# brew macOS usersbrewinstalltesseract-langYou can then pass the-l LANGargument to OCRmyPDF to give a hint as to what languages it should search for. Multiple languages can be requested.OCRmyPDF supports Tesseract 4.1.1+. It will automatically use whichever version it finds first on thePATHenvironment variable. On Windows, ifPATHdoes not provide a Tesseract binary, we use the highest version number that is installed according to the Windows Registry.Documentation and supportOnce OCRmyPDF is installed, the built-in help which explains the command syntax and options can be accessed via:ocrmypdf--helpOurdocumentation is served on Read the Docs.Please report issues on ourGitHub issuespage, and follow the issue template for quick response.RequirementsIn addition to the required Python version (3.8+), OCRmyPDF requires external program installations of Ghostscript and Tesseract OCR. OCRmyPDF is pure Python, and runs on pretty much everything: Linux, macOS, Windows and FreeBSD.Press & MediaGoing paperless with OCRmyPDFConverting a scanned document into a compressed searchable PDF with redactionsc't 1-2014, page 59: Detailed presentation of OCRmyPDF v1.0 in the leading German IT magazine c'theise Open Source, 09/2014: Texterkennung mit OCRmyPDFheise Durchsuchbare PDF-Dokumente mit OCRmyPDF erstellenExcellent Utilities: OCRmyPDFLinuxUser Texterkennung mit OCRmyPDF und Scanbd automatisierenY Combinator discussionBusiness enquiriesOCRmyPDF would not be the software that it is today without companies and users choosing to provide support for feature development and consulting enquiries. We are happy to discuss all enquiries, whether for extending the existing feature set, or integrating OCRmyPDF into a larger system.LicenseThe OCRmyPDF software is licensed under the Mozilla Public License 2.0 (MPL-2.0). This license permits integration of OCRmyPDF with other code, included commercial and closed source, but asks you to publish source-level modifications you make to OCRmyPDF.Some components of OCRmyPDF have other licenses, as indicated by standard SPDX license identifiers or the DEP5 copyright and licensing information file. Generally speaking, non-core code is licensed under MIT, and the documentation and test files are licensed under Creative Commons ShareAlike 4.0 (CC-BY-SA 4.0).DisclaimerThe software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.