Tôi đang sử dụng thư viện Bảng báo cáo Lab để in bảng trên báo cáo PDF. Tôi muốn biết nếu nó có thể cấu hình bảng để thực hiện một gói tự động của nội dung của một tế bào. Ví dụ: Tôi có văn bản không vừa với ô trong cột. Tôi muốn rằng bảng thực hiện các bọc tự động điều chỉnh nội dung của các tế bào để phù hợp với chiều rộng cột. Có thể không?Từ bọc trên phòng thí nghiệm báo cáo Bảng PDF
11
A
Trả lời
13
Bạn có thể đặt bất kỳ lưu lượng nào trong phần tử bảng. Nó có lẽ là thực hành tốt để có tất cả các yếu tố bảng như flowables, do đó, họ có thể được theo kiểu giống nhau. Đối với trường hợp của bạn, bạn rất có thể sẽ cần một đoạn có thể chảy. ví dụ.
styles = getSampleStyleSheet()
text = Paragraph("long line",
styles['Normal'])
Bạn có thể đặt `văn bản 'vào dữ liệu bạn nạp vào bảng và nó sẽ tự động bao bọc.
2
Giải pháp của tôi, lực lượng xuống dòng trong chuỗi:
def __chopLine(line, maxline):
cant = len(line)/maxline
cant += 1
strline = ""
index = maxline
for i in range(1,cant):
index = maxline * i
strline += "%s\n" %(line[(index-maxline):index])
strline += "%s\n" %(line[index:])
return strline
2
* Toàn bộ quy tắc ứng từ quấn
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.platypus import Paragraph, Table, TableStyle
from reportlab.lib.enums import TA_JUSTIFY, TA_LEFT, TA_CENTER
from reportlab.lib import colors
# bodytext style used for wrapping data on flowables
styles = getSampleStyleSheet()
styleN = styles["BodyText"]
#used alignment if required
styleN.alignment = TA_LEFT
styleBH = styles["Normal"]
styleBH.alignment = TA_CENTER
hdescrpcion = Paragraph('''<b>descrpcion</b>''', styleBH)
hpartida = Paragraph('''<b>partida</b>''', styleBH)
descrpcion = Paragraph('long long long long long long long long long long long long long long long long long long long long line ', styleN)
partida = Paragraph('1', styleN)
data= [[hdescrpcion, hpartida],
[partida ,descrpcion]]
table = Table(data)
table.setStyle(TableStyle([
('INNERGRID', (0,0), (-1,-1), 0.25, colors.black),
('BOX', (0,0), (-1,-1), 0.25, colors.black),
]))
c = canvas.Canvas("a.pdf", pagesize=A4)
table.wrapOn(c, 50, 50)
table.drawOn(c, 100,600)
c.save()
+1
Chào mừng bạn đến với StackOverFlow. Vui lòng cung cấp một số giải thích về mã. Và đọc [** FAQ **] (http://stackoverflow.com/faq) –
Các vấn đề liên quan
- 1. Phòng thí nghiệm ảo của thiết bị di động
- 2. phần trăm trên phòng thí nghiệm y trong một barchart ggplot mặt?
- 3. Chạy báo cáo trên JasperServer từ C#
- 4. Điều gì đã xảy ra với phòng thí nghiệm xoay hoặc swingx-w? JXMapKit cho Java
- 5. Xuất PDF trong Dịch vụ Báo cáo
- 6. Mã ví dụ phòng thí nghiệm thực thi dữ liệu đơn giản cho Delphi
- 7. thử nghiệm và báo cáo khẳng định
- 8. Báo cáo SSRS phù hợp trong PDF
- 9. Thiết kế thí nghiệm (DoE) bằng Python?
- 10. Dịch vụ báo cáo - ẩn cột bảng dựa trên thông số báo cáo
- 11. Báo cáo JUnit trên Eclipse
- 12. Có thể hiển thị tệp PDF trong báo cáo Trình tạo báo cáo không?
- 13. Dịch vụ báo cáo: Nhận bản PDF của báo cáo được tạo
- 14. Xuất Báo cáo SSRS sang PDF trong MVC Hành động
- 15. Tạo PDF từ CSV trên iPhone
- 16. Báo cáo in ấn tốt trên web
- 17. Báo cáo Crystal "Tải báo cáo không thành công" lỗi chạy báo cáo trên máy chủ
- 18. Tạo báo cáo PDF có biểu đồ nổi
- 19. XSLT trên SSRS báo cáo
- 20. Cách thay thế nhánh chính bằng chi nhánh thí nghiệm
- 21. Tạo báo cáo thử nghiệm HTML với Karma
- 22. Tạo báo cáo từ Dynamodb
- 23. Tạo báo cáo XML thử nghiệm đơn vị Google C++
- 24. Tạo biểu mẫu Jasper Báo cáo PDF từ đối tượng JSON hoặc chuỗi JSON
- 25. Báo cáo dịch vụ báo cáo Thời gian chờ
- 26. Trình tạo báo cáo SSRS - Các vấn đề từ trải nghiệm?
- 27. Intelli-J không thể chạy thử nghiệm spock? (Không thể đính kèm báo cáo thử nghiệm ...)
- 28. JasperBáo cáo đầu ra html và pdf
- 29. Kết hợp các báo cáo thử nghiệm đơn vị từ nhiều dự án Gradle build
- 30. Bảng tổng hợp trong Báo cáo tinh thể?
tôi thử nghiệm nó ngay bây giờ và nó thực sự hoạt động, bao bì bằng lời. Cảm ơn người đàn ông! –
Tôi có một vấn đề sau khi sử dụng này..if dữ liệu dài hơn và có dòng thứ hai để phù hợp trong khi dữ liệu ô khác của tôi cũng bắt đầu từ dòng thứ hai và dòng đầu tiên cho các ô này vẫn trống. bạn có thể giúp đỡ với điều này? Làm cho dữ liệu ô khác của tôi không chuyển sang dòng thứ hai để bắt đầu thay vì –