2009-12-23 3 views
10

Ich benutze Garnelen, um ein PDF zu generieren. Bis jetzt war alles ziemlich geradlinig. Ich habe ein Problem beim Definieren der führenden zwischen Zeilen von Text. Zum Beispiel: wenn ein text_boxWie definiere ich Zeilenhöhe mit Prawn, wenn ich eine PDF in Rails App erzeuge?

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

Dies dem Textfeld generieren, außer ich nicht in der Dokumentation, wie man zu steuern, um den Abstand zwischen den Textzeilen finden. Die Zeichenfolgen, die ich verwenden werde, sind typischerweise 5 bis 8 Zeilen lang.

Vielen Dank im Voraus

+1

ich eine Antwort für Sie nicht haben, aber wenn Sie die Garnelen-Quelle bei Github besuchen, die Beispiele Verzeichnis scheinen ziemlich voll. Sie können es dort finden: http://github.com/sandal/prawn – Telemachus

+0

Es scheint nicht, dass ein Textfeld eine führende Option hat, und Text scheint nicht automatisch Überlauf zu steuern. Ich habe meine eigene für den Überlauf gerollt und die: führende Option auf pdf.text verwendet, um dies zu lösen. –

Antwort

21

Ich weiß, dass dies nicht die perfekte Antwort ist, aber Sie können die führende Option mit pdf.text verwenden (vielleicht gedacht, dass du das schon aus):

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

Vielleicht Sie können dies mit einem Begrenzungsrahmen verwenden wie so:

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

Dies sollte akzeptiert worden sein. Dies ist die perfekte Antwort, vor allem wenn man bedenkt, dass ': leading' negative Werte korrekt akzeptiert. –

Verwandte Themen