2.0 beta Free and open source · Linux, macOS, Windows

Scanned books, made readable.

Briss finds the printed area of every page, cuts away the scanner borders and margins, and splits two-page scans into single pages, so the text fills your e-reader, tablet or phone.

How Briss turns a scan into pages

A book laid open on the scanner: two pages per sheet, a dark border, a shadow in the gutter, and everything leaning a degree and a half.

These are not mock-ups. The sheet is a synthetic scan; the boxes, the pages and the numbers below are what Briss 2.0 beta produced from it.

290 pagescropped in about half a second
0 pixelsre-encoded: text and vectors stay as they are
1 fileno Java, no libraries to install
3 systemsLinux, macOS and Windows

What it does

Every sheet is measured for itself.

On scans, Briss looks at each page on its own. It ignores scanner borders, binding shadows, page edges and dust, and works out what a careful person would keep.

Two-page spreads become two pages

A sheet holding a left and a right page is cut at the gutter, in reading order. A blank side produces no page. Sheets with two pages one above the other are cut into a top and a bottom page.

Sideways scans turned upright

Pages stored sideways or upside down are turned before anything else, so a spread scanned sideways still comes out as its left and right page.

Leaning pages made level

Each page is straightened by its own angle, without re-encoding the scan.

Selectable, searchable text

Scanned pages get an invisible text layer you can search, select and copy, read by Tesseract.

Columns and halves

Split two-column papers into one column per page, or every page into a top and a bottom half, for small screens. No line is cut in two.

One page size

Every left page and every right page comes out the same size, so the text does not swell and shrink as you turn pages.

The document keeps working

Bookmarks, links, named destinations and encryption survive cropping and splitting. Only the visible page box changes.

Headers and page numbers: your call

Keep running headers, footers and page numbers inside the crop, or let them go with the margins. Chosen once for the whole book.

Ebooks and papers too

Born-digital PDFs use the original Briss auto-crop: pages are grouped by size and by odd or even side, and each group gets one crop.

The desktop app

Drop a PDF in. Get it back cropped.

Each file is cropped straight away and saved next to the original as NAME_cropped.pdf. Folders work too.

The Briss preview window: a scanned two-page sheet with a blue crop box around each page, and the two resulting pages on the right.
Look before it saves. Preview mode shows every sheet with its crop boxes and, on the right, the pages as they will come out. Drag an edge to resize a box, drag inside to move it, draw a new one on empty space.
The Briss window listing four finished PDFs with page counts.
Drop and go. A 118-page scan, a 290-page book: done, with a button to open each result.
The Briss options panel: mode, margin, same page size, OCR, straighten, auto-rotate, split and keep headers.
Nine options, good defaults. Margin, OCR, straighten, auto-rotate, splitting, headers and page numbers. Remembered between runs.

The command line

One command for a whole book.

The same engine, scriptable. Detect, look, correct, apply; JSON output and exit codes for pipelines. The Briss 2.0 options -s and -d still work.

briss crop "A Reader's Companion.pdf" --straighten --normalize --keep-headers --margin 6pt
A Reader's Companion.pdf: 3 pages, 3 clusters (cv@1)
  cluster 0, odd pages 1, 1056x749 pt:
    note: auto: 3 of 3 sampled pages are scans; detected page by page; 1 of 1 pages split into two
  cluster 1, even pages 2, 1056x749 pt:
    note: auto: 3 of 3 sampled pages are scans; detected page by page; 1 of 1 pages split into two
  cluster 2, odd pages 3, 749x1056 pt:
    note: auto: 3 of 3 sampled pages are scans; detected page by page; 1 of 1 pages split into two; 1 turned upright
turned 2 pages upright
straightened 6 pages
wrote A Reader's Companion_cropped.pdf: 6 pages (3 added by splits) in 1065 ms
Output page 1 Output page 2 Output page 3 Output page 4 Output page 5 Output page 6

Download

Get Briss 2.0 beta.

Free software under the GPL v3. It works on real books, but it is a beta and has only been tried on a few machines: please report what goes wrong.

Command line only

The same releases page has briss as a single program file for each system. Or build it with Go:

git clone https://github.com/jarofclay/briss-go.git
cd briss-go
go build -o briss ./cmd/briss

For selectable text

OCR uses Tesseract, installed separately. Briss finds it on its own.

brew install tesseract          # macOS
sudo apt install tesseract-ocr  # Debian, Ubuntu

On Windows, use the UB Mannheim installer.