UNPKG

ppu-paddle-ocr

Version:

Blazing-fast and lightweight PaddleOCR library for Node.js and Bun. Perform accurate text detection, recognition, and image deskew with a simple, modern, and type-safe API. Ideal for document processing, data extraction, and computer vision tasks.

1 lines 729 B
export class ImageCache{cache=new Map;maxSize;constructor(maxSize=10){this.maxSize=maxSize}get(key){let value=this.cache.get(key);if(value!==undefined){this.cache.delete(key);this.cache.set(key,value);return value}return}set(key,value){if(this.cache.has(key)){this.cache.delete(key)}else if(this.cache.size>=this.maxSize){let firstKey=this.cache.keys().next().value;if(firstKey!==undefined){this.cache.delete(firstKey)}}this.cache.set(key,value)}clear(){this.cache.clear()}static generateKey(imageBuffer){let view=new Uint8Array(imageBuffer);let len=Math.min(view.length,1024);let hash=0;for(let i=0;i<len;i++){hash=(hash<<5)-hash+view[i];hash=hash&hash}return`${hash}_${view.length}`}}export let globalImageCache=new ImageCache;