Có thể bảng của bạn chứa các từ quá dài cho một ô bảng duy nhất? Theo như tôi biết, các ô bảng trong các bảng Prawn sử dụng các hộp giới hạn để tự động quấn văn bản. Ví dụ sau hoạt động tốt đối với tôi:
Prawn::Document.generate 'example.pdf' do
data = [['Pig','Oink '*10],
['Cow','Moo '*10],
['Duck','Quack '*10]]
table data do |table|
table.column_widths = [50,150]
end
end
Nếu không có gì hoạt động, bạn có thể thử xây dựng bảng của riêng bạn với nhiều text_box cuộc gọi thay vì sử dụng được xây dựng trong Prawn table method, đây là tất nhiên một chút rườm rà. text_box
vẽ văn bản được yêu cầu vào một hộp. Thông số :overflow
kiểm soát hành vi khi lượng văn bản vượt quá dung lượng còn trống, các tùy chọn có sẵn là :truncate
, :shrink_to_fit
hoặc :expand
.
text_box(txt, :at => [x,y], :width => width, :height => height, :size => size,
:overflow => :shrink_to_fit,..)
Xin chào, cảm ơn bạn đã trả lời :) Nếu bạn thay đổi thành 'data = [[' Pig ',' Hello There '* 10]', trong dòng đầu tiên của dữ liệu, bạn sẽ thấy bạn sẽ nhận được cùng một vấn đề mà tôi đang nhận được. Từ 'có' được bọc không chính xác. Tôi cũng sẽ xem xét kỹ hơn về text_box ngay bây giờ, cảm ơn bạn đã trả lời, +1. – Spyros
Như tôi cũng nêu trong câu hỏi, tôi đã sử dụng shrink_to_fit, nhưng điều này không cho mỗi nhân vật và không phải mỗi gói từ, đó là khá nhiều những gì toàn bộ vấn đề là về. – Spyros