2011-01-05 3 views
12

Das ist, was ich bisher habe, aber ich brauche die Margen zu setzen:Wie setze ich Ränder in Prawn in Rubin?

def send_fax 
    contact = Contact.find_by_id(self.contact_id) 

    pdf = Prawn::Document.new 
    pdf.font "Times-Roman" 
    pdf.move_down(20) 
    pdf.text "ATTN: #{contact.first_name} #{contact.last_name}", :size => , :style => :bold 
    pdf.text "RE: #{self.subject}" 
    pdf.move_down(20) 

    pdf.text "#{self.body}" 

    OutboundMailer.deliver_fax_email(contact, self, pdf) 

    end 
+0

Es ist erwähnenswert, dass Sie speziell Seitenränder einstellen möchten. – Tass

Antwort

18

Prawn::Document.new(:margin => [0,0,0,0])

:margin: Sets the margin on all sides in points [0.5 inch] 
:left_margin: Sets the left margin in points [0.5 inch] 
:right_margin: Sets the right margin in points [0.5 inch] 
:top_margin: Sets the top margin in points [0.5 inch] 
:bottom_margin: Sets the bottom margin in points [0.5 inch] 

http://rdoc.info/github/sandal/prawn/master/Prawn/Document

+0

danke, ich konnte den Anweisungen nicht folgen, du hast es viel klarer gemacht – Angela

+0

Wie hast du das herausgefunden, habe ich das Dokument überprüft und kann immer noch nicht sehen, was zu tun ist ... sollte ich einfach setzen: margin => [ 0.5,0.5,0.5,0.5] wenn es rundum 0,5 Zoll ist? Muss ich Zoll verwenden? [0,5 Zoll]? – Angela

+4

'[0,5 Zoll]' ist die Standardeinstellung für das angegebene Attribut. Wenn Sie also nicht explizit einen Wert für ": margin" festlegen, wird dieser standardmäßig auf allen 4 Seiten auf einen halben Zoll gesetzt. Wenn Sie einen der Standardwerte überschreiben möchten, sollten Sie eine Zahl angeben, die der Anzahl der gewünschten Punkte entspricht. Es gibt 72 Punkte pro Zoll. Es ist ein wenig verwirrend, da der Standardwert in Zoll angegeben wird, während Sie den Wert in Punkten festlegen. Es kann sinnvoller sein, wenn Sie sich den Standardwert als "[36 Punkte]" vorstellen. –

4

Gerade hier, um das Pantheon des Wissens hinzufügen, aber falls Sie kam hierher, um dies mit dem Prawn-Label-Juwel zu machen, Sie können den Dokumentenrand nicht auf diese Weise einstellen. Du musst eine Arbeit erledigen. Hier ist ein schnelles und flexibles Snippet zum Erstellen einer Bounding-Box mit einem einheitlichen Pad, das in der Dokument-Bounding-Box sitzt.

pad = 5 

pdf.bounding_box([pad, pdf.bounds.height - pad], :width => pdf.bounds.width - (pad * 2), :height => pdf.bounds.height - (pad * 2)) do 
    #Draw all your content in this block and it will be padded uniformly by 5 
end 

Entfernen Sie die pdf von .bounding_box und .bounds, wenn Sie eine implizite Version von Garnelen verwenden.

Verwandte Themen