Extract a separate function from tostream()
This commit is contained in:
parent
316629fa40
commit
8aca925ee3
1 changed files with 13 additions and 13 deletions
|
@ -1070,12 +1070,7 @@ class pdfdoc(object):
|
||||||
if iccp is not None:
|
if iccp is not None:
|
||||||
self.writer.addobj(iccpdict)
|
self.writer.addobj(iccpdict)
|
||||||
|
|
||||||
def tostring(self):
|
def todoc(self):
|
||||||
stream = BytesIO()
|
|
||||||
self.tostream(stream)
|
|
||||||
return stream.getvalue()
|
|
||||||
|
|
||||||
def tostream(self, outputstream=None, return_engine_doc=False):
|
|
||||||
if self.engine == Engine.pikepdf:
|
if self.engine == Engine.pikepdf:
|
||||||
PdfArray = pikepdf.Array
|
PdfArray = pikepdf.Array
|
||||||
PdfDict = pikepdf.Dictionary
|
PdfDict = pikepdf.Dictionary
|
||||||
|
@ -1267,12 +1262,16 @@ class pdfdoc(object):
|
||||||
self.writer.addobj(metadata)
|
self.writer.addobj(metadata)
|
||||||
self.writer.addobj(iccstream)
|
self.writer.addobj(iccstream)
|
||||||
|
|
||||||
if return_engine_doc:
|
return self.writer, self.output_version
|
||||||
return self.writer, self.output_version
|
|
||||||
|
|
||||||
# now write out the PDF
|
def tostring(self):
|
||||||
if outputstream is None:
|
stream = BytesIO()
|
||||||
raise TypeError("pdfdoc.tostream() requires outputstream unless return_engine_doc is True.")
|
self.tostream(stream)
|
||||||
|
return stream.getvalue()
|
||||||
|
|
||||||
|
def tostream(self, outputstream):
|
||||||
|
# write out the PDF
|
||||||
|
self.todoc() # finalize self.writer
|
||||||
if self.engine == Engine.pikepdf:
|
if self.engine == Engine.pikepdf:
|
||||||
kwargs = {}
|
kwargs = {}
|
||||||
if pikepdf.__version__ >= "6.2.0":
|
if pikepdf.__version__ >= "6.2.0":
|
||||||
|
@ -1281,6 +1280,7 @@ class pdfdoc(object):
|
||||||
outputstream, min_version=self.output_version, linearize=True, **kwargs
|
outputstream, min_version=self.output_version, linearize=True, **kwargs
|
||||||
)
|
)
|
||||||
elif self.engine == Engine.pdfrw:
|
elif self.engine == Engine.pdfrw:
|
||||||
|
from pdfrw import PdfName, PdfArray
|
||||||
self.writer.trailer.Info = self.writer.docinfo
|
self.writer.trailer.Info = self.writer.docinfo
|
||||||
# setting the version attribute of the pdfrw PdfWriter object will
|
# setting the version attribute of the pdfrw PdfWriter object will
|
||||||
# influence the behaviour of the write() function
|
# influence the behaviour of the write() function
|
||||||
|
@ -2803,11 +2803,11 @@ def convert(*images, **kwargs):
|
||||||
)
|
)
|
||||||
|
|
||||||
if kwargs["outputstream"]:
|
if kwargs["outputstream"]:
|
||||||
pdf.tostream(outputstream=kwargs["outputstream"])
|
pdf.tostream(kwargs["outputstream"])
|
||||||
return
|
return
|
||||||
|
|
||||||
if kwargs["return_engine_doc"]:
|
if kwargs["return_engine_doc"]:
|
||||||
return pdf.tostream(return_engine_doc=True)
|
return pdf.todoc()
|
||||||
|
|
||||||
return pdf.tostring()
|
return pdf.tostring()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue