root / pkpgcounter / trunk / README @ 485

Revision 485, 5.8 kB (checked in by jerome, 16 years ago)

Almost ok for release.

  • Property svn:keyword set to Auth Date Id Rev
  • Property svn:keywords set to Auth Date Id Rev
RevLine 
[185]1# $Id$
2
3pkpgcounter : a generic Page Description Language parser
4
[443]5(c) 2003, 2004, 2005, 2006, 2007 Jerome Alet <alet@librelogiciel.com>
[463]6This program is free software: you can redistribute it and/or modify
[185]7it under the terms of the GNU General Public License as published by
[463]8the Free Software Foundation, either version 3 of the License, or
[185]9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
[463]17along with this program.  If not, see <http://www.gnu.org/licenses/>.
[185]18
19=============================================================================
20
[375]21pkpgcounter is a generic Page Description Language parser which can either
22compute the number of pages in a document, or compute the percent of
23ink coverage needed to print each page, in different colorspaces.
[185]24
[375]25pkpgcounter currently recognizes the following document formats :
[185]26
27        - PostScript (both DSC compliant and binary)
28       
29        - PDF
30       
31        - PCL3/4/5
32       
33        - PCLXL (aka PCL6)
34       
[221]35        - DVI
36       
[418]37        - Plain text
38       
[221]39        - TIFF
40       
[375]41        - ESC/P2
42       
[340]43        - OpenDocument (ISO/IEC DIS 26300)
[229]44       
[329]45        - Zenographics ZjStream
[229]46       
[386]47        - Samsung QPDL (aka SPL2)
48       
[418]49        - Samsung SPL1
50       
[473]51        - ESC/PageS03
52       
[480]53        - Brother HBP
54       
[485]55        - Hewlett-Packard Lightweight Imaging Device Interface Language
56       
57The eight latter ones, as well as some TIFF documents, are currently
[375]58only supported in page counting mode.
[185]59
[368]60By default, when launched pkpgcounter prints on its standard output
61a single integer representing the total number of pages in all the
62files which filenames you've passed on the command line.
63
[185]64With no argument, or with a single dash in non-option arguments,
65pkpgcounter reads datas to parse from its standard input in addition
66to other non-options arguments which are treated as filenames
67representing the files to parse.
68
[375]69See pkpgcounter --help for details and examples.
[185]70
71=============================================================================
72
73Installation :
74--------------
75
76  0 - Download pkpgcounter from :
77 
[336]78        http://www.pykota.com/software/pkpgcounter/download
[185]79       
80      and extract it : 
81     
82        $ tar -zxf pkpgcounter-x.yy.tar.gz
83       
84        where x.yy is pkpgcounter' version number.
85       
[204]86  1 - Run the installation script :
[185]87     
[204]88        $ python setup.py install
[185]89       
[204]90      This will usually install the pkpgcounter into /usr/bin and 
[235]91      the library into /usr/lib/python2.?/site-packages/pkpgpdls/
[204]92       
[185]93  2 - Use pkpgcounter :
94 
95      $ pkpgcounter file1.ps file2.pclxl ... <fileN.escp2
96     
97      pkpgcounter will display the total size in pages of all the files
98      passed on the command line.
99     
[374]100      $ pkpgcounter --colorspace bw --resolution 150 file1.ps
101 
102      Will output the percent of black ink needed on each page of
103      the file1.ps file rendered at 150 dpi.
104     
[185]105  3 - That's all !   
106 
[374]107 
108IMPORTANT : To compute ink coverage, pkpgcounter relies on third party
109software which must be installed. These third party software are :
110
[375]111        - GhostScript (this one is needed for all file formats).
[374]112       
[375]113        - The Python Imaging Library, aka PIL (this one is needed for all
114          file formats).
[374]115       
[375]116        - GhostPCL (this one is needed for the PCL3/4/5 and PCLXL formats)
117         
[374]118        - The LaTeX typesetting software, in particular the dvips command
[375]119          (this one is needed for the DVI file format).
[374]120       
[185]121=============================================================================
122
123Troubleshooting :
124-----------------
125
126  If pkpgcounter gives incorrect results to you, please make an incorrectly
127  parsed data file available to us on some website, and tell us which
128  driver was used.
129 
[247]130  If pkpgcounter complain about your system lacking the Python Psyco module,
131  please consider installing it to speedup file parsing. However, don't forget
132  that Psyco currently only runs on the 32 bits x86 platform, so no need to
133  install it if you've got another system type.
134 
[185]135=============================================================================
136
[406]137Before pkpgcounter v1.86, the PCL3/4/5 parser was a Python backport of an early
[286]138release of the PCLCount software by Eduardo Gielamo Oliveira and Rodolfo Broco
[406]139Manin, available from :
[286]140
141    http://www.fea.unicamp.br/pclcount/
142   
143Their software is distributed under either the terms of a BSD-like license,   
144or the terms of the GNU General Public License of the Free Software Foundation.
145
[406]146Beginning with pkpgcounter v1.86, the PCL3/4/5 parser was rewritten from
147scratch, and is now much more readable, maintainable, and of course accurate.
148
[463]149The old parser was still available until pkpgcounter v2.18 was published, but
150was definitely removed after that, just before pkpgcounter v3.00 was published.
[406]151   
[286]152pkpgcounter's PCLXL (aka PCL6) parser doesn't originate from PCLCount, but
[406]153was written from scratch, just like all the other parsers included in
154pkpgcounter.
[286]155
156=============================================================================
157
[368]158pkpgcounter's ink coverage algorithm for the CMYK colorspace is a
159direct Python port from the PrintBill project by Daniel Franklin.
160PrintBill is distributed under the terms of the GNU General Public
[463]161License of the Free Software Foundation, version 2 or higher. The
[368]162algorithms used for the other colorspaces are a complete rewrite of
163PrintBill's algorithms using both Python and the Python Imaging
164Library's facilities.
165
166=============================================================================
167
[185]168Please e-mail bugs to : alet@librelogiciel.com (Jerome Alet)
Note: See TracBrowser for help on using the browser.