1. Produkti
  2.   OCR
  3.   JavaScript
  4.   Scribe.js
 
  

Atvērtā koda OCR JavaScript API, lai izveidotu meklējamus PDF

Vadoša JavaScript OCR bibliotēka, lai izveidotu meklējamus PDF, veic OCR (optisko rakstzīmju atpazīšanu) un izvelk tekstu gan no attēliem (PNG, JPEG), gan no PDF failiem.

Kas ir Scribe.js?

Mūsdienu digitālajā pasaulē milzīgs daudzums vērtīgas informācijas ir iesprostots attēlos — kļūdu ziņojumu ekrānuzņēmumos, dokumentu fotogrāfijās, prezentācijas slaidos vai pat memēs ar asprātīgu tekstu. Manuāli pārrakstīt šo tekstu ir garlaicīgs un kļūdains process. Šeit optiskās rakstzīmju atpazīšanas (OCR) tehnoloģija nāk palīgā, un Scribe.js piedāvā vienu no visizstrādātājiem draudzīgākajiem veidiem, kā to integrēt jūsu tīmekļa projektos. Scribe.js ir atvērtā koda JavaScript bibliotēka, kas veic OCR un izvelk tekstu gan no attēliem, gan no PDF failiem. Atšķirībā no daudziem OCR risinājumiem, kas prasa servera apstrādi vai ārējas API izsaukumus, Scribe.js darbojas pilnīgi klienta pusē, sniedzot jums pilnīgu kontroli pār datiem un likvidējot servera izmaksas teksta atpazīšanas uzdevumiem.

Scribe.js ir viegls JavaScript klients Google Cloud Vision API. Visas OCR operācijas notiek tieši lietotāja pārlūkā vai jūsu Node.js vidē, nodrošinot privātumu un samazinot servera infrastruktūras izmaksas. Bibliotēka ietver atbalstu dažādām funkcijām, piemēram, attēlu priekšapstrādei, vienotai attēlu darba plūsmai, automātiskai noteikšanai, PDF slāņošanai, zemas pārliecības lapu filtrēšanai, OCR dzinēju kešatmiņai utt. Bibliotēka ir izveidota, izmantojot modernu JavaScript ESM (ECMAScript Modules), kas ļauj vienkārši integrēt to mūsdienīgās tīmekļa izstrādes darba plūsmās, neprasot sarežģītas būvēšanas konfigurācijas. Šī izstrādātāju‑pirmā pieeja nozīmē, ka varat sākt izvilkt tekstu no dokumentiem ar tikai dažām koda rindām.

Previous Next

Sākšana ar Scribe.js

Ieteicamais veids, kā instalēt Scribe.js, ir izmantojot npm. Lūdzu, izmantojiet šādu komandu, lai veiktu gludu instalāciju

Instalējiet Scribe.js, izmantojot npm

 npm install scribe.js-ocr 

Jūs varat arī instalēt to manuāli; lejupielādējiet jaunākos izlaiduma failus tieši no GitHub krātuves.

Teksta atpazīšana no attēliem

Vispamatīgākais Scribe.js bibliotēkas lietošanas gadījums ir teksta izguve no attēlu failiem. Bibliotēka apstrādā dažādus attēlu formātus un var apstrādāt gan atsevišķus attēlus, gan vairāku attēlu partijas vienā operācijā. Šeit ir pamata piemērs, kas demonstrē teksta izguvi no attēla URL JavaScript lietotnēs. Šis koda fragments parāda vienkāršo API, ko nodrošina Scribe.js. extractText metode pieņem attēlu URL masīvu un atgriež Promise, kas izpildās ar atpazīto tekstu.

Kā izvilkt tekstu no attēla, izmantojot JavaScript bibliotēku?

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);
  });

Izveidojiet meklējamus PDF failus, izmantojot JavaScript

Viena no Scribe.js spēcīgākajām funkcijām ir spēja pievienot neuzredzamus teksta slāņus esošajiem PDF failiem. Šī funkcionalitāte pārveido uz attēliem balstītus PDF par meklējamiem dokumentiem, nemainot to vizuālo izskatu. Kad PDF tiek pievienots teksta slānis, lietotāji var meklēt konkrētus vārdus vai frāzes dokumentā, izvēlēties un kopēt tekstu no tā, kas izskatās kā attēls, izmantot ekrāna lasītājus un pieejamības rīkus ar skenētiem dokumentiem, ļaut meklētājprogrammu un dokumentu pārvaldības sistēmu indeksēšanu utt.

Kā izveidot meklējamus PDF dokumentus, izmantojot JavaScript bibliotēku?

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;
  }
}

Uzlabota dokumenta teksta noteikšana, izmantojot JS

Attēliem no dokumentiem ar blīvu tekstu un sarežģītām izkārtojumiem (piemēram, skenēta grāmatas lapa vai PDF eksports), Scribe.js bibliotēka piedāvā funkciju "Document Text Detection". Tas nodrošina daudz bagātīgāku informāciju, ieskaitot rindkopu, vārdu un pārtraukumu noteicējus, kas palīdz saglabāt sākotnējā dokumenta struktūru. Tas ir ārkārtīgi noderīgi lietojumprogrammām, kurās izkārtojums un avota materiāla struktūra ir svarīga, piemēram, veicot formu, rēķinu vai daudzkolonu izkārtojumu apstrādi.

Kā veikt uzlabotu teksta noteikšanu JavaScript lietotnēs?

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);
  });

Masveida apstrāde vairākiem failiem, izmantojot JavaScript

Reālās pasaules lietojumprogrammās programmatūras profesionāļiem bieži jāapstrādā vairāki dokumenti vienlaicīgi. Scribe.js jau no sākuma atbalsta grupas apstrādi, ļaujot lietotājiem izvilkt tekstu no vairākiem attēliem vai PDF failiem vienā darbībā JavaScript lietojumprogrammā. Zemāk esošais piemērs demonstrē, kā programmatūras izstrādātāji var apstrādāt dokumentu grupu, izmantojot JavaScript komandas.

Kā apstrādāt dokumentu partiju, izmantojot JavaScript bibliotēku?

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');
  });
 Latviski