1.0.6 • Published 4 months ago

ocr-easy v1.0.6

Weekly downloads
-
License
MIT
Repository
github
Last release
4 months ago

OCR Easy šŸ–¼ļøāž”ļøšŸ”¤

A simple and powerful OCR (Optical Character Recognition) library using Tesseract.js.

npm License Downloads


✨ 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:

Watch the Demo


šŸ› ļø Options

OptionTypeDefaultDescription
langString"eng"Language for OCR processing (e.g., "spa", "fra")
enhanceBooleanfalseApply grayscale & contrast for better OCR results
cropObjectnullCrop 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!


1.0.6

4 months ago

1.0.5

4 months ago

1.0.4

4 months ago

1.0.3

4 months ago

1.0.2

4 months ago

1.0.1

4 months ago

1.0.0

4 months ago