1.2.0 • Published 6 years ago

ng4-fittext v1.2.0

Weekly downloads
19
License
ISC
Repository
github
Last release
6 years ago

ng4-fittext

Angular4 directive (typescript) to do what fittext.js did when jquery was cool.

Basically, This auto-scales the font size to fit the width of it's container.

Demo

coming soon

Installation

Install the library

$ npm install --save ng4-fittext

Usage

Import it in your Angular4 project like a module

1) Declare it in your module

```bash
import {Ng4FittextModule} from 'ng4-fittext';
@NgModule({
  imports: [
    Ng4FittextModule
  ]
})

```

2) Use it in your components

**The element that contains this directive should have a CSS width!**
```bash

import {Component} from '@angular/core';

@Component({
  selector: 'hero',
  template: `<div #heroContainer class="hero">
                <h1 [fittext]
                    [activateOnResize]="true" 
                    [container]="heroContainer"
                    [minFontSize]="16"
                    [maxFontSize]="200"
                    [compression]="1.2">
                    RESIZE THIS TEXT
                </h1>
            </div>`
})

export class HeroComponent {}
```

Parameters:

ParameterDescriptionValues
[fittext] (required)Selector for the directive. It accepts a boolean value but defaults true. You can disable the directive for this element by passing in false. But why? just remove it to disable.boolean (default true)
[container] (required)Your fittext elements parent. Must be a divElementRef (<div>)
[activateOnResize] (optional)enable/disable the auto-scale in case of window resizeboolean (default true)
[compression] (optional)compression rate. How fast should the text resizenumber (default 1)
[minFontSize] (optional)minimum font size allowed on elementnumber (default -infinity)
[maxFontSize] (optional)maximum font size allowed on elementnumber (default bitSize limit)

Development

Want to contribute? Great! Simply, clone the repository!

fittext.js was pretty useful up until nobody liked jquery anymore. There was an existing ng-1 lib and a sketchy ng-2 directive. This should take care of ng-4+.

Todos

  • Write tests

License

ISC

- Rich