Giter VIP home page Giter VIP logo

ocr-space's Introduction

Laravel OCR.space API

Work in progress License: MIT

Laravel (or just plain PHP) class for calling https://ocr.space/ free API

This package provides an independent implementation of an OCR.space API client for Laravel (or PHP) applications

OCR.API is a free/paid API for the OCR.space online service that converts images of text documents in text strings using OCR technologies

Requirements

  • PHP >= 5.6.4
  • A valid key from OCR API (registration needed)

Installation

To get OCR.space API just use the require command of composer or edit manually your composer.json, adding the require block (then you should run composer update):

$ composer require jfuentestgn/ocr-space
{
    "require": {
        "jfuentestgn/ocr-space": "dev-master"
    }
}

After install the package, if you want to use it in a Laravel application, you should register the service provider. Add the OcrServiceProvider class to the list of providers in config/app.php:

  'providers' => [
    ....
    JFuentesTgn\OcrSpace\OcrServiceProvider::class,
    ...
    ]

If you want to use the Facade version of the service, you could add an alias in config/app.php:

  'aliases' => [
    ....
    'OCR' => JFuentesTgn\OcrSpace\OcrFacade::class, 
    ...
    ]

Configuration

This package requires an API key to work. First of all, register in the OCR API site to get a valid KEY

Publish vendor assets to get a local copy of the config file:

$ php artisan vendor:publish --provider=JFuentesTgn\\OcrSpace\\OcrServiceProvider

This will create a config/ocrspace.php file in your app. Edit this file and update the API key configuration property

Usage

In Laravel, you can use the OcrAPI class service as any other injected service. As an exemple:

use JFuentesTgn\OcrSpace\OcrAPI;

class TestController extends Controller 
{

  public function processImage(Request $request, OcrAPI $ocr)
  {
    // You can use the $ocr instance to call OCR.space web service
    $response = $ocr->parseImageFile($imageFile);
  }
}

If you prefer to use the facade interface, you can do just this:

  $response = OCR::parseImageFile($imageFile);

Laravel is not a requirement for this package. If you need to use it outside a Laravel app, you can just create an instance of the API as with any other class:

  $ocr = new OcrAPI($apiKey);
  $response = $ocr->parseImageFile($imageFile);

In this case you MUST pass your API key as a parameter to the constructor

The response (JFuentesTgn\OcrSpace\OcrResponse) object returned by the OcrAPI methods maps JSON response from OCR.space online service in an object oriented way.

This is an example of how to read the service response:

$image = 'snap_005.jpg';
$response = $ocr->parseImageFile($image);
if ($response->length() == 1) {
  $text = $response->items(0)->text();
}

Credits

This package is maintained by Juan Fuentes

OCR.space is a service of a9t9 software GmbH. They are also in github

This package is an independent development that is in no way linked to a9t9 software. I want to acknowledge a9t9 for put this OCR service online

License

Laravel OCR.space API is licensed under The MIT License (MIT).

ocr-space's People

Contributors

jfuentestgn avatar

Watchers

Sébastien Hordeaux avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.