Update app.py
Browse files
app.py
CHANGED
@@ -323,9 +323,9 @@ def pdf_to_image(pdf_bytes):
|
|
323 |
return None
|
324 |
|
325 |
# PDF creation and linking functions
|
326 |
-
|
327 |
-
|
328 |
-
"eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen", "twenty"]
|
329 |
|
330 |
def create_crossfile_pdfs(source_pdf="TestSource.pdf", target_pdf="TestTarget.pdf"):
|
331 |
"""Create two PDFs with cross-file linking."""
|
@@ -333,7 +333,7 @@ def create_crossfile_pdfs(source_pdf="TestSource.pdf", target_pdf="TestTarget.pd
|
|
333 |
buffer = io.BytesIO()
|
334 |
c = canvas.Canvas(buffer)
|
335 |
c.setFont("Helvetica", 12)
|
336 |
-
for i, word in enumerate(
|
337 |
y = 800 - (i * 20)
|
338 |
c.drawString(50, y, f"{i}. {word}")
|
339 |
c.showPage()
|
@@ -414,7 +414,7 @@ def create_selflinking_pdf(pdf_file="SelfLinking.pdf"):
|
|
414 |
c.drawString(50, 800, "Table of Contents")
|
415 |
c.setFont("Helvetica", 12)
|
416 |
toc_y_positions = []
|
417 |
-
for i, word in enumerate(
|
418 |
y = 760 - (i * 20)
|
419 |
c.drawString(50, y, f"{word}")
|
420 |
toc_y_positions.append(y)
|
@@ -423,7 +423,7 @@ def create_selflinking_pdf(pdf_file="SelfLinking.pdf"):
|
|
423 |
# Page 2: Numbered list 1-20
|
424 |
c.setFont("Helvetica", 12)
|
425 |
list_y_positions = []
|
426 |
-
for i, word in enumerate(
|
427 |
y = 800 - (i * 20)
|
428 |
c.drawString(50, y, f"{i}. {word}")
|
429 |
list_y_positions.append(y)
|
@@ -446,12 +446,12 @@ def create_selflinking_pdf(pdf_file="SelfLinking.pdf"):
|
|
446 |
toc_page = writer.pages[0]
|
447 |
list_page = writer.pages[1]
|
448 |
writer.add_outline_item("Table of Contents", 0, fit=Fit(fit_type="/Fit"))
|
449 |
-
for i, word in enumerate(
|
450 |
y = list_y_positions[i-1]
|
451 |
writer.add_outline_item(word, 1, fit=Fit(fit_type="/XYZ", fit_args=[50, y, 0]))
|
452 |
|
453 |
# Add TOC links from page 1 to page 2
|
454 |
-
for i, word in enumerate(
|
455 |
toc_y = toc_y_positions[i]
|
456 |
list_y = list_y_positions[i]
|
457 |
link = Link(
|
|
|
323 |
return None
|
324 |
|
325 |
# PDF creation and linking functions
|
326 |
+
WORDS_12 = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve"]
|
327 |
+
WORDS_24 = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten",
|
328 |
+
"eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen", "twenty", "twenty one", "twenty two", "twenty three", "twenty four"]
|
329 |
|
330 |
def create_crossfile_pdfs(source_pdf="TestSource.pdf", target_pdf="TestTarget.pdf"):
|
331 |
"""Create two PDFs with cross-file linking."""
|
|
|
333 |
buffer = io.BytesIO()
|
334 |
c = canvas.Canvas(buffer)
|
335 |
c.setFont("Helvetica", 12)
|
336 |
+
for i, word in enumerate(WORDS_12, 1):
|
337 |
y = 800 - (i * 20)
|
338 |
c.drawString(50, y, f"{i}. {word}")
|
339 |
c.showPage()
|
|
|
414 |
c.drawString(50, 800, "Table of Contents")
|
415 |
c.setFont("Helvetica", 12)
|
416 |
toc_y_positions = []
|
417 |
+
for i, word in enumerate(WORDS_12, 1):
|
418 |
y = 760 - (i * 20)
|
419 |
c.drawString(50, y, f"{word}")
|
420 |
toc_y_positions.append(y)
|
|
|
423 |
# Page 2: Numbered list 1-20
|
424 |
c.setFont("Helvetica", 12)
|
425 |
list_y_positions = []
|
426 |
+
for i, word in enumerate(WORDS_24, 1):
|
427 |
y = 800 - (i * 20)
|
428 |
c.drawString(50, y, f"{i}. {word}")
|
429 |
list_y_positions.append(y)
|
|
|
446 |
toc_page = writer.pages[0]
|
447 |
list_page = writer.pages[1]
|
448 |
writer.add_outline_item("Table of Contents", 0, fit=Fit(fit_type="/Fit"))
|
449 |
+
for i, word in enumerate(WORDS_12, 1):
|
450 |
y = list_y_positions[i-1]
|
451 |
writer.add_outline_item(word, 1, fit=Fit(fit_type="/XYZ", fit_args=[50, y, 0]))
|
452 |
|
453 |
# Add TOC links from page 1 to page 2
|
454 |
+
for i, word in enumerate(WORDS_12):
|
455 |
toc_y = toc_y_positions[i]
|
456 |
list_y = list_y_positions[i]
|
457 |
link = Link(
|