ngx-ruler

An Angular Ruler component that can draw grids and scroll infinitely.

Usage no npm install needed!

<script type="module">
  import ngxRuler from 'https://cdn.skypack.dev/ngx-ruler';
</script>

README

NgxRulerApp

An Angular Ruler component that can draw grids and scroll infinitely.

⚙️ Installation

npm

$ npm i ngx-ruler

🚀 How to use

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { NgxRulerComponent, NgxRulerModule } from 'ngx-rulder';

@NgModule({
  declarations: [
    AppComponent,
    NgxRulerComponent,
  ],
  imports: [
    BrowserModule,
    // NgxRulerModule,
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

Template

<ngx-ruler
  [type]="type"
  [width]="width"
  [height]="height"
  [unit]="unit"
  [zoom]="zoom"
  [style]="style"
  [backgroundColor]="backgroundColor"
  [lineColor]="lineColor"
  [textColor]="textColor"
  [direction]="direction"
/>

export interface RulerInterface {
    scroll(scrollPos: number): any;
    resize(): any;
}

export interface RulerProps {
    type?: "horizontal" | "vertical";
    width?: number;
    height?: number;
    unit?: number;
    zoom?: number;
    direction?: "start" | "end";
    style?: IObject<any>;
    backgroundColor?: string;
    lineColor?: string;
    textColor?: string;
    textFormat?: (scale: number) => string;
}


Development server

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via Protractor.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.