1.0.6 ⢠Published 4 months ago
ocr-easy v1.0.6
OCR Easy š¼ļøā”ļøš¤
A simple and powerful OCR (Optical Character Recognition) library using Tesseract.js.
⨠Features
ā
Extract text from images, URLs, and Base64
ā
Bulk image processing
ā
Image cropping & enhancement (grayscale, contrast)
ā
Supports multiple languages
ā
Fast & lightweight
š¦ Installation
npm install ocr-easy
š Usage
1ļøā£ Extract text from a local image
const { extractText } = require("ocr-easy");
extractText("test.png", { enhance: true })
.then(text => console.log("Extracted Text:", text))
.catch(err => console.error("Error:", err));
2ļøā£ Extract text from an image URL
extractText("https://example.com/sample-image.png")
.then(text => console.log("Extracted Text:", text))
.catch(err => console.error("Error:", err));
3ļøā£ Extract text from a Base64 image
const base64Image = "data:image/png;base64,iVBORw0KGg...";
extractText(base64Image)
.then(text => console.log("Extracted Text:", text))
.catch(err => console.error("Error:", err));
4ļøā£ Bulk OCR (Multiple Images)
const { extractTextFromMultipleImages } = require("ocr-easy");
extractTextFromMultipleImages(["image1.png", "image2.jpg"], { enhance: true })
.then(results => console.log("Bulk OCR Results:", results))
.catch(err => console.error("Error:", err));
5ļøā£ Extract text from an image with cropping
extractText("image.png", {
crop: { x: 50, y: 50, width: 200, height: 100 }
})
.then(text => console.log("Extracted Text:", text))
.catch(err => console.error("Error:", err));
6ļøā£ Extract text from an image with language selection
extractText("image.png", { lang: "spa" }) // Spanish
.then(text => console.log("Extracted Text in Spanish:", text))
.catch(err => console.error("Error:", err));
š React Usage Example
import React, { useState } from "react";
import { extractText, extractTextFromMultipleImages } from "ocr-easy";
function OCRApp() {
const [image, setImage] = useState(null);
const [text, setText] = useState("");
const handleImageUpload = (event) => {
const file = event.target.files[0];
if (file) {
const reader = new FileReader();
reader.onload = async (e) => {
const base64Image = e.target.result;
const extractedText = await extractText(base64Image, { enhance: true });
setText(extractedText);
};
reader.readAsDataURL(file);
}
};
return (
<div>
<h1>OCR Easy React Demo</h1>
<input type="file" onChange={handleImageUpload} />
<p>Extracted Text:</p>
<textarea value={text} readOnly rows="5" cols="50"></textarea>
</div>
);
}
export default OCRApp;
šŗ Demo Video
Click the image below to watch the React Demo of OCR Easy:
š ļø Options
Option | Type | Default | Description |
---|---|---|---|
lang | String | "eng" | Language for OCR processing (e.g., "spa" , "fra" ) |
enhance | Boolean | false | Apply grayscale & contrast for better OCR results |
crop | Object | null | Crop part of the image { x: 50, y: 50, width: 200, height: 100 } |
š Supported Languages
- English (
eng
) - Spanish (
spa
) - French (
fra
) - German (
deu
) - Hindi (
hin
) - More languages can be added by configuring Tesseract.js.
š License
This project is licensed under the MIT License.
š« Contributing
Pull requests are welcome! Feel free to contribute or report issues.
ā Star this project if you found it useful!