MCPcopy Create free account
hub / github.com/pymupdf/PyMuPDF / write

Method write

src/__init__.py:15995–16032  ·  view source on GitHub ↗
(self, writer, rectfn, positionfn=None, pagefn=None)

Source from the content-addressed store, hash-verified

15993 mupdf.fz_reset_story( self.this)
15994
15995 def write(self, writer, rectfn, positionfn=None, pagefn=None):
15996 dev = None
15997 page_num = 0
15998 rect_num = 0
15999 filled = Rect(0, 0, 0, 0)
16000 while 1:
16001 mediabox, rect, ctm = rectfn(rect_num, filled)
16002 rect_num += 1
16003 if mediabox:
16004 # new page.
16005 page_num += 1
16006 more, filled = self.place( rect)
16007 if positionfn:
16008 def positionfn2(position):
16009 # We add a `.page_num` member to the
16010 # `ElementPosition` instance.
16011 position.page_num = page_num
16012 positionfn(position)
16013 self.element_positions(positionfn2)
16014 if writer:
16015 if mediabox:
16016 # new page.
16017 if dev:
16018 if pagefn:
16019 pagefn(page_num, mediabox, dev, 1)
16020 writer.end_page()
16021 dev = writer.begin_page( mediabox)
16022 if pagefn:
16023 pagefn(page_num, mediabox, dev, 0)
16024 self.draw( dev, ctm)
16025 if not more:
16026 if pagefn:
16027 pagefn( page_num, mediabox, dev, 1)
16028 writer.end_page()
16029 else:
16030 self.draw(None, ctm)
16031 if not more:
16032 break
16033
16034 @staticmethod
16035 def write_stabilized(writer, contentfn, rectfn, user_css=None, em=12, positionfn=None, pagefn=None, archive=None, add_header_ids=True):

Callers 2

write_stabilizedMethod · 0.95
write_with_linksMethod · 0.95

Calls 7

placeMethod · 0.95
element_positionsMethod · 0.95
drawMethod · 0.95
RectClass · 0.85
end_pageMethod · 0.80
begin_pageMethod · 0.80
rectfnFunction · 0.50

Tested by

no test coverage detected