K2pdfopt optimizes PDF and DJVU files for mobile eReaders (e.g. the Kindle) and smartphones. It works well on multi-column PDF/DJVU files and can re-flow text even on scanned PDF files. K2pdfopt is open source and can be used on Windows, Linux, and MacOS X. It has OCR capability, native or bitmapped PDF output options, and an integrated GUI (MS Windows only). It can be used as a command-line utility on all platforms.
 How to use k2pdfopt
No install is required and no extra files or packages are necessary to run k2pdfopt (unless Tesseract OCR is desired). Just drag and drop your PDF/DJVU file icon onto the k2pdfopt icon to convert it. You will be prompted for conversion options (as of v1.16). In the MS Windows GUI, select your conversion options and then click on the "Convert All Files" button. For the Linux and Mac OSX versions, press <Enter> to convert the file using the default settings or select options from the text menu. When the conversion is complete, a new PDF file with _k2opt at the end of the name will be created. This converted (output) file is optimized for viewing on Kindles and other mobile readers with 6-inch screens (if the settings are not customized). You can also drop a folder full of PDF/DJVU files onto the k2pdfopt icon to batch convert them. You can even drop a folder full of bitmap images to have them converted into a single PDF as if they were pages of a PDF file.
 Screen shots of k2pdfopt
|MS Windows GUI||Linux / OSX Text Menu (command-line version)|
 Portable environment
The k2pdfopt settings are all stored in K2PDFOPT... environment variables since environment variables are cross-platform, relatively reliable and non-intrusive ways to store settings. So if you use a different machine you need only correctly transfer environment variables from your old installation to the new one.