diff --git a/Getraenkekarte.pdf b/Getraenkekarte.pdf index bb827de..fc8bc30 100644 --- a/Getraenkekarte.pdf +++ b/Getraenkekarte.pdf @@ -42,7 +42,7 @@ endobj endobj 8 0 obj << -/Author (\(anonymous\)) /CreationDate (D:20260920223817+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260920223817+02'00') /Producer (ReportLab PDF Library - \(opensource\)) +/Author (\(anonymous\)) /CreationDate (D:20260920234637+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20260920234637+02'00') /Producer (ReportLab PDF Library - \(opensource\)) /Subject (\(unspecified\)) /Title (\(anonymous\)) /Trapped /False >> endobj @@ -53,10 +53,10 @@ endobj endobj 10 0 obj << -/Filter [ /ASCII85Decode /FlateDecode ] /Length 1640 +/Filter [ /ASCII85Decode /FlateDecode ] /Length 1736 >> stream -GauHL>Bf'b&:WeD9HUj$m/bbKpsuoZ82a2Jkm"_G:(Ju^"=P*K/">ZH^V1q&Cd[QBB$!AqD)B\"^2InFJq\-3r?!ZnNX,(N)$S/j0Eiq^JADum#-I>GRS2A!E*I8kXs8a^[l=nR$+6`#:tWJH=UWiWKc438M(0@H9EfKr!m3LmQt>=Q@"P/$CU>+1KYcKN8SpHU%;psV&t^h(QUeN;*oq?g9cs9;h/0j8bqJjpgT'bC>NONGG-AM^jm0#UTN6docaN*u`+E>YZ@/TM17lD4C*^2dWD"Ik?m7HJ#9&3E'RD5PRJiPe>Eb]4/*r8/go]4EA]&r(m7G[>;jPGB'O@k:kKl_PiI'E-mV_&$77L]EHtUO)Q'\+%#1(`mquK*.lJp)tW=u/@uHY]PTs6lMqO@'mA_C^1W9L]\1;OD6lOg%FsX!2f*mOrJU9n7t\QpHZ4"HE]H+j\E\!OYB(,1EJNM4W#5@3^*%NpK=gUm0>fXrGIXp`a-l_PBIGA/pgKkTi1@%iLL5LOp^6g+\q4F6Eqk$k,Ub_ck#EE\Tg@-\c/:n@*1FGYi]i%LkU1b05dghnKBP'A09&80ff"P24e'iqK1\ae(hZmR>f5>JZ.Yb=V,qck>`etc.rUE"se*b,8]0\`]=U1bJD2BUD_G>3U:5M&mX3hl:5K.2F-tbi1b$*;2?JUrfZ5lR9HbGlhn,\Z;qZ$/0UuQ$JB%dns=h86DL)?Jc<,!5``\+etU`>+)6/Z92$IB_^\iFmJ>(6`DQ1Q6Y,Ru?8Xaul;l"qT.QoN1ZGMli-;]VqnT)K(=qUdq?"#cDtLNEhp?"5XL;qU_k,1G^1Cj@b<)u>hR@/b9@4%X^j9-cFL#1VclNIkPR.pUUGk+)7Gl+c)C-e6JuK6UDC+`L$MGT$H)Sbe`G&RS#`mMhSo!El[>a??H)'?qbdIM4+u47D63$[@oLntm=fj9C(R1g0*J,/9Su2S4%]1c5fV*XkdN8Y<)@C#MfV?MlM1ZOlVkH\b5a'"Yq%=:YA=+LT^%$_Pf6kYGArsc,$\"l$hO6BWU&R;8l:sqLeW<,0h$)s'L6b/Np=otnU/2,_8R$R*:?m'@Od"!]%WV$L6FXGTDXjZ+cTp-AWXdIUuDLYbgj$ZSm[s'8JE[MBjP(+47h+1VuZ.;,70YV8RMb`_@]Og@rnHt@kP8tI_;?$I9OS6jO$nBh\3Z8YrS[if0ai8+calhq(F=5rendstream +GauHL>Bed\&:WeDbW]hRh#gjH@bL)e8P#:Ed^4RBcfsE-J,gBqB4\D0c*-#e0ZFZFfp"%@pnEm_oR1eC7)?\m[Ju#'J?pY]di[slAAjRNlOqb@.H;_X8BqY_9S>-Dqbc5(!.%lM4T/eO4pIopeZNSn4Cind/s,"MZ2<&]"4e/MD-1b@aN4O6A%p.E]jr3r%X!_[<-I7<&17uV/YXD0Uu.Amgc7H*]K_fg_9NES2GNW>K%Hg5eiR(][V2@E!.Pc-hCPI*tTdL;TgLgOk0$PL5i+Js^m*+C26t(Cjb;`hcuMVcbun%RT5U2[\n'&a15r$8L"p(tq[kqPt<1TNFV7$BZY(]D7%>-cQPAeTse,%eo3tXZ%B]-480XNt&IkYquQs"rn!PV&?Pj8r1eA2K*;J/Va+lZRMWdA,>"pq?;\AmAPY[J,k/e&<]J.$N$53N**3"r`%3Ed@7K\[jU/:np0SI)g@WrSoghg?L*%S###ddU-F#jop1?":e3IN_.JVX6-8%@`0cko6/<&U2E#*''koP8YJdq.>KT/uC`O(3L60TLf60Q"UMY;hJlQRTP#^qHd0h^Yi&IsOW(6]f/[^=81.++`Ga1-h+f9cpd`j;"jm+`<](KE4dmbAN_Z`D1Ori]UY6_%NBDRCX9XbAFn1f"9JEGH/qVs-b0.9:iK:d&ZLC`3pU@VI&bGk\K`ccY'-Nd#s)m=.pZkY!:L8oMV;6F3gDl@:?tl('mX\.Uu;5*uUJ..0Q_F%1QB[n_V-LLdRM!L@D/QRrQ"2?+(]e_A;jp"%ZO2X?e;QO;30fk@6_$b)m/'UKjqPLu.o\1$&C>ENF,Fkq=:e654topeS0.NO>1)N/.6dA7?9;^=U+-,2d4^dP4GK98aD.0Q$;-V6)1+u)nBendstream endobj xref 0 11 @@ -74,7 +74,7 @@ xref trailer << /ID -[] +[] % ReportLab generated PDF document -- digest (opensource) /Info 8 0 R @@ -82,5 +82,5 @@ trailer /Size 11 >> startxref -2882 +2978 %%EOF diff --git a/create_pdf.py b/create_pdf.py index 98cb358..bd89a28 100644 --- a/create_pdf.py +++ b/create_pdf.py @@ -119,11 +119,12 @@ def generate_pdf(filename): cocktails = [ ("1. Moscow Mule", "Zutaten: Wodka, frischer Limettensaft, Ginger Beer, Minzzweig & Limettenspalte.
Geschmack: Scharf-würzig, erfrischend und spritzig."), - ("2. Gin & Tonic", "Zutaten: Klassischer Gin, Tonic Water, Limettenscheibe.
Geschmack: Der elegante Klassiker – herb, bitter und ohne Zuckerüberhang."), - ("3. Mojito", "Zutaten: Weißer Rum, frische Minzblätter, Zuckersirup, Limettensaft, Sprudelwasser.
Geschmack: Aromatisches Bar-Feeling mit frischer Minze."), - ("4. Cuba Libre", "Zutaten: Weißer Rum, erfrischende Cola, frischer Limettensaft, Limette.
Geschmack: Der süße, vertraute Party-Dauerbrenner."), - ("5. Vodka Cranberry", "Zutaten: Wodka, Cranberrysaft, Soda, frischer Limettensaft, Limettenscheibe.
Geschmack: Angenehm säuerlich-herb statt klebrig-süß."), - ("6. Skinny Bitch", "Zutaten: Wodka, spritziges Mineralwasser, viel frischer Limettensaft.
Geschmack: Der leichte, komplett zucker- und kalorienfreie Drink.") + ("2. Aperol Spritz", "Zutaten: Aperol, Prosecco, Spritzer Soda, frische Orangenscheibe.
Geschmack: Fruchtig-bitter, spritzig und herrlich erfrischend."), + ("3. Gin & Tonic", "Zutaten: Klassischer Gin, Tonic Water, Limettenscheibe.
Geschmack: Der elegante Klassiker – herb, bitter und ohne Zuckerüberhang."), + ("4. Mojito", "Zutaten: Weißer Rum, frische Minzblätter, Zuckersirup, Limettensaft, Sprudelwasser.
Geschmack: Aromatisches Bar-Feeling mit frischer Minze."), + ("5. Cuba Libre", "Zutaten: Weißer Rum, erfrischende Cola, frischer Limettensaft, Limette.
Geschmack: Der süße, vertraute Party-Dauerbrenner."), + ("6. Vodka Cranberry", "Zutaten: Wodka, Cranberrysaft, Soda, frischer Limettensaft, Limettenscheibe.
Geschmack: Angenehm säuerlich-herb statt klebrig-süß."), + ("7. Skinny Bitch", "Zutaten: Wodka, spritziges Mineralwasser, viel frischer Limettensaft.
Geschmack: Der leichte, komplett zucker- und kalorienfreie Drink.") ] col_width = 87 * mm @@ -133,16 +134,19 @@ def generate_pdf(filename): Paragraph(cocktails[i][0], drink_title_style), Paragraph(cocktails[i][1], drink_text_style) ] - cell_right = [ - Paragraph(cocktails[i+1][0], drink_title_style), - Paragraph(cocktails[i+1][1], drink_text_style) - ] + if i + 1 < len(cocktails): + cell_right = [ + Paragraph(cocktails[i+1][0], drink_title_style), + Paragraph(cocktails[i+1][1], drink_text_style) + ] + else: + cell_right = [] table_data.append([cell_left, cell_right]) cocktail_table = Table(table_data, colWidths=[col_width, col_width]) cocktail_table.setStyle(TableStyle([ ('VALIGN', (0,0), (-1,-1), 'TOP'), - ('BOTTOMPADDING', (0,0), (-1,-1), 8), + ('BOTTOMPADDING', (0,0), (-1,-1), 6), ('RIGHTPADDING', (0,0), (0,-1), 6), ('LEFTPADDING', (1,0), (1,-1), 6), ])) @@ -176,12 +180,14 @@ def generate_pdf(filename): ])) story.append(mocktail_table) - story.append(Spacer(1, 6*mm)) + story.append(Spacer(1, 4*mm)) story.append(Paragraph("✨ Cheers! Cheers to great drinks and good vibes! ✨", footer_style)) doc.build(story, canvasmaker=NumberedCanvas) - print("PDF updated.") + print(f"PDF generated: {filename}") if __name__ == "__main__": - out_path = r"C:\Users\Danie\.gemini\antigravity-ide\scratch\Getraenkekarte.pdf" - generate_pdf(out_path) + import sys + base_dir = os.path.dirname(os.path.abspath(__file__)) + target_file = os.path.join(base_dir, "Getraenkekarte.pdf") + generate_pdf(target_file)