Compare commits
2 Commits
537d3725d7
...
a37918fe11
Author | SHA1 | Date | |
---|---|---|---|
a37918fe11 | |||
963a59d2d4 |
18
app.py
18
app.py
@ -42,25 +42,21 @@ backend = 'pyusb'
|
||||
printer = 'usb://0x04f9:0x20a7'
|
||||
|
||||
# Convert PDF to image
|
||||
def convert_pdf_to_image(pdf_path):
|
||||
def convert_pdf_to_images(pdf_path):
|
||||
"""Converts a PDF to a PIL Image"""
|
||||
try:
|
||||
# Convert PDF to image (get the first page)
|
||||
images = pdf2image.convert_from_path(pdf_path)
|
||||
if images:
|
||||
return images[0] # We will only print the first page for now
|
||||
return images
|
||||
return None
|
||||
except Exception as e:
|
||||
app.logger.error(f"Error converting PDF: {str(e)}")
|
||||
return None
|
||||
|
||||
# Function to print address labels
|
||||
def print_address_label(pdf_path):
|
||||
def print_address_label(images, pdf_path):
|
||||
try:
|
||||
# Convert PDF to image
|
||||
image = convert_pdf_to_image(pdf_path)
|
||||
if not image:
|
||||
raise Exception("Failed to create label images")
|
||||
|
||||
if 'address' in pdf_path.lower():
|
||||
target_width = 1660
|
||||
@ -80,7 +76,7 @@ def print_address_label(pdf_path):
|
||||
app.logger.info("Converting image to printer instructions...")
|
||||
instructions = convert(
|
||||
qlr=qlr,
|
||||
images=[image], # Pass as a list with the single image
|
||||
images=images,
|
||||
label='102x152',
|
||||
threshold=70.0,
|
||||
dither=False,
|
||||
@ -113,7 +109,11 @@ def process_queue():
|
||||
break
|
||||
# Process the file (convert and print)
|
||||
app.logger.info(f"Processing file: {file_path}")
|
||||
print_address_label(file_path)
|
||||
images = convert_pdf_to_images(file_path)
|
||||
if images:
|
||||
print_address_label(images, file_path)
|
||||
else:
|
||||
app.logger.error(f"Failed to convert PDF to images: {file_path}")
|
||||
# Signal that the task is done
|
||||
file_queue.task_done()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user