Pillow musste ich nachinstallieren, da kam ne Ecception, das stimmt.
Das Rechteck hab ich auch nicht zu sehen bekommen...lag aber an nem evtl. komischen verhalten.
Hier mal was lauffähiges:
Code: Alles auswählen
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Image
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.rl_config import defaultPageSize
from reportlab.lib.pagesizes import A4
from reportlab.lib.units import cm
from operator import itemgetter
from pathlib import Path
import time
import configparser
import os
import sys
page_height=defaultPageSize[1]
page_width=defaultPageSize[0]
styles = getSampleStyleSheet()
title = "PDF Test"
pageinfo = "Prog ver. 1.?"
creation_time = time.asctime()
logo = "/usr/share/pyProgramm/prog-logo.png"
file_path = str(Path.home())
file_name = "settings.pdf"
def myFirstPage(canvas, doc):
canvas.saveState()
#canvas.drawImage(logo,cm,page_height-(5*cm),width=10*cm,height=5*cm,mask=None, anchor="nw")
canvas.rect(1*cm,page_height-(10*cm),width=10*cm,height=5*cm)
canvas.setFont('Helvetica-Bold',16)
canvas.drawCentredString(page_width/2.0, page_height-50, title)
canvas.setFont('Helvetica',9)
canvas.drawString(cm, 0.75 * cm,"Page 1")
canvas.drawCentredString(page_width/2.0, 0.75 * cm, pageinfo)
canvas.drawRightString(page_width-cm,0.75 * cm, creation_time)
canvas.restoreState()
def myLaterPages(canvas, doc):
canvas.saveState()
canvas.setFont('Helvetica', 9)
canvas.drawString(cm, 0.75 * cm,"Page %d" % (doc.page))
canvas.drawCentredString(page_width/2, 0.75 * cm, pageinfo)
canvas.drawRightString(page_width-cm,0.75 * cm, creation_time)
canvas.restoreState()
def go(vars=None):
file=file_path + "/" + file_name
doc = SimpleDocTemplate(file)
Story = [Spacer(1,2*cm)]
style = styles["Normal"]
for i in range(100):
bogustext = ("Paragraph number %s. " % i) *20
p = Paragraph(bogustext, style)
Story.append(p)
Story.append(Spacer(1,0.2*cm))
doc.build(Story, onFirstPage=myFirstPage, onLaterPages=myLaterPages)
if __name__ == "__main__":
go()
Ich glaub, ich hab immer dieselbe Datei betrachtet. Einmal das PDF gelöscht ist der Ozutüut so, wie ich es erwartet hätte.
Scheint also vorerst geklärt.
Danke schonmal.
Gruß
Daniel