1. Termékek
  2.   OCR
  3.   JavaScript
  4.   Scribe.js
 
  

Nyílt forráskódú OCR JavaScript API kereshető PDF-ek létrehozásához

Vezető JavaScript OCR könyvtár kereshető PDF-ek létrehozásához, amely OCR-t (Optikai karakterfelismerés) végez, és szöveget nyer ki mind képekből (PNG, JPEG), mind PDF-fájlokból.

Mi az a Scribe.js?

A mai digitális világban hatalmas mennyiségű értékes információ rekedt a képekben – hibajelzések képernyőképei, dokumentumok fényképei, egy prezentáció diái, vagy akár okos szöveggel ellátott mémek. Ennek a szövegnek a kézi átírása fáradságos és hibára hajlamos folyamat. Itt jön képbe az optikai karakterfelismerés (OCR) technológia, és a Scribe.js az egyik legfejlesztőbarátabb módot kínálja, hogy beépítsük azt webes projektjeinkbe. A Scribe.js egy nyílt forráskódú JavaScript könyvtár, amely OCR-t hajt végre, és szöveget nyer ki képekből és PDF-fájlokból egyaránt. A sok OCR megoldással ellentétben, amelyek backend feldolgozást vagy külső API hívásokat igényelnek, a Scribe.js teljesen a kliens oldalon fut, így teljes kontrollt ad az adatok felett, és megszünteti a szerverköltségeket a szövegfelismerési feladatokhoz.

A Scribe.js egy könnyű JavaScript kliens a Google Cloud Vision API-hoz. Minden OCR művelet közvetlenül a felhasználó böngészőjében vagy a Node.js környezetedben történik, biztosítva a magánszférát és csökkentve a szerver infrastruktúra költségeit. A könyvtár támogatja a különféle funkciókat, például a képek előfeldolgozását, egységes munkafolyamatot a képekhez, automatikus detektálást, PDF rétegezést, alacsony bizalmi szintű oldalak kiszűrését, OCR motorok gyorsítótárazását és így tovább. A könyvtár modern JavaScript ESM (ECMAScript Modules) használatával készült, ami egyszerűvé teszi a beillesztést a korszerű webfejlesztési munkafolyamatokba anélkül, hogy összetett build konfigurációkra lenne szükség. Ez a fejlesztőközpontú megközelítés azt jelenti, hogy néhány sor kóddal már elkezdheted a szöveg kinyerését a dokumentumokból.

Previous Next

A Scribe.js használatának megkezdése

A Scribe.js telepítésének ajánlott módja az npm használata. Kérlek, használd a következő parancsot a zökkenőmentes telepítéshez.

Telepítse a Scribe.js-t npm-en keresztül

 npm install scribe.js-ocr 

Telepítheted manuálisan is; töltsd le a legújabb kiadási fájlokat közvetlenül a GitHub tárolóból.

Szövegfelismerés képekből

A Scribe.js könyvtár legfontosabb felhasználási esete a szöveg kinyerése képfájlokból. A könyvtár különböző képformátumokat kezel, és képes egyszerre egyetlen képet vagy több képből álló kötegelt feldolgozni. Itt egy alapvető példa, amely bemutatja a szöveg kinyerését egy képadresszből JavaScript alkalmazásokban. A kódrészlet a Scribe.js által biztosított egyszerű API-t mutatja be. Az extractText metódus egy képadresszek tömbjét fogadja, és egy Promise-t ad vissza, amely a felismert szöveggel teljesül.

Hogyan lehet szöveget kinyerni egy képből JavaScript könyvtár segítségével?

import scribe from 'scribe.js-ocr';

// Extract text from a single image
scribe.extractText(['https://example.com/sample-image.png'])
  .then((result) => {
    console.log('Extracted text:', result);
  })
  .catch((error) => {
    console.error('OCR failed:', error);
  });

Kereshető PDF-ek létrehozása JavaScript segítségével

A Scribe.js egyik legnagyobb teljesítményű funkciója, hogy képes láthatatlan szövegrétegeket hozzáadni meglévő PDF-fájlokhoz. Ez a funkció a képalapú PDF-eket kereshető dokumentumokká alakítja át anélkül, hogy megváltoztatná a megjelenésüket. Amikor egy szövegréteg kerül hozzáadásra egy PDF-hez, a felhasználók kereshetnek konkrét szavakat vagy kifejezéseket a dokumentumban, kijelölhetik és másolhatják a szöveget, amely látszólag egy kép, használhatnak képernyőolvasókat és akadálymentesítő eszközöket a beolvasott dokumentumokkal, lehetővé tehetik a keresőmotorok és dokumentumkezelő rendszerek általi indexelést, stb.

