Aspose.OMR for C++
C++ bibliotēka OMR formu izveidei un datu atpazīšanai
Modernā optiskā marķējuma atpazīšanas (OMR) risinājums C++ izstrādātājiem, kas ļauj izveidot OMR veidnes/formas un atpazīt skenētus attēlus un fotogrāfijas C++ lietojumprogrammās.
Kas ir Aspose.OMR priekš C++?
Aspose.OMR for C++ ir jaudīga un elastīga C++ OMR API, kas paredzēta, lai racionalizētu optiskās atzīmes atpazīšanas (Optical Mark Recognition) uzdevumus C++ lietojumprogrammās. Ideāla izstrādātājiem, kas veido aptauju sistēmas, eksāmenu apstrādes rīkus vai pielāgotas OMR lietotnes, šī SDK nodrošina nevainojamu integrāciju, pilnīgu dokumentāciju, paraugkodu un daudzplatformu atbalstu. Ar spējām apstrādāt vairākas izvēles, režģa un teksta balstītus jautājumu tipus, tā izcili precīzi lasa skenētus attēlus un fotogrāfijas. Izstrādātāji var eksportēt atpazīšanas rezultātus CSV formātā, kas ļauj viegli analizēt datus no testiem, veidlapām vai anketām dažādās platformās, neuztraucoties par saderības problēmām.
Neatkarīgi no tā, vai izstrādājat pielāgotu C++ OMR programmatūru vai meklējat uzticamu OMR SDK C++ valodā, Aspose.OMR izceļas kā visaptverošs risinājums. Tas atbalsta uzlabotas funkcijas, piemēram, izvēles rūtiņu noteikšanu, režģa laukus un elastīgus OMR veidnes. Bibliotēka arī gludi integrējas ar citām Aspose API, ļaujot izstrādātājiem paplašināt savas lietojumprogrammas ar papildu failu formātu vai dokumentu automatizācijas funkcijām. No augstas precizitātes OMR attēlu analīzes ar C++ līdz mērogojamu veidlapu apstrādes sistēmu izveidei, Aspose.OMR for C++ ļauj izstrādātājiem ātri un uzticami izveidot efektīvus un bagātīgi funkcionalitātes OMR risinājumus.
Kā sākt darbu ar Aspose.OMR priekš C++
Ieteicamais veids, kā instalēt Aspose.OMR for C++, ir caur NuGet. Lūdzu, izmantojiet šādu komandu, lai veiktu gludu instalāciju.
Instalējiet Aspose.OMR priekš C++ caur NuGet
Install-Package Aspose.OMR.Cpp
Jūs varat lejupielādēt bibliotēku tieši no Aspose.OMR produkta lapas
Ģenerēt OMR veidni/formu, izmantojot C++ API
Aspose.OMR for C++ API atvieglo veidņu izveidi, kas ir būtisks OMR sistēmu aspekts. Izmantojot C++ OMR API, programmatūras izstrādātāji var izstrādāt veidnes dažādu veidu veidlapām, nodrošinot precīzu datu izguvi skenēšanas procesā. API var izmantot, lai pielāgotu papīra izmēru, orientāciju, fontu, krāsas un citus izkārtojuma iestatījumus, kas attiecas uz visām veidņu lapām un vairāk. Šī funkcija vienkāršo OMR iespēju integrēšanu dažādās jomās, piemēram, aptaujās, eksāmenos un novērtējumos. Tālāk esošais piemērs parāda, kā ģenerēt veidlapas attēlu, ko var izdrukāt un nodot respondentiem C++ lietojumprogrammās.
Kā ģenerēt veidlapas attēlu C++ lietojumprogrammās?
//Generate the form for ANSI Letter paper size
System::SharedPtr engine = System::MakeObject();
// Generate the form for ANSI Letter paper size (8.5 by 11 inches)
System::SharedPtr settings = System::MakeObject();
settings->setPaperSize(Api::PaperSize::Letter);
System::SharedPtr result = engine->GenerateTemplate(markupPath, nullptr, settings);
Atpazīt OMR veidlapas, izmantojot C++ API
Aspose.OMR for C++ ir aprīkots ar uzlabotu OMR funkcionalitāti, ļaujot programmatūras izstrādātājiem viegli projektēt un apstrādāt sarežģītas veidlapas. Optiskās atzīmes atpazīšanas (OMR) veidlapu atpazīšana, izmantojot API, ir vienkāršs process, kas ietver vairākus svarīgus soļus. Pēc instalācijas lietotājiem jāielādē OMR veidne, kas atbilst veidlapai, ko vēlaties atpazīt. Pēc tam jāielādē skenētais OMR veidlapas attēls un jāapstrādā tas, izmantojot ielādēto veidni, jāiegūst atpazītie dati un, ja nepieciešams, jāizsaglabā. Zemāk esošais piemērs parāda, kā atpazīt un izvilkt datus no OMR veidlapas C++ lietojumprogrammās.
Kā atpazīt un izvilkt datus no OMR veidlapas, izmantojot C++ API?
#include
omr::AsposeOmrApi api;
api.LoadTemplate("path/to/your/template.omr");
// Load and Process the Image
api.LoadImage("path/to/your/scanned/image.jpg");
api.Process();
// Access Recognized Data
omr::OmrPageReader reader = api.GetOmrPageReader();
std::vector pages = reader.ExtractPages();
omr::OmrPage page = pages[0]; // Assuming there's only one page in the form
// Access and handle recognized data
// Example: Extracting data from the grid
omr::Grid grid = page.GetGrids()[0]; // Assuming there's only one grid on the page
std::vector> data = grid.ExtractData();
// Finalize and Cleanup
api.Finalize();
Ātra un efektīva OMR skenēšana
Efektivitāte ir būtiska, īpaši strādājot ar lielu skaitu skenētu dokumentu. Aspose.OMR for C++ izceļas augstas ātruma skenēšanā, ļaujot ātri un precīzi izvilkt datus no OMR lapām. Šī funkcija ir īpaši vērtīga lietojumprogrammām, kur laiks ir svarīgs, piemēram, laika ierobežojumiem pakļautām eksāmeniem vai aptaujām. API atbalsta plašu OMR elementu klāstu, tostarp izvēles rūtiņas, režģus un teksta laukus. Šis visaptverošais atbalsts ļauj izstrādātājiem apstrādāt dažādus dokumentu veidus, padarot to par daudzpusīgu izvēli lietojumprogrammām, kas pieprasa OMR funkcionalitāti.
Vairāku lapu dokumentu apstrāde
Aspose.OMR for C++ izcili pārvalda vairāku lapu dokumentu apstrādi, ļaujot izstrādātājiem bezrūpīgi apstrādāt plašus datu kopumus. Šī iespēja ir īpaši vērtīga lietojumprogrammām, kas ietver aptaujas vai eksāmenus ar daudziem dalībniekiem. Vairāku lapu dokumentu apstrāde, izmantojot OMR C++ API, ietver virkni soļu, lai ielādētu, apstrādātu un izvilktu datus no katras lapas. Piemēram, ielādējot OMR veidni, apstrādājot katru vairāku lapu dokumenta lapu un saglabājot datus.
Kā ielādēt un apstrādāt katru daudzlapas dokumenta lapu, izmantojot C++ API?
#include
// Load the OMR template
omr::AsposeOmrApi api;
api.LoadTemplate("path/to/your/template.omr");
//process each page of the multi-page document.
const int pageCount = 5; // Change this to the total number of pages in your document
for (int currentPage = 1; currentPage <= pageCount; ++currentPage) {
std::string imagePath = "path/to/your/scanned/image" + std::to_string(currentPage) + ".jpg";
api.LoadImage(imagePath);
api.Process();
// Access and handle recognized data for each page
omr::OmrPageReader reader = api.GetOmrPageReader();
std::vector pages = reader.ExtractPages();
omr::OmrPage page = pages[0]; // Assuming there's only one page in each image
// Access and handle recognized data
// Example: Extracting data from the grid
omr::Grid grid = page.GetGrids()[0]; // Assuming there's only one grid on the page
std::vector> data = grid.ExtractData();
// Further processing or storage of the data can be done here
// Cleanup for the next iteration
api.Finalize();
}
// release resources.
api.Finalize();