Speed up handling of PDFs with large images with more minimal change
parent
fab1c9462c
commit
185ddeb2ab
|
@ -102,7 +102,7 @@ class PDFParser(PSStackParser):
|
||||||
return
|
return
|
||||||
pos += len(line)
|
pos += len(line)
|
||||||
self.fp.seek(pos)
|
self.fp.seek(pos)
|
||||||
data_list = [self.fp.read(objlen)]
|
data = bytearray(self.fp.read(objlen))
|
||||||
self.seek(pos+objlen)
|
self.seek(pos+objlen)
|
||||||
while 1:
|
while 1:
|
||||||
try:
|
try:
|
||||||
|
@ -115,12 +115,11 @@ class PDFParser(PSStackParser):
|
||||||
i = line.index(b'endstream')
|
i = line.index(b'endstream')
|
||||||
objlen += i
|
objlen += i
|
||||||
if self.fallback:
|
if self.fallback:
|
||||||
data_list.append(line[:i])
|
data += line[:i]
|
||||||
break
|
break
|
||||||
objlen += len(line)
|
objlen += len(line)
|
||||||
if self.fallback:
|
if self.fallback:
|
||||||
data_list.append(line)
|
data += line
|
||||||
data = b''.join(data_list)
|
|
||||||
self.seek(pos+objlen)
|
self.seek(pos+objlen)
|
||||||
# XXX limit objlen not to exceed object boundary
|
# XXX limit objlen not to exceed object boundary
|
||||||
log.debug('Stream: pos=%d, objlen=%d, dic=%r, data=%r...', pos, objlen, dic, data[:10])
|
log.debug('Stream: pos=%d, objlen=%d, dic=%r, data=%r...', pos, objlen, dic, data[:10])
|
||||||
|
|
Loading…
Reference in New Issue