diff --git a/HISTORY.rst b/HISTORY.rst index 9d2d120824..0fc53fdf23 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -136,6 +136,7 @@ - Update Chart.js version. - Improve line chart appearance. Fix mouse hover label issue. - Add JavaScript dependency manager. +- Add support for passing arguments to the OCR backend. 2.7.3 (2017-09-11) ================== diff --git a/docs/releases/3.0.rst b/docs/releases/3.0.rst index 4951839f88..4c5ba82440 100644 --- a/docs/releases/3.0.rst +++ b/docs/releases/3.0.rst @@ -426,6 +426,8 @@ Other changes worth mentioning - Remove the data filters feature. - Update Chart.js version. - Improve line chart appearance. Fix issue with mouse over labels next other chart margin. +- Add support for passing arguments to the OCR backend. + Removals diff --git a/mayan/apps/ocr/runtime.py b/mayan/apps/ocr/runtime.py index 307f2a6a40..69819029e7 100644 --- a/mayan/apps/ocr/runtime.py +++ b/mayan/apps/ocr/runtime.py @@ -1,5 +1,15 @@ +from __future__ import unicode_literals + +import yaml + from django.utils.module_loading import import_string -from .settings import setting_ocr_backend +from .settings import setting_ocr_backend, setting_ocr_backend_arguments -ocr_backend = import_string(setting_ocr_backend.value)() +ocr_backend = import_string( + setting_ocr_backend.value +)( + **yaml.safe_load( + setting_ocr_backend_arguments.value or '{}' + ) +) diff --git a/mayan/apps/ocr/settings.py b/mayan/apps/ocr/settings.py index d1f3ea672c..6e8f061335 100644 --- a/mayan/apps/ocr/settings.py +++ b/mayan/apps/ocr/settings.py @@ -18,6 +18,10 @@ setting_ocr_backend = namespace.add_setting( global_name='OCR_BACKEND', default='ocr.backends.pyocr.PyOCR', help_text=_('Full path to the backend to be used to do OCR.') ) +setting_ocr_backend_arguments = namespace.add_setting( + global_name='OCR_BACKEND__ARGUMENTS', + default='' +) setting_auto_ocr = namespace.add_setting( global_name='OCR_AUTO_OCR', default=True, help_text=_(