Skip to content

Instantly share code, notes, and snippets.

@Purush0th
Last active November 23, 2020 18:47
Show Gist options
  • Star 11 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save Purush0th/7fe8665bbb04482a0d80 to your computer and use it in GitHub Desktop.
Save Purush0th/7fe8665bbb04482a0d80 to your computer and use it in GitHub Desktop.
Text alignment for jsPDF 💥
(function (api, $) {
'use strict';
api.writeText = function (x, y, text, options) {
options = options || {};
var defaults = {
align: 'left',
width: this.internal.pageSize.width
}
var settings = $.extend({}, defaults, options);
// Get current font size
var fontSize = this.internal.getFontSize();
// Get the actual text's width
/* You multiply the unit width of your string by your font size and divide
* by the internal scale factor. The division is necessary
* for the case where you use units other than 'pt' in the constructor
* of jsPDF.
*/
var txtWidth = this.getStringUnitWidth(text) * fontSize / this.internal.scaleFactor;
if (settings.align === 'center')
x += (settings.width - txtWidth) / 2;
else if (settings.align === 'right')
x += (settings.width - txtWidth);
//default is 'left' alignment
this.text(text, x, y);
}
})(jsPDF.API, jQuery);
@Josloader3
Copy link

Thank you

@kedar9444
Copy link

can i get typescript version of the same ?

@borisBelloc
Copy link

borisBelloc commented Mar 23, 2020

any infos somewhere about how to use this pluggin with jspdf inside angular ?

@maggieeee87
Copy link

This is AWESOME! Thank you so much

@FastLogic1
Copy link

how I show Textfiled value in the center

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment