Frage

ich brauche für eine Ruby on Rails formatierten Text Lieferscheine zu generieren Projekt arbeite ich an. Ich erwäge Ruport verwenden oder einfach nur die Formatierung es selbst in einem String und es zu Text ausgeben. Die einzige Herausforderung rechtfertigt die gesamte Ausgabe entsprechend. Es muss etwas so aussehen, immer korrekt ausgerichtet. Alle Empfehlungen?

Company Name
(T) 1-800-123-1234
(E) info@company.com

BILL TO: CUSTOMER NAME                   SHIP TO: CUSTOMER NAME
123 Some Street                          321 Some Street
Address etc.                             Address etc.

Date: 2010-03-12 16:30
Payment Number: 1234-123456

LN  NAME             SKU           DESCRIPTION             QTY    PRICE      TOTAL
----------------------------------------------------------------------------------
001 Product name     GUDB 012 HGQ  product description     2      52.99     105.98
         - Color
War es hilfreich?

Lösung

Wie FM bereits vorgeschlagen, können Sie sprintf verwenden:

"%10s %-10s %10s" % ['abc', 'def', 'ghi'] # use negative numbers for left alignment
#=> "       abc def               ghi"

Und wenn Sie etwas anspruchsvollere benötigen, versuchen, einige Standard-Template-Engine verwenden, wie erb ...

Andere Tipps

Wenn Ihr Ausgabeformat HTML ist, verwenden Sie CSS ein Druck-Medien Sheet zu machen. Dieses Layout wäre relativ einfach sein, um diese Art und Weise zu machen.

Wenn Sie die Ausgabe Monospace Text, Verwendung Räume Format alles. Sie können verfolgen, wie viel Leerzeichen Sie verwendet haben. Dadurch wird sichergestellt, können Sie einfach die durch Anzahl der Räume auf den nächsten Block einfügen.

EDIT: Ich habe nicht den Kommentar sehen zu benötigen Textdateien bis zu erzeugen, nachdem ich dies schrieb. Ich werde es für ein bisschen verlassen, bevor sie zu löschen, falls sich herausstellt, nützlich zu sein.


Ruport sein Overkill kann. Garnelen ist eine PDF-Writer-Bibliothek vom selben Autor, die sehr leicht und einfach zu bedienen sind. (Viel einfacher als die alte PDF :: Writer Bibliothek dass Ruport Anwendungen. In der Tat schrieb Gregory Brown Garnelen mit dem spezifischen Ziel zu PDF :: Writer in Ruport zu ersetzen.)

Ich erinnere mich noch, dass jemand eine leichte Template-Engine für Garnelen schaffen, aber leider erinnere ich mich nicht, wer das war oder wie es heißt. Aber die Garnelen und Mailinglist IRC-Kanal ist sehr freundlich und hilfsbereit, sie wahrscheinlich wissen.

Da Sie Rails verwenden, können Sie auch in der Prawnto Rails Plugin interessiert sein, die Register Prawn als Ansicht Motor in Rails, und ermöglicht es Ihnen, Ihre PDF-Dateien genau die gleiche Art und Weise Sie machen Ihre HTML zu rendern. Es gibt auch eine Railscast, die deckt Garnelen und Prawnto und ein entsprechender ASCIIcast .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top