Feat: add use of ration for on_side
This commit is contained in:
parent
58edb87ebc
commit
1dbec31687
@ -16,7 +16,25 @@ photobook.set_auto_page_break(False)
|
||||
photobook.set_fig_folder("textures")
|
||||
photobook.one_centered("eugene.jpg", "one_centered default")
|
||||
photobook.one_centered("eugene.jpg", "")
|
||||
photobook.one_centered("eugene.jpg", "one_centered text_ratio=1, img_ratio=1", text_ratio=1, img_ratio=1)
|
||||
photobook.one_centered(
|
||||
"eugene.jpg",
|
||||
"one_centered text_ratio=1, img_ratio=1",
|
||||
text_ratio=1,
|
||||
img_ratio=1
|
||||
)
|
||||
|
||||
photobook.one_side("eugene.jpg", "one_side default")
|
||||
photobook.one_side(
|
||||
"eugene.jpg",
|
||||
"one_side text_ratio=1, img_ratio=1",
|
||||
text_ratio=1,
|
||||
img_ratio=1
|
||||
)
|
||||
photobook.one_side(
|
||||
"eugene.jpg",
|
||||
"one_side text_ratio=1, img_ratio=1",
|
||||
text_ratio=1,
|
||||
img_ratio=1
|
||||
)
|
||||
|
||||
photobook.output(dest)
|
||||
|
@ -116,7 +116,10 @@ class Photobook(FPDF):
|
||||
self.add_page()
|
||||
|
||||
total_ratio = img_ratio + text_ratio
|
||||
text_size = (self.epw, (self.eph - self.sep) * text_ratio / total_ratio - self.sep)
|
||||
text_size = (
|
||||
self.epw,
|
||||
(self.eph - self.sep) * text_ratio / total_ratio - self.sep,
|
||||
)
|
||||
|
||||
img_size = (self.epw, self.eph - text_size[1])
|
||||
img_dest = self.img_process(img, img_size)
|
||||
@ -130,22 +133,32 @@ class Photobook(FPDF):
|
||||
else:
|
||||
self.cell(text_size[0], text_size[1] - self.sep, text, align="C", border=1)
|
||||
|
||||
def one_side(self, img, txt=""):
|
||||
def one_side(
|
||||
self,
|
||||
img,
|
||||
txt="",
|
||||
img_ratio=5,
|
||||
text_ratio=1,
|
||||
):
|
||||
"""Display the image on the outside of the page
|
||||
along with text on the other side
|
||||
"""
|
||||
self.add_page()
|
||||
p_no = self.page_no()
|
||||
win_dim = (self.size[0] * 2 / 3, self.size[1])
|
||||
|
||||
total_ratio = img_ratio + text_ratio
|
||||
|
||||
win_dim = (self.size[0] * img_ratio / total_ratio, self.size[1])
|
||||
img_dest = self.img_process(img, win_dim)
|
||||
|
||||
if p_no % 2 == 1:
|
||||
self.set_xy(win_dim[0], self.size[1] / 2)
|
||||
self.multi_cell(self.size[0] / 3, self.font_size, txt, align="C")
|
||||
self.multi_cell(self.size[0] * text_ratio/ total_ratio, self.font_size, txt, align="C")
|
||||
self.image(img_dest, 0, 0, *win_dim)
|
||||
else:
|
||||
self.set_xy(0, self.size[1] / 2)
|
||||
self.multi_cell(self.size[0] / 3, self.font_size, txt, align="C")
|
||||
self.image(img_dest, self.size[0] / 3, 0, *win_dim)
|
||||
self.multi_cell(self.size[0] * text_ratio / total_ratio, self.font_size, txt, align="C")
|
||||
self.image(img_dest, self.size[0] * text_ratio / total_ratio, 0, *win_dim)
|
||||
|
||||
def one_side_nocut(self, img, txt=""):
|
||||
"""Display the image on the outside of the page without resize it"""
|
||||
@ -299,5 +312,3 @@ class Photobook(FPDF):
|
||||
self.multi_cell(width, self.font_size, content, align="J", border=1)
|
||||
else:
|
||||
self.cell(width, height, content, align="C", border=1)
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user