2017-01-19 6 views
0

Ist es möglich, die Länge von Text mit jsPDF zu begrenzen?Begrenzte Textausgabe in jsPDF

Bsp .: Ich brauche ein paar Punkte bei jedem Artikel schreiben:

Apples: .............................. $10.00 
Grapefruit: .......................... $20.00 

Mein aktueller Code:

doc.text(x, y, product + ".............................." + value); 

Dies ergibt folgendes Ergebnis:

Apples: .............................. $10.00 
Grapefruit: .............................. $20.00 

Antwort

0

Hier eine Implementierung, um die Punktanzahl "n" zu wiederholen, um die Länge gleich zu machen. Hier habe ich die Länge berechnet und von einer endlichen Länge reduziert und die Anzahl der Punkte mit dem resultierenden Wert addiert.

doc.text(x, y, product + " " + Array(44-(product.length+value.length)).join(".") + " " + value);

+0

Aber ich verwende eine Schriftart nicht fester Größe. – Beetlejuice

+0

Also eine Möglichkeit, dies zu tun, müssen Sie die Breite des Textes messen und die Anzahl der Punkte, wie ich in der Antwort erwähnt, aber dieses Mal basierend auf der Breite des Textes hinzufügen. Zu diesem Zweck gibt es Methoden in jsPDF: 'doc.getStringUnitWidth()' und 'doc.getTextWidth()' [Hier ist der Link zum Thema auf github] (https://github.com/MrRio/jsPDF/ Ausgaben/67) – acesmndr