summaryrefslogtreecommitdiff
path: root/support/xpdfopen/README
blob: aa120e75c9c2d13f0abd4c2788d16586af82d06d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
---------------------------------------------------------------------------
xpdfopen 0.85 - Send open/close commands to Acrobat Reader, xpdf and evince
---------------------------------------------------------------------------

This is a Linux (X11) implementation of Fabrice Popineau's pdfclose/
pdfopen commands to control Acrobat Reader, xpdf and evince.

The libX code was borrowed from Reinhard Fobbe's Sendx library for 
Tcl/Tk, and the programs use the same license, copied below. 

Version 0.3 adds support for Adobe Reader 7.0 for Linux.
            (different window titles and key shortcuts)

Version 0.4 uses autoconf

Version 0.5 fixes an incorrect autoconf variable, supports building
            under X11R5, handles pathnames on the command-line, and
            fixes a bug where pdfopen did not exit correctly after
            (automatically) starting acroread.

Version 0.51 uses the strrchr() function instead of rindex() 
             to allow compilation on non-BSD derived unix platforms.

Version 0.61 attempts to do something useful with Adobe Reader 8,
             even though it is impossible to restore the viewport.

Version 0.80 adds an implementation for AR 9 and xpdf.

Version 0.81 adds an implementation for evince.

Version 0.82 adds a man page and -v/--version options for pdfopen.

Version 0.83 adds the -r/-reset_focus option for pdfopen.

Version 0.84 adds 'load at given page' support (-p option) for Adobe
             Reader 9, evince (at least 3.12, maybe earlier) and xpdf.

Version 0.85 adds 'load at named destination' support (-g/--goto option)
             for xpdf, evince and (supposedly) AR9.  The AR9 man page
             claims it should work, but it doesn't for me.  I left
             the allegedly-correct code there anyway, in case it works
             for other people in other places.
             Also add aliases for option names to make ms-windows
             users feel at home.

Version 0.86 fixes 'load at named destination' for AR9.


The AR command lines do not behave precisely the same as under Windows, 
because the Linux Reader behaves somewhat differently: it is not 
scriptable, but it is possible to 'fake' key-presses.


pdfopen has the following call sequence:
	pdfopen [-r|-reset_focus] \
		[-viewer/--viewer <ar9|ar9-tab|ar8|ar7|ar5|xpdf|evince>] \
                [-p/--page <page number>] \
                [-g/--goto <named destination>] \
                [--file] <pdf file name>

The "ar9" version uses AR9's "-openInNewInstance" option, the "ar9-tab"
version does not (so if there is already an AR9 window open, a new tab
will be opened in that window).


pdfclose has the following call sequence:
	pdfclose [--file] <pdf file name>
This program closes an existing AR5, AR7, AR8, AR9, xpdf or evince window
displaying the given PDF file.


Version 0.85 compiles on Linux (Slackware64 14.1, anyway) with
the following command:
	gcc -Wall pdfopen.c sendx.c utils.c -o pdfopen -lX11 -s
	gcc -Wall pdfclose.c sendx.c utils.c -o pdfclose -lX11 -s
should you not want to go through the process of creating and running
a configure program.


Taco Hoekwater <taco@metatex.org> (Version(s) up to 0.61)
Dordrecht, The Netherlands, December 2008.

Jim Diamond <jim.diamond@acadiau.ca> (Version 0.80 through 0.84)
Acadia University, Wolfville, Nova Scotia, Canada; May 2014.




License terms:
--------------
The following terms apply to all files associated with the software
unless explicitly disclaimed in individual files.

The authors hereby grant permission to use, copy, modify, distribute,
and license this software and its documentation for any purpose,
provided that existing copyright notices are retained in all copies
and that this notice is included verbatim in any distributions. No
written agreement, license, or royalty fee is required for any of the
authorized uses.  Modifications to this software may be copyrighted by
their authors and need not follow the licensing terms described here,
provided that the new terms are clearly indicated on the first page of
each file where they apply.

IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY
FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY
DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
NON-INFRINGEMENT.  THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND
THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.