@ragaeeb/ocr-js
v2.0.0
Published
Library to OCR documents using 3rd party libraries focusing on Arabic texts
Downloads
104
Readme
Table of Contents
The ocr-js
project simplifies the process of performing OCR on documents sent to 3rd party services like Google Document AI.
ocr-js Usage Guide
This guide explains how to use the exported functions from ocr-js
.
Installation
npm i @ragaeeb/ocr-js
Prerequisites
Node.js (v20 or higher)
Google Cloud account with Document AI
and Cloud Storage
enabled
Service account credentials with necessary permissions.
Configuration
Before using the functions, you need to initialize the configuration:
import { init } from './index';
init({
bucketUri: 'gs://your-bucket-name',
processorId: 'your-processor-id',
processorVersion: 'your-processor-version',
projectId: 'your-project-id',
projectLocation: 'your-project-location',
});
- bucketUri: The URI of your Google Cloud Storage bucket.
- processorId: The ID of your Document AI processor.
- processorVersion: The version of your processor.
- projectId: Your Google Cloud project ID.
- projectLocation: The location of your processor (e.g., us-central1).
Usage
Initialization
Initialize the configuration as shown above before calling any other functions.
Requesting OCR
To request OCR processing for a PDF file:
import { requestOCR } from './index';
const pdfFile = 'path/to/your/file.pdf'; const options = { language: 'en', // Specify language hints };
requestOCR(pdfFile, options) .then((result) => { console.log('OCR request successful:', result); }) .catch((error) => { console.error('Error requesting OCR:', error); });
Retrieving OCR Results
After the OCR processing is complete, retrieve the results:
import { getOCRResult } from './index';
const requestId = 'your-request-id'; // Use the requestId from the requestOCR result
getOCRResult(requestId)
.then((pages) => {
console.log('OCR results:', pages);
})
.catch((error) => {
console.error('Error retrieving OCR results:', error);
});
Contributing
Contributions are welcome! Please submit a pull request or open an issue to discuss changes.
License
This project is licensed under the MIT License.