react-native-harvard-inner-printer

1.0.1 • Public • Published

react-native-harvard-inner-printer

(React native plugin Referring the Harvard by Advan printer document and demos)

Caution: this is not the official project. I share it because I am working on this device but no any official support in react-native It's welcome to ask any question about the usage,problems or feature required, I will support ASAP.

Installation:

Step 1.

install with npm: Check in NPM

npm install react-native-harvard-harvard-printer --save

or you may need to install via the clone address directly:

Step 2:

Links this plugin to your project.

react-native link react-native-harvard-inner-printer

or you may need to link manually

  • modify settings.gradle
include ':react-native-harvard-inner-printer'
project(':react-native-harvard-inner-printer').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-harvard-inner-printer/android')
  • modify app/build.gradle,add dependenceie:
compile project(':react-native-harvard-inner-printer')
  • adds package references to MainPackage.java
import com.harvard.innerprinter.HarvardInnerPrinterPackage;
...

 @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
          new MainReactPackage(),
            new HarvardInnerPrinterPackage()
      );
    }

Step 3:

refer in the javascript:

import HarvardInnerPrinter from 'react-native-harvard-inner-printer';

Usage & Demo:

See examples folder of the source code that you can find a simple example of printing receipt. // TODO

API

Example

import React, { Component } from 'react';
import { View, Text } from 'react-native';
import HarvardInnerPrinter from 'react-native-harvard-inner-printer';

class PrinterComponent extends Component {

    _printData() {
        const ALIGN_CENTER  = 0;
        const ALIGN_LEFT = 1;
        const ALIGN_RIGHT = 2;
        const SHOW_TEXT_BARCODE = true;
        const HIDE_TEXT_BARCODE = false;

        result = await HarvardInnerPrinter.printImage(logo, ALIGN_CENTER);
        result = await HarvardInnerPrinter.setFontSize(40);

        result = await HarvardInnerPrinter.PrintText("STRUK BELANJA", ALIGN_CENTER);
        result = await HarvardInnerPrinter.setFontSize(30);
        result = await HarvardInnerPrinter.PrintText("TOKO ANDROID BERKEMBANG", ALIGN_CENTER);
        result = await HarvardInnerPrinter.PrintOriginalText("================================");
        result = await HarvardInnerPrinter.setFontSize(25);
        result = await HarvardInnerPrinter.setBold(1);
        result = await HarvardInnerPrinter.PrintColumnText(["SEMEN NUSANTARA","1","50.000"],[18, 5, 11], [ ALIGN_LEFT, ALIGN_CENTER, ALIGN_CENTER]);
        result = await HarvardInnerPrinter.PrintColumnText(["PAKU BAJA","1","1.500"],[18, 5, 11], [ ALIGN_LEFT, ALIGN_CENTER, ALIGN_CENTER]);
        result = await HarvardInnerPrinter.PrintColumnText(["PASIR MUNTILAN","1","5.000"],[18, 5, 11], [ ALIGN_LEFT, ALIGN_CENTER, ALIGN_CENTER]);
        result = await HarvardInnerPrinter.setBold(0);
        result = await HarvardInnerPrinter.PrintOriginalText("================================");
        result = await HarvardInnerPrinter.printQRCode("http://mkpmobile.com", 100, ALIGN_CENTER);
        result = await HarvardInnerPrinter.PrintText(" ", ALIGN_CENTER)
        result = await HarvardInnerPrinter.printBarCode("123456", 200,50, ALIGN_CENTER, HIDE_TEXT_BARCODE);
        result = await HarvardInnerPrinter.setFontSize(15);
        result = await HarvardInnerPrinter.PrintText("MEMBELI BERARTI SETUJU DENGAN", ALIGN_CENTER);
        result = await HarvardInnerPrinter.PrintText("SEGALA PERSYARATAN DARI TOKO KAMI", ALIGN_CENTER);
        result = await HarvardInnerPrinter.PrintText("BARANG RUSAK TIDAK BERGARANSI", ALIGN_CENTER);
        result = await HarvardInnerPrinter.PrintOriginalText("\n\n");
    }

    render() {
        return (
            <View>
                <Text  onPress={()=>{_printData()}}>Print Data</Text>
            </View>
        )
    }
}

Readme

Keywords

Package Sidebar

Install

npm i react-native-harvard-inner-printer

Weekly Downloads

3

Version

1.0.1

License

ISC

Unpacked Size

35.5 kB

Total Files

14

Last publish

Collaborators

  • themuhaimin