Оболочка tesseract-php с ошибкой пути при работе на localhost - PullRequest
0 голосов
/ 13 октября 2018

Так что я использую обёртку tesseract-php, приведённую здесь https://github.com/thiagoalessio/tesseract-ocr-for-php. Вот как выглядит мой php-код:

<?php
require_once "vendor/autoload.php";
use thiagoalessio\TesseractOCR\TesseractOCR;
echo (new TesseractOCR('image1.jpeg'))->run();
?>

При запуске через cmd он работает просто отлично.Тем не менее, при попытке запустить на сервере xampp, я получаю эту ошибку

Fatal error: Uncaught thiagoalessio\TesseractOCR\TesseractNotFoundException: 
Error! The command "tesseract" was not found. Make sure you have Tesseract 
OCR installed on your system: https://github.com/tesseract-ocr/tesseract The 
current $PATH is C:\ProgramData\Oracle\Java\javapath;C:\Program Files 
(x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\Program 
Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program 
Files\Java\jdk1.8.0_151\bin;C:\Program Files\Git\
in C:\xampp\htdocs\tesseract_project\vendor\thiagoalessio\tesseract_ocr\src\FriendlyErrors.php on line 42

Я прочитал несколько ответов здесь, и оказывается, что добавление этого поможет

$path = getenv('PATH');
putenv("PATH=$path:C:\Program Files (x86)\Tesseract-OCR");

Однако,нет никаких изменений, и я все еще получаю ту же ошибку.Что-то я делаю не так?

1 Ответ

0 голосов
/ 07 июня 2019

УСТАНОВИТЕ TESSERACT В ВАШУ СИСТЕМУ. Затем определите пользовательское расположение исполняемого файла tesseract, если по какой-либо причине его нет в $ PATH.

->executable('/path/to/tesseract')
->run();
...