Last Modified: Dec 1 1994, 10:47 PDF (Portable Document Format) is a format defined by Adobe and describes a page description language that supports hyperlinks. The adobe product `distill' can create PDF documents from postscript ones by translating the page description. In addition, it allows the postscript file to specify the hyperlinks through a new postscript operator, pdfmark. This alpha release of the changed version of ghostview is a first attempt to make ghostview pdfmark aware. It recognizes the pdfmark operator, and tries to cretae `hotlinks' on the display. A key click on the link follows the link. The companion products, the modifications to dvips by Mark Doyle and the set of macros comprising hypertex (as described at xxx) facilitates the generation of these ps files from TeX documents. The modified dvips actually uses a postscript procedure pdfm (which translates to an appropriate call to pdfmark if pdfm is undefined) to describe the linkage structure. As the translation of pdfm to pdfmark is lossy, ghostview should ideally understand pdfm directly: see the TODO list. All keys work as in the standard release of ghostscript: except 1) any key-click inside a link follows link instead of magnifying it. 2) b or B goes back in link history if history is non-null: goes to previous page (default behaviour) otherwise. (delete, backspace etc. are still bound to previous_page) does nothing on first page if link history empty. 3) page menu has an extra entry for back which works as in (2). Here is what it never plans to do: 1) Support SRCPAGE option of pdfmark. 2) Support pdfmarks in non-DSC structured documents. Here is the TODO list. (can also be considered BUG list) 1) Handle pdfmarks of kinds other than /LNK (/ANNOT etc. should be very easy) (currently ignores them) 2) Handle pdfmarks called in non-default coordinate system. 3) Handle /LNK to other documents. 4) Look at target view specification as well (currently it only looks at target page) 5) Check if communication with ghostscript possible through means other than the stdout. 6) Do a proper job of parsing pdfmark parameters.(easy but tedious) 7) Use the rx and ry parameters of the /Border specification of pdfmark. (easy) 8) Support forward/backward navigation or menu-oriented navigation in link history. Here is the TODO list for processing pdfm (in addition to pdfmark). 1) Allow initial jump to arbitrary target. 2) Allow user specified jump to arbitrary target. 3) Take into account target coordinate. 4) Allow network URL's. 5) Make middle click open a smaller window with the target properly centered.