Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

adaptable-text

Package Overview
Dependencies
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

adaptable-text - npm Package Compare versions

Comparing version 0.1.1 to 0.1.2

16

dist/jquery.adaptable-text.js
/*
* Adaptable Text - v0.1.0
* Adaptable Text - v0.1.2
*
* Copyright (c) Damien Seguin - https://github.com/dmnsgn
*
* Adapt font size to fit text in element.
* Adapt font size to fit text in element (WIP)
*

@@ -54,6 +54,10 @@ * MIT

var textWidth;
this.text = this.element.value;
this.text = this.element.value || this.element.textContent;
textWidth = this._getTextWidth(this.text, this.styles.fontStyle + " " + this.currentFontSize + "px " + this.styles.fontFamily);
this.previousFontSize = this.currentFontSize;
this._checkSize();
this.element.style.fontSize = this.currentFontSize + "px";
if (this.previousFontSize !== this.currentFontSize) {
this.currentFontSize = ~~(this.currentFontSize * 100) / 100;
this.element.style.fontSize = this.currentFontSize + "px";
}
};

@@ -112,5 +116,5 @@

AdaptableText.prototype._calculateMaxCharWidth = function(text, font) {
AdaptableText.prototype._calculateMaxCharWidth = function() {
var char, charWidth, chars, len;
chars = 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM'.split('');
chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefhijklmnopqrstuvwxyz0123456789!?*()@£$%^&_-+=[]{}:;\'"\\|<>,./~`'.split('');
len = chars.length;

@@ -117,0 +121,0 @@ while (len--) {

/*
* Adaptable Text - v0.1.0
* Adaptable Text - v0.1.2
*
* Copyright (c) Damien Seguin - https://github.com/dmnsgn
*
* Adapt font size to fit text in element.
* Adapt font size to fit text in element (WIP)
*
* MIT
*/
(function(){!function(a,b,c){var d,e,f;return f="adaptableText",e={minFontSize:15},d=function(){function d(b,c){this.element=b,this.settings=a.extend({},e,c),this._defaults=e,this._name=f,this.init()}return d.prototype.init=function(){this.reset(),this.adapt()},d.prototype.reset=function(){this.elementWidth=this.element.offsetWidth,this.styles=b.getComputedStyle(this.element),this.currentFontSize=+this.styles.fontSize.replace("px",""),this.initialFontsize=this.currentFontSize,this.maxCharWidth=0,this._calculateMaxCharWidth()},d.prototype.adapt=function(){var a;this.text=this.element.value,a=this._getTextWidth(this.text,this.styles.fontStyle+" "+this.currentFontSize+"px "+this.styles.fontFamily),this._checkSize(),this.element.style.fontSize=this.currentFontSize+"px"},d.prototype._checkSize=function(){var a;(a=this._getTextWidth(this.text,this.styles.fontStyle+" "+this.currentFontSize+"px "+this.styles.fontFamily)<this.elementWidth-this.maxCharWidth?function(b){return function(){var c;return c=b._getTextWidth(b.text,b.styles.fontStyle+" "+b.currentFontSize+"px "+b.styles.fontFamily),b._getTextWidth(b.text,c)<b.elementWidth-b.maxCharWidth&&b.currentFontSize<b.initialFontsize?(b.currentFontSize+=.1,a()):void 0}}(this):function(b){return function(){var c;return c=b._getTextWidth(b.text,b.styles.fontStyle+" "+b.currentFontSize+"px "+b.styles.fontFamily),b._getTextWidth(b.text,c)>b.elementWidth-b.maxCharWidth&&b.currentFontSize>b.settings.minFontSize?(b.currentFontSize-=.1,a()):void 0}}(this))()},d.prototype._getTextWidth=function(a,b){var d,e,f;return d=this.canvas||(this.canvas=c.createElement("canvas")),e=d.getContext("2d"),e.font=b,f=e.measureText(a),f.width},d.prototype._calculateMaxCharWidth=function(){var a,b,c,d;for(c="qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM".split(""),d=c.length;d--;)a=c[d],b=this._getTextWidth(a,this.styles.fontStyle+" "+this.styles.fontSize+" "+this.styles.fontFamily),b>this.maxCharWidth&&(this.maxCharWidth=b)},d}(),a.fn[f]=function(b){return this.each(function(){return a.data(this,""+f)?void 0:a.data(this,""+f,new d(this,b))})}}(jQuery,window,document)}).call(this);
(function(){!function(a,b,c){var d,e,f;return f="adaptableText",e={minFontSize:15},d=function(){function d(b,c){this.element=b,this.settings=a.extend({},e,c),this._defaults=e,this._name=f,this.init()}return d.prototype.init=function(){this.reset(),this.adapt()},d.prototype.reset=function(){this.elementWidth=this.element.offsetWidth,this.styles=b.getComputedStyle(this.element),this.currentFontSize=+this.styles.fontSize.replace("px",""),this.initialFontsize=this.currentFontSize,this.maxCharWidth=0,this._calculateMaxCharWidth()},d.prototype.adapt=function(){var a;this.text=this.element.value||this.element.textContent,a=this._getTextWidth(this.text,this.styles.fontStyle+" "+this.currentFontSize+"px "+this.styles.fontFamily),this.previousFontSize=this.currentFontSize,this._checkSize(),this.previousFontSize!==this.currentFontSize&&(this.currentFontSize=~~(100*this.currentFontSize)/100,this.element.style.fontSize=this.currentFontSize+"px")},d.prototype._checkSize=function(){var a;(a=this._getTextWidth(this.text,this.styles.fontStyle+" "+this.currentFontSize+"px "+this.styles.fontFamily)<this.elementWidth-this.maxCharWidth?function(b){return function(){var c;return c=b._getTextWidth(b.text,b.styles.fontStyle+" "+b.currentFontSize+"px "+b.styles.fontFamily),b._getTextWidth(b.text,c)<b.elementWidth-b.maxCharWidth&&b.currentFontSize<b.initialFontsize?(b.currentFontSize+=.1,a()):void 0}}(this):function(b){return function(){var c;return c=b._getTextWidth(b.text,b.styles.fontStyle+" "+b.currentFontSize+"px "+b.styles.fontFamily),b._getTextWidth(b.text,c)>b.elementWidth-b.maxCharWidth&&b.currentFontSize>b.settings.minFontSize?(b.currentFontSize-=.1,a()):void 0}}(this))()},d.prototype._getTextWidth=function(a,b){var d,e,f;return d=this.canvas||(this.canvas=c.createElement("canvas")),e=d.getContext("2d"),e.font=b,f=e.measureText(a),f.width},d.prototype._calculateMaxCharWidth=function(){var a,b,c,d;for(c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefhijklmnopqrstuvwxyz0123456789!?*()@£$%^&_-+=[]{}:;'\"\\|<>,./~`".split(""),d=c.length;d--;)a=c[d],b=this._getTextWidth(a,this.styles.fontStyle+" "+this.styles.fontSize+" "+this.styles.fontFamily),b>this.maxCharWidth&&(this.maxCharWidth=b)},d}(),a.fn[f]=function(b){return this.each(function(){return a.data(this,""+f)?void 0:a.data(this,""+f,new d(this,b))})}}(jQuery,window,document)}).call(this);
{
"name": "adaptable-text",
"title": "Adaptable Text",
"version": "0.1.1",
"version": "0.1.2",
"description": "Adapt font size to fit text in element (WIP)",

@@ -6,0 +6,0 @@ "keywords": [

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc