Transform the display of a document within a moveable, resizable lens window. When lenses overlap, their effects compose.


Screen dump.


Xerox PARC generalized the magnifying lens to have arbitrary effect within a movable, resizable window. When overlapped, lenses compose effects. Many lenses have controls that can be set from their popup menu, available by clicking the alternative mouse button on the lens title bar.
Magnify and Bit Magnify
Already familiar from graphics editors. Magnify can zoom by different amounts, selectable by clicking the alternative mouse button on the lens title bar and choosing from the popup menu.
Show OCR and Show Image
A lens applicable only to scanned paper shows the OCR translations of the text under the lens. Scanned paper document can be shown primarily as OCR, in which case Show Image shows the scan for use where the OCR has performed poorly.
Cypher - Rot13, Pig Latin, shift in alphabet
The Cypher lens decodes various cyphers as chosen from its popup menu. Rot-13, which is used in USENET newsgroups, can decode the following quotation by Douglas Adams on the Y2K problem: "I've written a commercial for Apple Computer. It goes like this: 'Macintosh — we might not get everything right, but ng yrnfg jr xarj gur praghel jnf tbvat gb raq.'"

Now move the lens over the following text and switch translation by clicking the alternative mouse button over the lens title bar and choosing Pig Latin. (Notice that only Pig Latin is translated; other text remains untouched.)

1:1 In-ay e-thay eginning-bay Od-gay eated-cray e-thay eaven-hay and-ay e-thay earth-ay.
1:2 And-ay e-thay earth-ay as-way ithout-way orm-fay, and-ay oid-vay; and-ay arkness-day as-way upon-ay e-thay ace-fay of-ay e-thay eep-day. And-ay e-thay Irit-spay of-ay Od-gay oved-may upon-ay e-thay ace-fay of-ay e-thay aters-way.
1:3 And-ay Od-gay aid-say, Et-lay ere-thay e-bay ight-lay: and-ay ere-thay as-way ight-lay.
Image Processing
Sharpen, Blur, Edge Detect, Brighten, Darken
Plain View
The Plain View lens supresses garish colors and fonts that can make a text impossible to read, leaving plain black text on a white background.
The Ruler can help measure layout sizing by displaying short tick marks every 10 pixels, longer ones every 100. The lens switches between horizontal and vertical layout according to which size is longer as the lens is resized. Useful for developers writing layout algorithms or style sheet implementations, or designers using style sheets.
Bounds, CharNum
For developers working on media adaptors, Bounds shows bounding boxes and relative coordinates, and CharNum shows the Unicode character encoding of characters under the lens (a popup menu in the lens title bar selects between decimal and hex numbers).

Technical Notes

Lenses are not built-in to core architecture; they are implemented as ordinary extensions.