beta-0.89.2
[luatex.git] / source / libs / poppler / poppler-src / README-XPDF
blobe97791ce5b20467d74a83715cb2f0879f9b53c40
1 Xpdf
2 ====
4 version 3.03
5 2011-aug-15
7 The Xpdf software and documentation are
8 copyright 1996-2011 Glyph & Cog, LLC.
10 Email: derekn@foolabs.com
11 WWW: http://www.foolabs.com/xpdf/
13 The PDF data structures, operators, and specification are
14 copyright 1985-2006 Adobe Systems Inc.
17 What is Xpdf?
18 -------------
20 Xpdf is an open source viewer for Portable Document Format (PDF)
21 files.  (These are also sometimes also called 'Acrobat' files, from
22 the name of Adobe's PDF software.)  The Xpdf project also includes a
23 PDF text extractor, PDF-to-PostScript converter, and various other
24 utilities.
26 Xpdf runs under the X Window System on UNIX, VMS, and OS/2.  The non-X
27 components (pdftops, pdftotext, etc.) also run on Windows and Mac OSX
28 systems and should run on pretty much any system with a decent C++
29 compiler.  Xpdf will run on 32-bit and 64-bit machines.
32 License & Distribution
33 ----------------------
35 Xpdf is licensed under the GNU General Pulbic License (GPL), version 2
36 or 3.  This means that you can distribute derivatives of Xpdf under
37 any of the following:
38   - GPL v2 only
39   - GPL v3 only
40   - GPL v2 or v3
42 The Xpdf source package includes the text of both GPL versions:
43 COPYING for GPL v2, COPYING3 for GPL v3.
45 Please note that Xpdf is NOT licensed under "any later version" of the
46 GPL, as I have no idea what those versions will look like.
48 If you are redistributing unmodified copies of Xpdf (or any of the
49 Xpdf tools) in binary form, you need to include all of the
50 documentation: README, man pages (or help files), COPYING, and
51 COPYING3.
53 If you want to incorporate the Xpdf source code into another program
54 (or create a modified version of Xpdf), and you are distributing that
55 program, you have two options: release your program under the GPL (v2
56 and/or v3), or purchase a commercial Xpdf source license.
58 If you're interested in commercial licensing, please see the Glyph &
59 Cog web site:
61     http://www.glyphandcog.com/
64 Compatibility
65 -------------
67 Xpdf is developed and tested on Linux.
69 In addition, it has been compiled by others on Solaris, AIX, HP-UX,
70 Digital Unix, Irix, and numerous other Unix implementations, as well
71 as VMS and OS/2.  It should work on pretty much any system which runs
72 X11 and has Unix-like libraries.  You'll need ANSI C++ and C compilers
73 to compile it.
75 The non-X components of Xpdf (pdftops, pdftotext, pdfinfo, pdffonts,
76 pdfdetach, pdftoppm, and pdfimages) can also be compiled on Windows
77 and Mac OSX systems.  See the Xpdf web page for details.
79 If you compile Xpdf for a system not listed on the web page, please
80 let me know.  If you're willing to make your binary available by ftp
81 or on the web, I'll be happy to add a link from the Xpdf web page.  I
82 have decided not to host any binaries I didn't compile myself (for
83 disk space and support reasons).
85 If you can't get Xpdf to compile on your system, send me email and
86 I'll try to help.
88 Xpdf has been ported to the Acorn, Amiga, BeOS, and EPOC.  See the
89 Xpdf web page for links.
92 Getting Xpdf
93 ------------
95 The latest version is available from:
97   http://www.foolabs.com/xpdf/
99 or:
101   ftp://ftp.foolabs.com/pub/xpdf/
103 Source code and several precompiled executables are available.
105 Announcements of new versions are posted to comp.text.pdf and emailed
106 to a list of people.  If you'd like to receive email notification of
107 new versions, just let me know.
110 Running Xpdf
111 ------------
113 To run xpdf, simply type:
115   xpdf file.pdf
117 To generate a PostScript file, hit the "print" button in xpdf, or run
118 pdftops:
120   pdftops file.pdf
122 To generate a plain text file, run pdftotext:
124   pdftotext file.pdf
126 There are five additional utilities (which are fully described in
127 their man pages):
129   pdfinfo -- dumps a PDF file's Info dictionary (plus some other
130              useful information)
131   pdffonts -- lists the fonts used in a PDF file along with various
132               information for each font
133   pdfdetach -- lists or extracts embedded files (attachments) from a
134                PDF file
135   pdftoppm -- converts a PDF file to a series of PPM/PGM/PBM-format
136               bitmaps
137   pdfimages -- extracts the images from a PDF file
139 Command line options and many other details are described in the man
140 pages (xpdf(1), etc.) and the VMS help files (xpdf.hlp, etc.).
142 All of these utilities read an optional configuration file: see the
143 xpdfrc(5) man page.
146 Upgrading from Xpdf 3.02 (and earlier)
147 --------------------------------------
149 The font configuration system has been changed.  Previous versions
150 used mostly separate commands to configure fonts for display and for
151 PostScript output.  As of 3.03, configuration options that make sense
152 for both display and PS output have been unified.
154 The following xpdfrc commands have been removed:
155 * displayFontT1, displayFontTT: replaced with fontFile
156 * displayNamedCIDFontT1, displayNamedCIDFontTT: replaced with fontFile
157 * displayCIDFontT1, displayCIDFontTT: replaced with fontFileCC
158 * psFont: replaced with psResidentFont
159 * psNamedFont16: replaced with psResidentFont16
160 * psFont16: replaced with psResidentFontCC
162 See the xpdfrc(5) man page for more information on the new commands.
164 Pdftops will now embed external 16-bit fonts (configured with the
165 fontFileCC command) when the PDF file refers to a non-embedded font.
166 It does not do any subsetting (yet), so the resulting PS files will be
167 large.
170 Compiling Xpdf
171 --------------
173 See the separate file, INSTALL.
176 Bugs
177 ----
179 If you find a bug in Xpdf, i.e., if it prints an error message,
180 crashes, or incorrectly displays a document, and you don't see that
181 bug listed here, please send me email, with a pointer (URL, ftp site,
182 etc.) to the PDF file.
185 Acknowledgments
186 ---------------
188 Thanks to:
190 * Patrick Voigt for help with the remote server code.
191 * Patrick Moreau, Martin P.J. Zinser, and David Mathog for the VMS
192   port.
193 * David Boldt and Rick Rodgers for sample man pages.
194 * Brendan Miller for the icon idea.
195 * Olly Betts for help testing pdftotext.
196 * Peter Ganten for the OS/2 port.
197 * Michael Richmond for the Win32 port of pdftops and pdftotext and the
198   xpdf/cygwin/XFree86 build instructions.
199 * Frank M. Siegert for improvements in the PostScript code.
200 * Leo Smiers for the decryption patches.
201 * Rainer Menzner for creating t1lib, and for helping me adapt it to
202   xpdf.
203 * Pine Tree Systems A/S for funding the OPI and EPS support in
204   pdftops.
205 * Easy Software Products for funding several improvements to the
206   PostScript output code.
207 * Tom Kacvinsky for help with FreeType and for being my interface to
208   the FreeType team.
209 * Theppitak Karoonboonyanan for help with Thai support.
210 * Leonard Rosenthol for help and contributions on a bunch of things.
211 * Alexandros Diamantidis and Maria Adaloglou for help with Greek
212   support.
213 * Lawrence Lai for help with the CJK Unicode maps.
215 Various people have contributed modifications made for use by the
216 pdftex project:
218 * Han The Thanh
219 * Martin Schröder of ArtCom GmbH
222 References
223 ----------
225 Adobe Systems Inc., _PDF Reference, sixth edition: Adobe Portable
226 Document Format version 1.7_.
227 http://www.adobe.com/devnet/pdf/pdf_reference.html
228 [The manual for PDF version 1.7.]
230 Adobe Systems Inc., "Errata for the PDF Reference, sixth edition,
231 version 1.7", October 16, 2006.
232 http://www.adobe.com/devnet/pdf/pdf_reference.html
233 [The errata for the PDF 1.7 spec.]
235 Adobe Systems Inc., _PostScript Language Reference_, 3rd ed.
236 Addison-Wesley, 1999, ISBN 0-201-37922-8.
237 [The official PostScript manual.]
239 Adobe Systems, Inc., _The Type 42 Font Format Specification_,
240 Adobe Developer Support Technical Specification #5012.  1998.
241 http://partners.adobe.com/asn/developer/pdfs/tn/5012.Type42_Spec.pdf
242 [Type 42 is the format used to embed TrueType fonts in PostScript
243 files.]
245 Adobe Systems, Inc., _Adobe CMap and CIDFont Files Specification_,
246 Adobe Developer Support Technical Specification #5014.  1995.
247 http://www.adobe.com/supportservice/devrelations/PDFS/TN/5014.CIDFont_Spec.pdf
248 [CMap file format needed for Japanese and Chinese font support.]
250 Adobe Systems, Inc., _Adobe-Japan1-4 Character Collection for
251 CID-Keyed Fonts_, Adobe Developer Support Technical Note #5078.
252 2000.
253 http://partners.adobe.com/asn/developer/PDFS/TN/5078.CID_Glyph.pdf
254 [The Adobe Japanese character set.]
256 Adobe Systems, Inc., _Adobe-GB1-4 Character Collection for
257 CID-Keyed Fonts_, Adobe Developer Support Technical Note #5079.
258 2000.
259 http://partners.adobe.com/asn/developer/pdfs/tn/5079.Adobe-GB1-4.pdf
260 [The Adobe Chinese GB (simplified) character set.]
262 Adobe Systems, Inc., _Adobe-CNS1-3 Character Collection for
263 CID-Keyed Fonts_, Adobe Developer Support Technical Note #5080.
264 2000.
265 http://partners.adobe.com/asn/developer/PDFS/TN/5080.CNS_CharColl.pdf
266 [The Adobe Chinese CNS (traditional) character set.]
268 Adobe Systems Inc., _Supporting the DCT Filters in PostScript Level
269 2_, Adobe Developer Support Technical Note #5116.  1992.
270 http://www.adobe.com/supportservice/devrelations/PDFS/TN/5116.PS2_DCT.PDF
271 [Description of the DCTDecode filter parameters.]
273 Adobe Systems Inc., _Open Prepress Interface (OPI) Specification -
274 Version 2.0_, Adobe Developer Support Technical Note #5660.  2000.
275 http://partners.adobe.com/asn/developer/PDFS/TN/5660.OPI_2.0.pdf
277 Adobe Systems Inc., CMap files.
278 ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/
279 [The actual CMap files for the 16-bit CJK encodings.]
281 Adobe Systems Inc., Unicode glyph lists.
282 http://partners.adobe.com/asn/developer/type/unicodegn.html
283 http://partners.adobe.com/asn/developer/type/glyphlist.txt
284 http://partners.adobe.com/asn/developer/type/corporateuse.txt
285 http://partners.adobe.com/asn/developer/type/zapfdingbats.txt
286 [Mappings between character names to Unicode.]
288 Adobe Systems Inc., OpenType Specification v. 1.4.
289 http://partners.adobe.com/public/developer/opentype/index_spec.html
290 [The OpenType font format spec.]
292 Aldus Corp., _OPI: Open Prepress Interface Specification 1.3_.  1993.
293 http://partners.adobe.com/asn/developer/PDFS/TN/OPI_13.pdf
295 Anonymous, RC4 source code.
296 ftp://ftp.ox.ac.uk/pub/crypto/misc/rc4.tar.gz
297 ftp://idea.sec.dsi.unimi.it/pub/crypt/code/rc4.tar.gz
298 [This is the algorithm used to encrypt PDF files.]
300 T. Boutell, et al., "PNG (Portable Network Graphics) Specification,
301 Version 1.0".  RFC 2083.
302 [PDF uses the PNG filter algorithms.]
304 CCITT, "Information Technology - Digital Compression and Coding of
305 Continuous-tone Still Images - Requirements and Guidelines", CCITT
306 Recommendation T.81.
307 http://www.w3.org/Graphics/JPEG/
308 [The official JPEG spec.]
310 A. Chernov, "Registration of a Cyrillic Character Set".  RFC 1489.
311 [Documentation for the KOI8-R Cyrillic encoding.]
313 Roman Czyborra, "The ISO 8859 Alphabet Soup".
314 http://czyborra.com/charsets/iso8859.html
315 [Documentation on the various ISO 859 encodings.]
317 L. Peter Deutsch, "ZLIB Compressed Data Format Specification version
318 3.3".  RFC 1950.
319 [Information on the general format used in FlateDecode streams.]
321 L. Peter Deutsch, "DEFLATE Compressed Data Format Specification
322 version 1.3".  RFC 1951.
323 [The definition of the compression algorithm used in FlateDecode
324 streams.]
326 Morris Dworkin, "Recommendation for Block Cipher Modes of Operation",
327 National Institute of Standards, NIST Special Publication 800-38A,
328 2001.
329 [The cipher block chaining (CBC) mode used with AES in PDF files.]
331 Federal Information Processing Standards Publication 197 (FIPS PUBS
332 197), "Advanced Encryption Standard (AES)", November 26, 2001.
333 [AES encryption, used in PDF 1.6.]
335 Jim Flowers, "X Logical Font Description Conventions", Version 1.5, X
336 Consortium Standard, X Version 11, Release 6.1.
337 ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XLFD/xlfd.PS.Z
338 [The official specification of X font descriptors, including font
339 transformation matrices.]
341 Foley, van Dam, Feiner, and Hughes, _Computer Graphics: Principles and
342 Practice_, 2nd ed.  Addison-Wesley, 1990, ISBN 0-201-12110-7.
343 [Colorspace conversion functions, Bezier spline math.]
345 Robert L. Hummel, _Programmer's Technical Reference: Data and Fax
346 Communications_.  Ziff-Davis Press, 1993, ISBN 1-56276-077-7.
347 [CCITT Group 3 and 4 fax decoding.]
349 ISO/IEC, _Information technology -- Lossy/lossless coding of bi-level
350 images_.  ISO/IEC 14492, First edition (2001-12-15).
351 http://webstore.ansi.org/
352 [The official JBIG2 standard.  The final draft of this spec is
353 available from http://www.jpeg.org/jbighomepage.html.]
355 ISO/IEC, _Information technology -- JPEG 2000 image coding system --
356 Part 1: Core coding system_.  ISO/IEC 15444-1, First edition
357 (2000-12-15).
358 http://webstore.ansi.org/
359 [The official JPEG 2000 standard.  The final committee draft of this
360 spec is available from http://www.jpeg.org/JPEG2000.html, but there
361 were changes made to the bitstream format between that draft and the
362 published spec.]
364 ITU, "Standardization of Group 3 facsimile terminals for document
365 transmission", ITU-T Recommendation T.4, 1999.
366 ITU, "Facsimile coding schemes and coding control functions for Group 4
367 facsimile apparatus", ITU-T Recommendation T.6, 1993.
368 http://www.itu.int/
369 [The official Group 3 and 4 fax standards - used by the CCITTFaxDecode
370 stream, as well as the JBIG2Decode stream.]
372 B. Kaliski, "PKCS #5: Password-Based Cryptography Specification,
373 Version 2.0".  RFC 2898.
374 [Defines the padding scheme used with AES encryption in PDF files.]
376 Christoph Loeffler, Adriaan Ligtenberg, George S. Moschytz, "Practical
377 Fast 1-D DCT Algorithms with 11 Multiplications".  IEEE Intl. Conf. on
378 Acoustics, Speech & Signal Processing, 1989, 988-991.
379 [The fast IDCT algorithm used in the DCTDecode filter.]
381 Microsoft, _TrueType 1.0 Font Files_, rev. 1.66.  1995.
382 http://www.microsoft.com/typography/tt/tt.htm
383 [The TrueType font spec (in MS Word format, naturally).]
385 V. Ostromoukhov, R.D. Hersch, "Stochastic Clustered-Dot Dithering",
386 Conf. Color Imaging: Device-Independent Color, Color Hardcopy, and
387 Graphic Arts IV, 1999, SPIE Vol. 3648, 496-505.
388 http://diwww.epfl.ch/w3lsp/publications/colour/scd.html
389 [The stochastic dithering algorithm used in Xpdf.]
391 P. Peterlin, "ISO 8859-2 (Latin 2) Resources".
392 http://sizif.mf.uni-lj.si/linux/cee/iso8859-2.html
393 [This is a web page with all sorts of useful Latin-2 character set and
394 font information.]
396 Charles Poynton, "Color FAQ".
397 http://www.inforamp.net/~poynton/ColorFAQ.html
398 [The mapping from the CIE 1931 (XYZ) color space to RGB.]
400 R. Rivest, "The MD5 Message-Digest Algorithm".  RFC 1321.
401 [MD5 is used in PDF document encryption.]
403 Thai Industrial Standard, "Standard for Thai Character Codes for
404 Computers", TIS-620-2533 (1990).
405 http://www.nectec.or.th/it-standards/std620/std620.htm
406 [The TIS-620 Thai encoding.]
408 Unicode Consortium, "Unicode Home Page".
409 http://www.unicode.org/
410 [Online copy of the Unicode spec.]
412 W3C Recommendation, "PNG (Portable Network Graphics) Specification
413 Version 1.0".
414 http://www.w3.org/Graphics/PNG/
415 [Defines the PNG image predictor.]
417 Gregory K. Wallace, "The JPEG Still Picture Compression Standard".
418 ftp://ftp.uu.net/graphics/jpeg/wallace.ps.gz
419 [Good description of the JPEG standard.  Also published in CACM, April
420 1991, and submitted to IEEE Transactions on Consumer Electronics.]
422 F. Yergeau, "UTF-8, a transformation format of ISO 10646".  RFC 2279.
423 [A commonly used Unicode encoding.]