PDFViewer an application to view Adobe Acrobat PDF files on NEXTSTEP/Openstep systems. PROVIDED AS IS - NO WARRANTY - BUG REPORTS WELCOME PDFViewer is constantly under development. It does cope with the PDF-1.0 and PDF-1.1 file format versions. Should eat new PDF-1.2 and PDF-1.3 too, but might issue a warning on the console. Current version of PDFViewer is 1.36 (11. Apr. 2002). Task: Display PDF files like the normal PostScript previewer does. Navigation is similar too. Requirements: - NEXTSTEP 3.1 or higher, 3.3 or higher recommended. Usage: should be obvious (see Info/Usage...) what it does: - displays the PDF file - lets you navigate through the pages - zooming between 10 % and 800 % - printing of the entire file or selected pages (currently slightly corrupted for rotated pages) - obeys rotation info - obeys crop info - follows annotation links inside the document (PDF-1.0 format) and partly to external PDF documents (generic launch actions) - follows "WebLinks", URIs embedded as links in PDF files - displays text annotations - handles bookmarks (outlines) - handles thumbnails - any unknown fonts are reasonably substituted not yet implemented: (you'll see "NOT YET IMPLEMENTED" messages in the console for some of these) - articles/beads (first steps are there) - TrueType fonts (will be substituted in any case). - NEXTSTEP-Help - fancy InfoPanel gadget - ... current (mis-)features - the output view is cached up to a zoom factor of 300% to improve scrolling response. Larger zoom factors are not cached to avoid extensive VM usage. If the output fits into the ScrollView content, caching is turned off either to improve output speed. This is similar to Preview.app and makes you watch the fun appearing on the screen :-) other mess: - the PostScript code in the Prolog stems from the experimental phase and is not yet cleaned up, good, optimized, or even correct. (some text render modes are ignored.) - some special chars aren't supported by NextStepEncoding, so they are faked in PDFDocEncoding strings. Affects text annotations and bookmarks. - some boring messages are always written to the console Ideas to think about: - filter mode for PDF->PS filter service (thanks to Joe Pasqua) Known problems: Why 3.X? The program makes use of PostScript Level 2 as does the PDF format itself. Therefore, PS Level 2 is a must. It is, as well, for printing devices. Due to a bug in the decompression of CCITTFaxDecode images in the Display PostScript used in NEXTSTEP versions prior to 3.3, this version (or any following one) is recommended. As displaying such images in 3.[012] might hang the app, a crossed box is drawn instead and a warning panel appears. Of course there are a lot of things remaining to be done, but if you have any suggestions beyond the obvious, don't hesitate. Bug reports welcome. Detlev droege@uni-koblenz.de The PDF format is Copyright Adobe Systems Incorporated. -- Detlev Droege, UniversitÙt Koblenz, Institut för Computervisualistik, P.O.Box 20 16 02, Voice: +49 261 287-2769 D-56016 Koblenz Fax: +49 261 287-100-2769 Germany NeXT/MIME/Email: droege@uni-koblenz.de Copyright (C) 1993-2002 Detlev Droege Changes in 1.36 (Apr 2002): - less superfluous refreshes, "allways buffered" preference, - rudimentary FullScreen mode (by menu or CMD-M only, not by PageMode) Changes in 1.33 (Mar 2002): - be less pedantic on some non conformant PDF files produced by GNU GhostScript 6.51 or PStill V1.10 - fix some bugs (partly introduced in 1.32) Changes in 1.32 (Mar 2002): - link with zlib-1.1.4 (previous versions had a security problem) - new mode "allways buffered" (doesn't work as desired yet :-( ) - local (transitive) resources (see v1.31) work so far with my test files ! - some fixes Changes in 1.31 (Sep 2001): - don't bail out on missing Resources. pdf(la)tex generates XObject Form resources, which have "local" Resources like other XObjects which in turn might contain e.g. Fonts ... PDFViewer can't handle such transitive Resource definitions. They remain undefined and will produce messages like could not display /Im2 (transitive resource?) on the console. Changes in 1.30 (May 2001): - deal with ICCBased color spaces (using their /Alternate entry) Changes in 1.28: - implemented Pattern color spaces (PDF-1.2), at least mostly - minor bug fix and be a little fuzzy about pdfTeX12.o-alike output - be fuzzy about Adobe Distiller 3.0 CLUT stream output error - seems to work with the first PDF-1.3 files I got (but still warns) - bug fix in thumbnail generation. Changes in 1.22: - handle/emulate Separation color spaces (PDF-1.2) - fix bug in display code of thumbnails (introduced with calib. CS) - make text annotations movable, other bug fixes - fix bug in Thumbnail color handling Changes in 1.14 (since 1.03): - handle calibrated color spaces and default color spaces - collect multiply used resources in the main prolog when printing - support for PDF-1.2 (FlateDecode, new /name syntax and other stuff) - some bug fixes (e.g. no more crash when printing N-up ...) PDF Decryption facility: The PDF format allows for en/decryption of its contents. PDFViewer supports this via a "bundle" which is _not_ part of this regular distribution due to the U.S. export laws which consider such software to be "munition". The bundle is available for downloawd from this place in Germany ftp://ftphost.uni-koblenz.de/outgoing/People/droege/ as Standard.pdfcrypt.NIHS.b.tar.gz . Do NOT put that bundle on any U.S. FTP server or you most probably violate U.S. laws. You may import it into the U.S., but not export it.