<?php
// echo '<br>******'.file_exists('../vendor/thiagoalessio/tesseract_ocr/src/TesseractOCR.php');

// include_once('../vendor/thiagoalessio/tesseract_ocr/src/TesseractOCR.php');

echo '<br>=======================';
echo '<br>=======================';
echo '<br>=======================';

require 'vendor/autoload.php';
use thiagoalessio\TesseractOCR\TesseractOCR;

// echo (new TesseractOCR('text.png'))
//     ->run();
$imagePath='../orel/imgi/2020106564_52531.png';
$ocr=new TesseractOCR($imagePath);


echo '<br>******'.file_exists('../vendor/thiagoalessio/tesseract_ocr/src/TesseractOCR.php');

// include_once('../vendor/thiagoalessio/tesseract_ocr/src/TesseractOCR.php');


echo '<br>---------';
echo '<br>---------';
echo '<br>---------';
echo '<br>---------';

// Ejecutar Tesseract y obtener el texto
$texto = $ocr->run();

// Mostrar el texto extraído
echo "Texto extraído de la imagen:\n";
echo $texto;


echo '<br>';
echo '<br>';


return;

function getDeclaredNamespaces() {
    $classes = get_declared_classes();
    $namespaces = [];

    foreach ($classes as $class) {
        // Explota el nombre de la clase para obtener el namespace
        if ($pos = strrpos($class, '\\')) {
            $namespace = substr($class, 0, $pos);
            $namespaces[$namespace] = true; // Usa un array asociativo para evitar duplicados
        }
    }

    // Devuelve las claves del array asociativo como array de namespaces únicos
    return array_keys($namespaces);
}

// Usar la función para obtener namespaces
$namespaces = getDeclaredNamespaces();
print_r($namespaces);


return;



$imagePath='../orel/imgi/2020106564_52531.png';




    $app_class = 'thiagoalessio\TesseractOCR\TesseractOCR';
    $file = 'C:/Users/admin/Desktop/im2.jpg';
     $file=$imagePath;
    
    $class = new ReflectionClass($app_class);
    $infoImg = $class->newInstanceArgs();
    $infoImg->lang('eng','jpn','spa','fr');
    $infoImg->image($file);
    $infoImg->withoutTempFiles();
    $resultat = $infoImg->run();
    var_dump($resultat);


// Crear una nueva instancia de TesseractOCR y pasar la ruta de la imagen
$ocr = new TesseractOCR($imagePath);

// Configurar opciones adicionales si es necesario (por ejemplo, idioma)
// $ocr->lang('eng');

// Ejecutar el OCR y obtener el texto
$text = $ocr->run();

// Mostrar el texto extraído
echo "Texto extraído:\n";
echo $text;



return;
     
// echo '<br>******'.file_exists('../_lib/_cias1.txt');
// echo '<br>******'.file_exists('../_lib/thiagoalessio/TesseractOCR/TesseractOCR.php');
echo '<br>******'.file_exists('../thiagoalessio/TesseractOCR/TesseractOCR.php');


// use _lib\thiagoalessio\TesseractOCR\TesseractOCR;
// include_once('../_lib/thiagoalessio/TesseractOCR/TesseractOCR.php');
include_once('../thiagoalessio/TesseractOCR/TesseractOCR.php');


// use tesseract-ocr-for-php-main\src\TesseractOCR;
     
// Ruta a la imagen que deseas procesar
// $imagePath = 'ruta/a/tu-imagen.png';
$imagePath='../orel/imgi/2020106564_52531.png';

// Crear una nueva instancia de TesseractOCR y pasar la ruta de la imagen
$ocr = new TesseractOCR($imagePath);

// Configurar opciones adicionales si es necesario (por ejemplo, idioma)
// $ocr->lang('eng');

// Ejecutar el OCR y obtener el texto
$text = $ocr->run();

// Mostrar el texto extraído
echo "Texto extraído:\n";
echo $text;



return;




     



function obtenerDistanciaPorCarretera($lat1, $lon1, $lat2, $lon2, $apiKey) {
    // URL base de la API de Google Maps Directions
    $url = "https://maps.googleapis.com/maps/api/directions/json?origin=$lat1,$lon1&destination=$lat2,$lon2&key=$apiKey";

    // Realizar la solicitud HTTP a la API
    $response = file_get_contents($url);
    
    // Decodificar la respuesta JSON
    $data = json_decode($response, true);
    
    if($data['status'] == 'OK') {
        // Obtener la distancia en metros
        $distanciaMetros = $data['routes'][0]['legs'][0]['distance']['value'];
        
        // Convertir a kilómetros
        $distanciaKm = $distanciaMetros / 1000;
        
        return $distanciaKm;
    } else {
        return "Error: " . $data['status'];
    }
}

// Ejemplo de uso: coordenadas GPS y clave de API
$lat1 = 40.7128; // Latitud de Nueva York
$lon1 = -74.0060; // Longitud de Nueva York
$lat2 = 34.0522; // Latitud de Los Ángeles
$lon2 = -118.2437; // Longitud de Los Ángeles
$apiKey = 'TU_CLAVE_DE_API_GOOGLE_MAPS';

$distancia = obtenerDistanciaPorCarretera($lat1, $lon1, $lat2, $lon2, $apiKey);

echo "La distancia por carretera es de " . $distancia . " kilómetros.";

?>