feat(ocr): auto-process images only if enabled in settings

This commit is contained in:
Elian Doran 2025-07-26 14:12:22 +03:00
parent 2cb4e5e8dc
commit 65b58c3668
No known key found for this signature in database
2 changed files with 5 additions and 2 deletions

View File

@ -7,6 +7,7 @@ import BAttribute from "../becca/entities/battribute.js";
import hiddenSubtreeService from "./hidden_subtree.js"; import hiddenSubtreeService from "./hidden_subtree.js";
import oneTimeTimer from "./one_time_timer.js"; import oneTimeTimer from "./one_time_timer.js";
import ocrService from "./ocr/ocr_service.js"; import ocrService from "./ocr/ocr_service.js";
import optionService from "./options.js";
import log from "./log.js"; import log from "./log.js";
import type BNote from "../becca/entities/bnote.js"; import type BNote from "../becca/entities/bnote.js";
import type AbstractBeccaEntity from "../becca/entities/abstract_becca_entity.js"; import type AbstractBeccaEntity from "../becca/entities/abstract_becca_entity.js";
@ -142,7 +143,8 @@ eventService.subscribe(eventService.ENTITY_CREATED, ({ entityName, entity }) =>
// Note: OCR processing for images is now handled in image.ts during image processing // Note: OCR processing for images is now handled in image.ts during image processing
// OCR processing for files remains here since they don't go through image processing // OCR processing for files remains here since they don't go through image processing
if (entity.type === 'file' && ocrService.isOCREnabled()) { // Only auto-process if both OCR is enabled and auto-processing is enabled
if (entity.type === 'file' && ocrService.isOCREnabled() && optionService.getOptionBool("ocrAutoProcessImages")) {
// Check if the file MIME type is supported by any OCR processor // Check if the file MIME type is supported by any OCR processor
const supportedMimeTypes = ocrService.getAllSupportedMimeTypes(); const supportedMimeTypes = ocrService.getAllSupportedMimeTypes();

View File

@ -26,7 +26,8 @@ async function processImage(uploadBuffer: Buffer, originalName: string, shrinkIm
} }
// Schedule OCR processing in the background for best quality // Schedule OCR processing in the background for best quality
if (noteId && ocrService.isOCREnabled() && origImageFormat) { // Only auto-process if both OCR is enabled and auto-processing is enabled
if (noteId && ocrService.isOCREnabled() && optionService.getOptionBool("ocrAutoProcessImages") && origImageFormat) {
const imageMime = getImageMimeFromExtension(origImageFormat.ext); const imageMime = getImageMimeFromExtension(origImageFormat.ext);
const supportedMimeTypes = ocrService.getAllSupportedMimeTypes(); const supportedMimeTypes = ocrService.getAllSupportedMimeTypes();