Aspose.OMR-Bubbles letters

is there any way to replace the letters inside the bubbles from English to Arabic letters ?

إذا كنت تستخدم إنشاء ورقة الاجابة من خلال

TemplateConfig templateConfig = new TemplateConfig()

تستطيع ذلك من خلال خصائص ورقة الإجابة بإضافة

 new AnswerSheetConfig() {
 Name = "Answers",
 ColumnsCount = int.Parse(TXT_COLUMN.Text),
 ElementsCount = int.Parse(TXT_TOTAL_QUESTION.Text),
 AnswersCount = int.Parse(TXT_TOTAL_OPTION.Text),
 BubbleSize = BubbleSize.Small,
 VerticalMargin = 10,
 AnswersValues = new string[] { "أ","ب","ج","د", "ه" }
 }

إذا لم يتضح لك الأمر الإشارة إلى ذلك
بالتوفيق

@osa8am82

Please let us know if you were able to achieve your requirements or faced issues. We will further proceed to assist you accordingly.

اخي الشماري مشكور جدا لردك ولكنني اجد صعوبة في تنفيذ هذا الامر

بالنسبة للمشروع الذي اعمل عليه نحن الان في مرحلة تجريب Aspose.OME من ناحية هل يلبي متطلباتنا ام لا وسوف اشرح لك الامر
1- ورقة الاجابة بالنسبة للمشروع الذي اعمل عليه معدة مسبقا وتم طباعتها في مطابع
2- اوراق الاجابة نوعان ، النوع الاول احرف الدوائر بالاحرف العربية للامتحانات العربية من اليمين الى اليسار، والنوع الثاني بالاحرف الانجليزية للامتحانات الانجليزية من اليسار الى اليمين
للامانة حتى الان لم اجد الطريقة المناسبة لتحديد الدوائر لكل نموذج وتصحيح الورقة بناء على هذا الاساس، اذا بالامكان مساعدتي اكون لك من الشاكرين

ملاحظة : انا استخدم Windows App C#
تحياتي ،،،

Asad , Thanks for your concern , i just replied to Alshammari

مرحبا معك الشمري خالد:

  • ميزة التطبيق (Aspose.OME) يمنحك إنشاء وطباعة أوراق الإجابات مع كامل ضبط اعداداتها لاستخراج الإجابات بشكل سليم.
  • بما أنك قمت مسبقاً بعمل ورقة إجابة في المطابع فأنت تحتاج إلى إنشاء ورقة شبيهة بها من خلال برنامج (Aspose.OME) للحصول على الإعدادات والتي على ضوئها يمكن تصحيح الورقة بالشكل السليم.
    ملف الإعدادات مهم لأنه على ضوءه يتم استخراج بيانات التعبئة من الورقة؛ أنت أمام خيارين:
    الأسهل : من الأفضل أن تصمم ورقة الورقة من خلال (Aspose.OME) ثم تعيد طباعتها من المطابع.
    الأصعب: ترفق نسخة من الورقة التي تم إعدادها مسبقًا ليتم إنشاء ورقة شبيهة لها من خلال برنامج (Aspose.OME) للحصول على الإعدادت التي تمكنك من استخراج البيانات بشكل سليم.
    بالتوفيق

اخي خالد كيف الحال : بالنسبة للخيار الثاني كيف يمكنني استخدامة ؟ وهل هناك ادوات exe لعمل ملف الاعدادات من وقع ورقة اجابة معدة مسبقا من المطبعة ؟ او حتى طريقة عبر استخدام code

تحتاج إلى مراجعة وفهم آلية عمل (Aspose.OMR) حاول أن تصنع ورقة تشبه ورقتك التي طبعتها في المطبعة حينها يستطيع (Aspose.OMR) قراءة المدخلات بشكل سليم

+

لعلي ارفق لك شرح فيديو في المستقبل القريب حتى تتضح لك الفكرة

السلام عليكم
طيلة المدة السابقة وانا احاول انشاء قالب يتماشى مع الورق الذي تم طباعتة في المطبعة وكل محاولاتي بائت بالفشل واعتقد بان السبب يرجع الى عدم استطاعتي تحديد اماكن دوائر التظليل بدقة ، وايضا مربعات المرجعية الموجودة على الصفحة ابعادها من حواف الصفحة ضيقة جدا وانا استدخم 0.5 لهوامش الصفحة ، هل هناك اي طريقة لحل هذه المشكلة ؟

تعديل : سبب اصراري على استخدام النموذج المعد مسبقا والذي تم طباعتة عن طريق مطابع انه تم طباعة اعداد كبيرة منه