Hogyan hozhatunk létre kereshető PDF dokumentumokat JavaScript könyvtár segítségével?

import scribe from 'scribe.js-ocr';

// Add searchable text layer to an image-based PDF
async function makeSearchablePDF(inputPdfUrl) {
  try {
    // First, perform OCR on the PDF
    const ocrResult = await scribe.extractText([inputPdfUrl]);
    
    // Then create a new PDF with the text layer embedded
    const searchablePdf = await scribe.createSearchablePDF(
      inputPdfUrl,
      ocrResult
    );
    
    // The resulting PDF maintains the original appearance
    // but now contains selectable, searchable text
    return searchablePdf;
  } catch (error) {
    console.error('Failed to create searchable PDF:', error);
    throw error;
  }
}

Fejlett dokumentum szövegfelismerés JS segítségével

Dokumentumok sűrű szöveggel és összetett elrendezéssel (például beolvasott könyvlap vagy PDF export) rendelkező képeire a Scribe.js könyvtár egy "Document Text Detection" (Dokumentum Szövegfelismerés) funkciót kínál. Ez sokkal gazdagabb információkat biztosít, beleértve a bekezdés-, szó- és sortörés-észlelőket, amelyek segítenek megőrizni az eredeti dokumentum szerkezetét. Ez rendkívül hasznos olyan alkalmazásoknál, ahol a forrásanyag elrendezése és szerkezete fontos, például űrlapok, számlák vagy többoszlopos elrendezések feldolgozásánál.

Hogyan végezhetünk fejlett szövegfelismerést JavaScript alkalmazásokban?

const Scribe = require('scribejs');
const serviceAccountKey = require('./path-to-your-key.json');
const scribe = new Scribe(serviceAccountKey);

const documentImageUrl = 'https://example.com/scanned-invoice.png';

// Use the `documentText` method for advanced detection
scribe.documentText(documentImageUrl)
  .then(fullTextAnnotation => {
    // The fullTextAnnotation object contains detailed data
    console.log('Full Document Text:');
    console.log(fullTextAnnotation.text); // The plain text of the entire document

    // You can also iterate through pages, blocks, paragraphs, and words
    fullTextAnnotation.pages.forEach(page => {
      page.blocks.forEach(block => {
        console.log('\nBlock Confidence:', block.confidence);
        block.paragraphs.forEach(paragraph => {
          console.log(paragraph.text);
        });
      });
    });
  })
  .catch(error => {
    console.error('Document OCR Error:', error);
  });

Tömeges feldolgozás több fájlra JavaScript használatával

A valós alkalmazásokban a szoftverfejlesztőknek gyakran több dokumentumot kell egyszerre feldolgozniuk. A Scribe.js alapból támogatja a kötegelt feldolgozást, lehetővé téve a felhasználók számára, hogy egyetlen műveletben szöveget nyerjenek ki több képből vagy PDF-ből egy JavaScript alkalmazáson belül. Az alábbi példa bemutatja, hogyan dolgozhatnak fel a szoftverfejlesztők dokumentumköteget JavaScript parancsokkal.

Hogyan dolgozhatunk fel egy dokumentumcsoportot JavaScript könyvtár használatával?

import scribe from 'scribe.js-ocr';

// Process multiple documents at once
async function batchProcess(fileUrls) {
  try {
    // Pass an array of URLs to process multiple files
    const results = await scribe.extractText(fileUrls);
    
    // Results are returned in the same order as input
    results.forEach((text, index) => {
      console.log(`Document ${index + 1} text:`, text);
    });
    
    return results;
  } catch (error) {
    console.error('Batch processing failed:', error);
    throw error;
  }
}

// Process a batch of documents
const documents = [
  'https://example.com/receipt1.jpg',
  'https://example.com/receipt2.jpg',
  'https://example.com/invoice.pdf'
];

batchProcess(documents)
  .then(allText => {
    console.log('All documents processed successfully');
  });
 Magyar