Changeset 364 for pkpgcounter/trunk

Show
Ignore:
Timestamp:
08/16/06 16:20:35 (18 years ago)
Author:
jerome
Message:

Added support for the computation of ink coverage for the PDF format.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • pkpgcounter/trunk/pkpgpdls/pdf.py

    r355 r364  
    2525 
    2626import sys 
     27import popen2 
    2728import re 
    2829 
     
    104105        return pagecount     
    105106         
     107    def convertToTiffMultiPage24NC(self, fname, dpi) : 
     108        """Converts the input file to TIFF format, X dpi, 24 bits per pixel, uncompressed. 
     109           Writes TIFF datas to the outputfile file object. 
     110        """    
     111        command = 'gs -sDEVICE=tiff24nc -dPARANOIDSAFER -dNOPAUSE -dBATCH -dQUIET -r%i -sOutputFile="%s" -' % (dpi, fname) 
     112        child = popen2.Popen4(command) 
     113        try : 
     114            data = self.infile.read(pdlparser.MEGABYTE)     
     115            while data : 
     116                child.tochild.write(data) 
     117                data = self.infile.read(pdlparser.MEGABYTE) 
     118            child.tochild.flush() 
     119            child.tochild.close()     
     120        except (IOError, OSError), msg :     
     121            raise pdlparser.PDLParserError, "Problem during conversion to TIFF : %s" % msg 
     122             
     123        child.fromchild.close() 
     124        try : 
     125            child.wait() 
     126        except OSError, msg :     
     127            raise pdlparser.PDLParserError, "Problem during conversion to TIFF : %s" % msg 
     128         
    106129def test() :         
    107130    """Test function."""