Add FS functions

master
jeromewu 5 years ago
parent 20cd04a848
commit 93dab17bf1
  1. 36
      src/createWorker.js
  2. 4
      src/index.d.ts
  3. 6
      src/worker-script/index.js

@ -59,6 +59,38 @@ module.exports = (_options = {}) => {
}))
);
const writeText = (path, text, jobId) => (
startJob(createJob({
id: jobId,
action: 'FS',
payload: { method: 'writeFile', args: [path, text] },
}))
);
const readText = (path, jobId) => (
startJob(createJob({
id: jobId,
action: 'FS',
payload: { method: 'readFile', args: [path, { encoding: 'utf8' }] },
}))
);
const removeText = (path, jobId) => (
startJob(createJob({
id: jobId,
action: 'FS',
payload: { method: 'unlink', args: [path] },
}))
);
const FS = (method, args, jobId) => (
startJob(createJob({
id: jobId,
action: 'FS',
payload: { method, args },
}))
);
const loadLanguage = (langs = 'eng', jobId) => (
startJob(createJob({
id: jobId,
@ -151,6 +183,10 @@ module.exports = (_options = {}) => {
setResolve,
setReject,
load,
writeText,
readText,
removeText,
FS,
loadLanguage,
initialize,
setParameters,

4
src/index.d.ts vendored

@ -15,6 +15,10 @@ declare namespace Tesseract {
interface Worker {
load(jobId?: string): Promise<ConfigResult>
writeText(path: string, text: string, jobId?: string): Promise<ConfigResult>
readText(path: string, jobId?: string): Promise<ConfigResult>
removeText(path: string, jobId?: string): Promise<ConfigResult>
FS(method: string, args: any[], jobId?: string): Promise<ConfigResult>
loadLanguage(langs?: string, jobId?: string): Promise<ConfigResult>
initialize(langs?: string, oem?: OEM, jobId?: string): Promise<ConfigResult>
setParameters(params: Partial<WorkerParams>, jobId?: string): Promise<ConfigResult>

@ -54,6 +54,11 @@ const load = ({ workerId, jobId, payload: { options: { corePath, logging } } },
}
};
const FS = ({ workerId, payload: { method, args } }, res) => {
log(`[${workerId}]: FS.${method} with args ${args}`);
res.resolve(TessModule.FS[method](...args));
};
const loadLanguage = async ({
workerId,
payload: {
@ -280,6 +285,7 @@ exports.dispatchHandlers = (packet, send) => {
try {
({
load,
FS,
loadLanguage,
initialize,
setParameters,

Loading…
Cancel
Save