Đối với dự án của tôi, tôi nhận được một tệp văn bản thuần túy (report.txt) từ một chương trình khác. Tất cả được định dạng ở dạng văn bản thuần túy. Nếu bạn mở nó trong Notepad, nó trông đẹp (nhiều như một tập tin văn bản thuần túy có thể). Khi tôi mở tập tin trong Word và hiển thị các đoạn văn, tôi thấy ... cho các khoảng trắng và chữ P ngược cho pararaph.Chuyển văn bản thuần sang PDF bằng Python
Tôi cần chuyển đổi tệp này sang PDF và thêm một số trang PDF khác để tạo một tệp PDF cuối cùng. Tất cả điều này xảy ra trong Python.
Tôi gặp sự cố khi chuyển đổi report.txt sang pdf. Tôi có ReportLab và có thể đọc tệp và thực hiện một vài thay đổi (như thay đổi văn bản thành Chuyển phát nhanh), nhưng khoảng cách bị mất. Khi tập tin được đọc, nó xuất hiện để loại bỏ bất kỳ không gian thêm.
Câu hỏi: a) có cách nào dễ dàng hơn để chuyển đổi report.txt sang pdf không? b) Nếu không, có cách nào giữ không gian của tôi khi tôi đọc tệp không? c) Hoặc có một tham số nào tôi thiếu trong kiểu đoạn văn bản của tôi sẽ giữ nguyên giao diện gốc?
Dưới đây là mã của tôi:
# ------------------------------------
# Styles
# ------------------------------------
styleSheet = getSampleStyleSheet()
mystyle = ParagraphStyle(name='normal',fontName='Courier',
fontSize=10,
alignment=TA_JUSTIFY,
leading=1.2*12,
parent=styleSheet['Normal'])
#=====================================================================================
model_report = 'report.txt'
# Create document for writing to pdf
doc = SimpleDocTemplate(str(pdfPath), \
rightMargin=40, leftMargin=40, \
topMargin=40, bottomMargin=25, \
pageSize=A4)
doc.pagesize = portrait(A4)
# Container for 'Flowable' objects
elements = []
# Open the model report
infile = file(model_report).read()
report_paragraphs = infile.split("\n")
for para in report_paragraphs:
para1 = '<font face="Courier" >%s</font>' % para
elements.append(Paragraph(para1, style=mystyle))
doc.build(elements)
bình thường không hoạt động, vì vậy tại sao tôi đã cố gắng để tạo của riêng tôi. – user1327390
Vì Bình thường * nên * hoạt động, tôi khuyên bạn nên tìm hiểu lý do tại sao nó không hoạt động. Sao chép-dán một ví dụ từ tài liệu, và nếu nó vẫn không hoạt động, có gì đó sai với cài đặt ReportLab của bạn. Sau đó, thêm 'report.txt' vào danh sách kết hợp và nếu nó phá vỡ nó, hãy kiểm tra mã hóa tệp của bạn-- bạn có thể có UTF16 thay vì ascii không? Chúc may mắn. – alexis