ZnJvbSBmcGRmIGltcG9ydCBGUERGCgojIERlZmluZSB0aGUgdGFibGUgZGF0YQpkYXRhID0gWwogICAgWyZxdW90O9in2YTYrdi22KfYsdipJnF1b3Q7LCAmcXVvdDvYp9mE2KrYo9iz2YrYsyZxdW90OywgJnF1b3Q72KfZhNmI2LjZitmB2KkmcXVvdDssICZxdW90O9ij2LTZh9ixINin2YTZhdmD2KrYqNin2KomcXVvdDssICZxdW90O9ij2YfZhSDZhdinINmK2YXZitiyINin2YTZhdmD2KrYqNipJnF1b3Q7XSwKICAgIFsmcXVvdDvYp9mE2YXYtdix2YrYqSDYp9mE2YLYr9mK2YXYqSZxdW90OywgCiAgICAgJnF1b3Q72KfYs9iq2K7Yr9mFINin2YTZhdi12LHZitmI2YYg2YjYsdmCINin2YTYqNix2K/ZiiDZiNin2K3YqtmB2LjZiNinINio2KfZhNiz2KzZhNin2Kog2YHZiiDYp9mE2YXYudin2KjYryZxdW90OywgCiAgICAgJnF1b3Q72KfYrdiq2YjYqiDYudmE2Ykg2KfZhNmG2LXZiNi1INin2YTYr9mK2YbZitip2Iwg2YjYp9mE2LnZhNmF2YrYqdiMINmI2KfZhNiz2K3YsdmK2KnYjCDZiNmD2KfZhtiqINmF2K7Ytdi12Kkg2YTZhNmD2YfZhtipJnF1b3Q7LCAKICAgICAmcXVvdDvZhdmD2KrYqNipINin2YTYpdmE2Ycg2KrYrdmI2KogKNio2YrYqiDYp9mE2K3Zitin2KkpJnF1b3Q7LCAKICAgICAmcXVvdDvZg9in2YbYqiDZhdix2KrYqNi32Kkg2KjYp9mE2YXYudin2KjYryDZiNiq2LPYqtiu2K/ZhSDZhNmE2K3Zgdin2Lgg2LnZhNmJINin2YTYt9mC2YjYsyDZiNin2YTZhti12YjYtSDYp9mE2K/ZitmG2YrYqSDZiNmE2YTYqti52YTZitmFINin2YTYr9mK2YbZiiZxdW90O10sCiAgICBbJnF1b3Q72KjZhNin2K8g2YXYpyDYqNmK2YYg2KfZhNmG2YfYsdmK2YYmcXVvdDssIAogICAgICZxdW90O9in2LPYqtiu2K/ZhdiqINij2YTZiNin2K0g2KfZhNi32YrZhiDZhNmE2YPYqtin2KjYqSDYp9mE2YXYs9mF2KfYsdmK2KnYjCDZiNmG2LTYo9iqINmF2KjZg9ix2YvYpyZxdW90OywgCiAgICAgJnF1b3Q72KfZh9iq2YXYqiDYqNiq2LPYrNmK2YQg2KfZhNmI2KvYp9im2YIg2KfZhNmC2KfZhtmI2YbZitip2Iwg2YjYp9mE2KPYr9io2YrYqdiMINmI2KfZhNiv2YrZhtmK2KkmcXVvdDssIAogICAgICZxdW90O9mF2YPYqtio2Kkg2KLYtNmI2LEg2KjYp9mG2YrYqNin2YQg2YHZiiDZhtmK2YbZiNmJJnF1b3Q7LCAKICAgICAmcXVvdDvYqti52K/ZkSDZhdmGINij2YLYr9mFINin2YTZhdmD2KrYqNin2Kog2YHZiiDYp9mE2LnYp9mE2YXYjCDZiNin2K3YqtmI2Kog2LnZhNmJINmG2LXZiNi1INmF2KrZhtmI2LnYqSDZhNmE2K3Zgdin2Lgg2LnZhNmJINin2YTYqtin2LHZitiuINmI2KfZhNiq2LHYp9irJnF1b3Q7XSwKICAgIFsmcXVvdDvYp9mE2YrZiNmG2KfZhtmK2KkmcXVvdDssIAogICAgICZxdW90O9in2LnYqtmF2K/YqiDYudmE2Ykg2KfZhNmF2K7Yt9mI2LfYp9iqINmF2YYg2YjYsdmCINin2YTYqNix2K/ZiiDZiNin2YTYqNix2LTZhdin2YYmcXVvdDssIAogICAgICZxdW90O9ix2YPYstiqINi52YTZiSDYp9mE2YHZhNiz2YHYqdiMINmI2KfZhNi52YTZiNmF2Iwg2YjYp9mE2LTYudix2Iwg2YjZg9iq2KfYqNin2Kog2KfZhNmF2KTYsdiu2YrZhtiMINmI2YPYp9mG2Kog2YXZgdiq2YjYrdipINmE2YTYudin2YXYqSZxdW90OywgCiAgICAgJnF1b3Q72YXZg9iq2KjYqSDYp9mE2KXYs9mD2YbYr9ix2YrYqSZxdW90OywgCiAgICAgJnF1b3Q72YPYp9mG2Kog2YXYsdmD2LLZi9inINi52YTZhdmK2YvYpyDYudin2YTZhdmK2YvYp9iMINmI2KzZhdi52Kog2LnZhNmF2KfYoSDZhdmGINis2YXZiti5INij2YbYrdin2KEg2KfZhNi52KfZhNmFINmI2KfYrdiq2YjYqiDYudmE2Ykg2YXYptin2Kog2KfZhNii2YTYp9mBINmF2YYg2KfZhNmF2K7Yt9mI2LfYp9iqJnF1b3Q7XSwKICAgIFsmcXVvdDvYp9mE2LHZiNmF2KfZhtmK2KkmcXVvdDssIAogICAgICZxdW90O9in2LPYqtmF2LHYqiDYqNmG2KfYodmLINi52YTZiSDYp9mE2KrZgtmE2YrYryDYp9mE2YrZiNmG2KfZhtmK2Iwg2YjYuNmH2LHYqiDZhdmD2KrYqNin2Kog2LnYp9mF2KkmcXVvdDssIAogICAgICZxdW90O9in2K3YqtmI2Kog2LnZhNmJINin2YTZhti12YjYtSDYp9mE2YLYp9mG2YjZhtmK2KnYjCDZiNin2YTYudmE2YXZitip2Iwg2YjYp9mE2YHZhNiz2YHZitip2Iwg2YjYp9mE2KPYr9io2YrYqdiMINmI2KrYt9mI2LHYqiDZhNiq2LTZhdmEINin2YTYudin2YXYqSZxdW90OywgCiAgICAgJnF1b3Q72YXZg9iq2KjYqSDYqtix2KfYrNin2YYg2YHZiiDYsdmI2YXYpyZxdW90OywgCiAgICAgJnF1b3Q72YPYp9mG2Kog2YXZg9iq2KjYqSDYudin2YXYqSDZhdmB2KrZiNit2Kkg2YTZhNis2YXZiti52Iwg2YXZhdinINiz2KfZh9mFINmB2Yog2YbYtNixINin2YTYqti52YTZitmFINmI2KfZhNir2YLYp9mB2Kkg2KjZitmGINin2YTYt9io2YLYp9iqINin2YTZhdiu2KrZhNmB2KkmcXVvdDtdCl0KCiMgRGVmaW5lIHRoZSBQREYgY2xhc3MKY2xhc3MgUERGKEZQREYpOgogICAgZGVmIGhlYWRlcihzZWxmKToKICAgICAgICBzZWxmLnNldF9mb250KCZxdW90O0FyaWFsJnF1b3Q7LCAmcXVvdDtCJnF1b3Q7LCAxMikKICAgICAgICBzZWxmLmNlbGwoMCwgMTAsICZxdW90O9mF2YLYp9ix2YbYqSDYqNmK2YYg2YXZg9iq2KjYp9iqINin2YTYrdi22KfYsdin2Kog2KfZhNmC2K/ZitmF2KkmcXVvdDssIGFsaWduPSZxdW90O0MmcXVvdDssIGxuPVRydWUpCiAgICAgICAgc2VsZi5sbig1KQoKICAgIGRlZiBmb290ZXIoc2VsZik6CiAgICAgICAgc2VsZi5zZXRfeSgtMTUpCiAgICAgICAgc2VsZi5zZXRfZm9udCgmcXVvdDtBcmlhbCZxdW90OywgJnF1b3Q7SSZxdW90OywgOCkKICAgICAgICBzZWxmLmNlbGwoMCwgMTAsIGYmcXVvdDtQYWdlIHtzZWxmLnBhZ2Vfbm8oKX0mcXVvdDssIGFsaWduPSZxdW90O0MmcXVvdDspCgogICAgZGVmIHRhYmxlKHNlbGYsIGRhdGEpOgogICAgICAgIHNlbGYuc2V0X2ZvbnQoJnF1b3Q7QXJpYWwmcXVvdDssICZxdW90O0ImcXVvdDssIDEwKQogICAgICAgIGNvbF93aWR0aHMgPSBbMzAsIDUwLCA2MCwgNTAsIDY1XSAgIyBTZXQgY29sdW1uIHdpZHRocwogICAgICAgIHJvd19oZWlnaHQgPSAxMCAgIyBTZXQgcm93IGhlaWdodAogICAgICAgIAogICAgICAgICMgSGVhZGVyIHJvdwogICAgICAgIGZvciBpLCBpdGVtIGluIGVudW1lcmF0ZShkYXRhWzBdKToKICAgICAgICAgICAgc2VsZi5jZWxsKGNvbF93aWR0aHNbaV0sIHJvd19oZWlnaHQsIHR4dD1pdGVtLCBib3JkZXI9MSwgYWxpZ249JnF1b3Q7QyZxdW90OykKICAgICAgICBzZWxmLmxuKHJvd19oZWlnaHQpCiAgICAgICAgCiAgICAgICAgIyBEYXRhIHJvd3MKICAgICAgICBzZWxmLnNldF9mb250KCZxdW90O0FyaWFsJnF1b3Q7LCAmcXVvdDsmcXVvdDssIDEwKQogICAgICAgIGZvciByb3cgaW4gZGF0YVsxOl06CiAgICAgICAgICAgIGZvciBpLCBpdGVtIGluIGVudW1lcmF0ZShyb3cpOgogICAgICAgICAgICAgICAgc2VsZi5jZWxsKGNvbF93aWR0aHNbaV0sIHJvd19oZWlnaHQsIHR4dD1pdGVtLCBib3JkZXI9MSwgYWxpZ249JnF1b3Q7QyZxdW90OykKICAgICAgICAgICAgc2VsZi5sbihyb3dfaGVpZ2h0KQoKIyBDcmVhdGUgYW5kIGNvbmZpZ3VyZSB0aGUgUERGCnBkZiA9IFBERigpCnBkZi5hZGRfcGFnZSgpCnBkZi50YWJsZShkYXRhKQoKIyBTYXZlIHRoZSBQREYKb3V0cHV0X3BhdGggPSAmcXVvdDsvbW50L2RhdGEv2YXZgtin2LHZhtipX9io2YrZhl/ZhdmD2KrYqNin2Kpf2KfZhNit2LbYp9ix2KfYql/Yp9mE2YLYr9mK2YXYqS5wZGYmcXVvdDsKcGRmLm91dHB1dChvdXRwdXRfcGF0aCkKCm91dHB1dF9wYXRo
from fpdf import FPDF
# Define the table data
data = [
["الحضارة", "التأسيس", "الوظيفة", "أشهر المكتبات", "أهم ما يميز المكتبة"],
["المصرية القديمة",
"استخدم المصريون ورق البردي واحتفظوا بالسجلات في المعابد",
"احتوت على النصوص الدينية، والعلمية، والسحرية، وكانت مخصصة للكهنة",
"مكتبة الإله تحوت (بيت الحياة)",
"كانت مرتبطة بالمعابد وتستخدم للحفاظ على الطقوس والنصوص الدينية وللتعليم الديني"],
["بلاد ما بين النهرين",
"استخدمت ألواح الطين للكتابة المسمارية، ونشأت مبكرًا",
"اهتمت بتسجيل الوثائق القانونية، والأدبية، والدينية",
"مكتبة آشور بانيبال في نينوى",
"تعدّ من أقدم المكتبات في العالم، واحتوت على نصوص متنوعة للحفاظ على التاريخ والتراث"],
["اليونانية",
"اعتمدت على المخطوطات من ورق البردي والبرشمان",
"ركزت على الفلسفة، والعلوم، والشعر، وكتابات المؤرخين، وكانت مفتوحة للعامة",
"مكتبة الإسكندرية",
"كانت مركزًا علميًا عالميًا، وجمعت علماء من جميع أنحاء العالم واحتوت على مئات الآلاف من المخطوطات"],
["الرومانية",
"استمرت بناءً على التقليد اليوناني، وظهرت مكتبات عامة",
"احتوت على النصوص القانونية، والعلمية، والفلسفية، والأدبية، وتطورت لتشمل العامة",
"مكتبة تراجان في روما",
"كانت مكتبة عامة مفتوحة للجميع، مما ساهم في نشر التعليم والثقافة بين الطبقات المختلفة"]
]
# Define the PDF class
class PDF(FPDF):
def header(self):
self.set_font("Arial", "B", 12)
self.cell(0, 10, "مقارنة بين مكتبات الحضارات القديمة", align="C", ln=True)
self.ln(5)
def footer(self):
self.set_y(-15)
self.set_font("Arial", "I", 8)
self.cell(0, 10, f"Page {self.page_no()}", align="C")
def table(self, data):
self.set_font("Arial", "B", 10)
col_widths = [30, 50, 60, 50, 65] # Set column widths
row_height = 10 # Set row height
# Header row
for i, item in enumerate(data[0]):
self.cell(col_widths[i], row_height, txt=item, border=1, align="C")
self.ln(row_height)
# Data rows
self.set_font("Arial", "", 10)
for row in data[1:]:
for i, item in enumerate(row):
self.cell(col_widths[i], row_height, txt=item, border=1, align="C")
self.ln(row_height)
# Create and configure the PDF
pdf = PDF()
pdf.add_page()
pdf.table(data)
# Save the PDF
output_path = "/mnt/data/مقارنة_بين_مكتبات_الحضارات_القديمة.pdf"
pdf.output(output_path)
output_path