UNPKG

react-native-harvard-inner-printer

Version:

modul for harvard by advan

123 lines (89 loc) 4.21 kB
# 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](https://www.npmjs.com/package/react-native-harvard-inner-printer) ```bash 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. ```bash react-native link react-native-harvard-inner-printer ``` or you may need to link manually * modify settings.gradle ```javascript 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: ```javascript compile project(':react-native-harvard-inner-printer') ``` * adds package references to MainPackage.java ```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: ```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 ```javascript 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> ) } } ```