2012-04-11 24 views
7

Hücre metninin harflerle değil, kelimelerle sarıldığı bir karides tablosu oluşturmak istiyorum. Zaten shrink_to_fit kullanıyorum, ama karides harfleri dayalı sarma gibi görünüyor. İdeal olarak tek kelimeyle sarmak istiyorum (hücre başına 2-3 kelime olabileceğinden single_line bir seçenek değildir).Karides Masasında Kelimelerle Nasıl Sarılır

Bunu nasıl yapacağını bilen var mı?

cevap

3

Belki de tablonuz tek bir masa hücresi için çok uzun olan kelimeler içeriyor mu? Bildiğim kadarıyla, Karides masalarındaki masa hücreleri, metni otomatik olarak sarması gereken sınırlayıcı kutuları kullanır. Aşağıdaki örnek benim için çalışıyor:

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 

şey çalışırsa

, sen birden ile kendi tablo bina text_box çağrılar yerine kullanarak deneyebilirsiniz dahili Prawn table method, bu tabii ki biraz hantal. text_box, istenen metni bir kutuya çizer. :overflow parametresi, metin miktarı kullanılabilir alanı aştığında davranışı kontrol eder, kullanılabilir seçenekler :truncate, :shrink_to_fit veya :expand'dur. Eğer 'data = [[' Pig geçerseniz

text_box(txt, :at => [x,y], :width => width, :height => height, :size => size, 
       :overflow => :shrink_to_fit,..) 
+0

Merhaba, '* 10],' verilerinizin ilk satırında, göreceksiniz Hoşgeldin '' :) cevap için teşekkür ederim sen misin Benim aldığım aynı sorunu alacak. 'Orada' kelimesi yanlış bir şekilde sarılmıştır. Ayrıca text_box'a daha yakından bakacağım, yine de cevabın için teşekkür ederim, +1. – Spyros

+1

Ben de soruda belirtildiği gibi, shrink_to_fit kullanıyorum, ama bu her karakter için değil, her kelime başına yapar, bu hemen hemen tüm sorun hakkındadır. – Spyros

İlgili konular