2009-12-23 5 views
10

Tôi đang sử dụng tôm để tạo pdf. Cho đến nay tất cả mọi thứ đã được khá thẳng về phía trước. Tôi đang gặp sự cố khi xác định hàng đầu giữa các dòng văn bản. Ví dụ: khi sử dụng một text_boxLàm cách nào để xác định chiều cao dòng với Prawn khi tạo pdf trong ứng dụng đường ray?

pdf.text_box "Ipsum dolor sit amet consectetue?", 
    :width => pdf.bounds.width - 10, :height => 150, 
    :overflow => :ellipses 

Điều này sẽ tạo ra các hộp văn bản ngoại trừ tôi không thể tìm thấy trong các tài liệu về cách kiểm soát khoảng cách giữa các dòng văn bản. Các chuỗi tôi sẽ sử dụng thường dài từ 5 đến 8 dòng.

Cảm ơn bạn trước

+1

Tôi không có câu trả lời cho bạn, nhưng nếu bạn truy cập nguồn Prawn tại Github, thư mục ví dụ có vẻ hợp lý đầy đủ. Bạn có thể tìm thấy nó trong đó: http://github.com/sandal/prawn – Telemachus

+0

Dường như hộp văn bản có tùy chọn hàng đầu và văn bản dường như không tự động kiểm soát tràn. Tôi đã cuộn của riêng tôi cho tràn và sử dụng các tùy chọn: hàng đầu trên pdf.text để giải quyết điều này. –

Trả lời

21

Tôi biết đây không phải là câu trả lời hoàn hảo, nhưng bạn có thể sử dụng tùy chọn hàng đầu với pdf.text (có thể bạn figured này ra đã):

sometext = "My big long string\ncovering multiple lines" 
pdf.text sometext, :size => 10, :leading => 5 

lẽ bạn có thể sử dụng hộp này với một hộp giới hạn như vậy:

pdf.bounding_box([270,650], :width=>270, :height=>250) do 
    pdf.text sometext, :size => 10, :leading => 5 
end 
+0

Điều này đáng lẽ phải được chấp nhận. Đây là câu trả lời hoàn hảo đặc biệt là xem xét rằng ': hàng đầu' chấp nhận giá trị âm một cách chính xác. –