Untitled
unknown
plain_text
a month ago
2.0 kB
4
Indexable
from fpdf import FPDF # Create a PDF class instance pdf = FPDF() pdf.set_auto_page_break(auto=True, margin=15) pdf.add_page() pdf.set_font("Arial", size=12) # Title pdf.set_font("Arial", style="B", size=16) pdf.cell(200, 10, "Student Invoice", ln=True, align="C") pdf.ln(10) # University details (Placeholder) pdf.set_font("Arial", size=12) pdf.cell(200, 10, "University Name", ln=True, align="L") pdf.cell(200, 10, "University Address", ln=True, align="L") pdf.cell(200, 10, "Contact: +60-XXXXXXXX", ln=True, align="L") pdf.ln(10) # Student details (Placeholder) pdf.cell(200, 10, "Student Name: [Placeholder Name]", ln=True, align="L") pdf.cell(200, 10, "Student ID: [Placeholder ID]", ln=True, align="L") pdf.cell(200, 10, "Academic Year: 2024/25", ln=True, align="L") pdf.cell(200, 10, "Semester: Year 3, Semester 2", ln=True, align="L") pdf.ln(10) # Table headers pdf.set_font("Arial", style="B", size=12) pdf.cell(120, 10, "Description", border=1, align="C") pdf.cell(50, 10, "Amount (RM)", border=1, align="C") pdf.ln() # Table content pdf.set_font("Arial", size=12) fees = [ ("Corporate Governance", 1036.00), ("Managing Risk", 1036.00), ("Financial Decision Making", 1036.00), ("Elective Course", 777.00), ("Elective Course", 777.00), ("Award Assessment", 90.00), ("Facilities", 200.00) ] # Insert rows into table for item, amount in fees: pdf.cell(120, 10, item, border=1) pdf.cell(50, 10, f"{amount:.2f}", border=1, align="R") pdf.ln() # Total amount total_amount = sum(amount for _, amount in fees) pdf.set_font("Arial", style="B", size=12) pdf.cell(120, 10, "Total Amount Payable", border=1) pdf.cell(50, 10, f"{total_amount:.2f}", border=1, align="R") pdf.ln(10) # Payment due date pdf.set_font("Arial", size=12) pdf.cell(200, 10, "Please pay this amount by 17-03-2025", ln=True, align="L") # Save the PDF pdf_file_path = "/mnt/data/Student_Invoice.pdf" pdf.output(pdf_file_path) # Return file path pdf_file_path
Editor is loading...
Leave a Comment