Hello, @osa8am82

We have a WritingSystem property that is used to aggregate regional settings, like Right-To-Left directionality and digits symbols.

            GlobalPageSettings settings = new GlobalPageSettings
            {
                FontFamily = "Arial",
                FontStyle = FontStyle.Regular,
                FontSize = 10,
                PaperSize = PaperSize.Letter,
                WritingSystem = new Arabic(true)
            };

API Examples.
Generation example (179.2 KB)

hi
thanks for your answer but this is not whats my problem
im using this link OMR sheet designer to mark all my bubbles in my Pre-printed paper sheet but this form is using 24 margins in pixel and i need to set the margins to 0.5 cm

Hello, @osa8am82

Unfortunately, there is no option to set margin in AnswerSheet designer, at least at the current moment.

I can recommend a workaround - rescaling template image using a graphical editor to create a white space margin or setting a margin during printing.

OMR engine is perfectly capable of compensating this type of distortion and no change in .omr file is necessary.

Ok, i need your help to create the template by code like the image in the attachment
the number in question must be RTL
Output.03.png (‏273.8 ‏ك.ب)

Hello, @osa8am82

Per your request in attachment there is a .cs file with GlobalPageSettigns and TempalateConfig to generate same layout by code.
Based on your previous questions, I also have added a 0.5 inch offset for ReferencePoints.

OMRNET-1120-cs.zip (149.7 KB)

Also, as another version, I have marked up bubbles over provided template and added 0.5 inch offset using a graphical editor.

OMRNET-1120-designer.zip (1.7 MB)

Dera Nikita,
Your help is much appreciated, Will try the attached files and get back to you
Regards, Osama

Dear Nikita
Your advice regarding the attached error
Regards
Screenshot 2025-03-11 211805.png (‏89.1 ‏ك.ب)

Dear Nikita

I found the problem is that I’m using Aspose.OMR V2023 and the set of Reference Points Offset is supported on latest version’s , Anyway i did open new C# project and i installed the lates version of Aspose.OME 25.2.0 just for testing , when i apply your code the result is empty answer sheet like in the attachment
Your advice plz
Regards, Osama
Form1.zip (‏1.5 ‏ك.ب)
OMR_Template.pdf (‏269.0 ‏ك.ب)

I have looked at the code in attachment. There is no licensing code present. Is the license file set somewhere else in the code?

Without license there is a limit for generated and recognized elements.

I can advise trying a free temporary license.

Dear Nikita,
you have been a great help in achieving this and I thank you for your assistance. i did received the temporary license but still have a few questions and i will be grateful if you could help me.

1- how i can make more space between bubbles
2- Each answer sheet generating the Aspose.OMR created OMR_Template.omr file, how i can stop that ? Just need one OMR_Template.omr to do the scan for all the student as the answer sheet is the same
3- sometimes during the scan of the answer sheet it did not recognize some bubble’s has been marked , is there any option or tool or advice to optimize the recognition of the bubbles , As you know, correction matters are considered sensitive matters, and if one of the circles is missing during the scanning process, it will affect the student’s grade.
4- I tried many times to use my cellphone camera to do the scan but most of all the times it gives me an error the the engine did not recognize the sheet or the result id not correct , is there any advice regarding this matter ?

Again Thx for your help and waiting for your replay

Regards, Osama
Form1.zip (‏3.0 ‏ك.ب)

OMR_Template.png (‏303.8 ‏ك.ب)

Hello, @osa8am82

Glad to be of assistance!

  1. There are no such features at the moment. It is possible to increase the size of the bubbles using property GlobalPagesettings.BubbleSize.

  2. For multiple personalized tests, there is a Batch processing feature.
    It was designed precisely for this use case - one template layout, one .domr file and multiple students. Template layout allows placeholders for personal information and there is automatic barcode for student identification.

  3. The percent of marked pixels required for bubble to consider marked is controlled by Recognition threshold parameter. The default value is 40%, but it does include circle and letter inside the bubble.
    Depending on font\letters\bubble size\scan or photo - this value can be different. There is more information in Fine tuning article.

My advice would be to find the lowest possible recognitionThreshold. It can be done by scanning the answer sheet without any marking and trying different recognitionThreshold numbers until Recognize() method will stop returning false positives.

There is a UI elements included in net40 version of library. They can help optimize calibration.

  1. There are some requirements to image quality. I can advise scans to be 300x300 dpi and at least 1000x1000 pixels.
    In case of cellphone camera - can you share some examples? Preferable from the worst case to best case. I will investigate them for issues.
1 Like