1. Tuotteet
  2.   OMR
  3.   C++
  4.   Aspose.OMR for C++

Aspose.OMR for C++

 
 

C++-kirjasto OMR-lomakkeiden luomiseen ja tietojen tunnistamiseen

Huipputason optinen merkintätunnistus (OMR) -ratkaisu C++-kehittäjille, joka mahdollistaa OMR-mallipohjien/lomakkeiden luomisen ja skannattujen kuvien sekä valokuvien tunnistamisen C++-sovelluksissa.

Mikä on Aspose.OMR for C++?

Aspose.OMR for C++ on tehokas ja joustava C++ OMR -rajapinta, joka on suunniteltu tehostamaan optisen merkintätunnistuksen (OMR) tehtäviä C++-sovelluksissa. Se on ihanteellinen kehittäjille, jotka rakentavat kyselyjärjestelmiä, kokeiden käsittelytyökaluja tai räätälöityjä OMR-sovelluksia; tämä SDK tarjoaa saumattoman integroinnin, kattavan dokumentaation, esimerkkikoodin ja monialustatuen. Kyky käsitellä monivalintakysymyksiä, ruudukko- ja tekstipohjaisia kysymystyyppejä tekee siitä erinomaisen tarkkojen skannattujen kuvien ja valokuvien lukemisessa. Kehittäjät voivat viedä tunnistustulokset CSV-muodossa, mikä helpottaa testien, lomakkeiden tai kyselyiden tietojen analysointia eri alustoilla ilman yhteensopivuusongelmia.

Olipa kyseessä sitten räätälöidyn C++ OMR -ohjelmiston kehittäminen tai luotettavan OMR SDK:n etsiminen C++:lle, Aspose.OMR erottuu kokonaisvaltaisena ratkaisuna. Se tukee edistyneitä ominaisuuksia, kuten valintaruutujen tunnistusta, ruudukkoalueita ja joustavia OMR‑mallipohjia. Kirjasto integroituu myös sujuvasti muihin Aspose‑rajapintoihin, jolloin kehittäjät voivat laajentaa sovelluksiaan lisämuoto- tai asiakirja‑automaatiotoiminnoilla. Korkean tarkkuuden OMR‑kuva-analyysistä C++:lla skaalautuvien lomakekäsittelyjärjestelmien rakentamiseen, Aspose.OMR for C++ antaa kehittäjille mahdollisuuden luoda tehokkaita ja ominaisuuksiltaan rikkaita OMR‑ratkaisuja nopeasti ja luotettavasti.

Previous Next

Aloittaminen Aspose.OMR for C++:ssä

Suositeltu tapa asentaa Aspose.OMR for C++ on NuGetin kautta. Käytä seuraavaa komentoa sujuvaa asennusta varten.

Asenna Aspose.OMR for C++ NuGetin kautta

 
Install-Package Aspose.OMR.Cpp

Voit ladata kirjaston suoraan Aspose.OMR-tuotesivulta

Luo OMR-malli/lomake C++-API:n avulla

Aspose.OMR for C++ API mahdollistaa mallipohjien luomisen, mikä on olennainen osa OMR-järjestelmiä. C++ OMR API:n avulla ohjelmistokehittäjät voivat suunnitella malleja erilaisiin lomakkeisiin, varmistaen tarkan tiedon poiminnan skannausprosessin aikana. API:ta voidaan käyttää mukauttamaan paperikokoa, suuntausta, fonttia, värejä ja muita asetteluasetuksia, jotka koskevat kaikkia mallisivuja ja enemmänkin. Tämä ominaisuus tehostaa OMR-ominaisuuksien integrointia eri aloille, kuten kyselyihin, kokeisiin ja arviointeihin. Seuraava esimerkki näyttää, miten luodaan lomakekuva, joka voidaan tulostaa ja toimittaa vastaajille C++-sovellusten sisällä.

Kuinka luoda lomakkeen kuva C++-sovelluksissa?

//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);

Tunnista OMR-lomakkeet C++-API:n avulla

Aspose.OMR for C++ on varustettu kehittyneellä OMR-toiminnallisuudella, jonka avulla ohjelmistokehittäjät voivat suunnitella ja käsitellä monimutkaisia lomakkeita helposti. Optisen merkintätunnistuksen (OMR) lomakkeiden tunnistaminen API:n avulla on suoraviivainen prosessi, joka sisältää useita keskeisiä vaiheita. Asennuksen jälkeen käyttäjän täytyy ladata OMR-malli, joka vastaa tunnistettavaa lomaketta. Tämän jälkeen ladata OMR-lomakkeen skannattu kuva ja käsitellä se ladatun mallin avulla, hakea tunnistettu data ja tallentaa se tarvittaessa. Seuraava esimerkki näyttää, miten OMR-lomakkeen tunnistus ja tietojen poiminta tehdään C++-sovelluksissa.

Kuinka tunnistaa ja poimia data OMR-lomakkeesta C++-rajapintaa käyttäen?

#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();

Nopea & tehokas OMR-skannaus

Tehokkuus on avainasemassa, erityisesti kun käsitellään suuria määriä skannattuja asiakirjoja. Aspose.OMR for C++ erottuu nopeassa skannauksessa, mahdollistaen nopean ja tarkan tietojen poiminnan OMR-arkista. Tämä ominaisuus on erityisen arvokas sovelluksissa, joissa aika on kriittinen, kuten aikarajoitteisissa kokeissa tai kyselyissä. API tukee laajaa valikoimaa OMR-elementtejä, mukaan lukien valintaruudut, ruudukot ja tekstialueet. Tämä kattava tuki mahdollistaa kehittäjien käsitellä erilaisia asiakirjatyyppejä, tehden siitä monipuolisen valinnan OMR-toiminnallisuutta vaativiin sovelluksiin.

Monisivuisen asiakirjan käsittely

Aspose.OMR for C++ erottuu monisivujen asiakirjojen käsittelyssä, mikä mahdollistaa kehittäjien käsitellä laajoja tietoaineistoja saumattomasti. Tämä kyky on erityisen arvokas sovelluksissa, jotka käsittelevät kyselyitä tai kokeita, joissa on lukuisia osallistujia. Monisivujen asiakirjojen käsittely OMR C++ -rajapintaa käyttäen sisältää sarjan vaiheita, joilla ladataan, käsitellään ja puretaan data jokaiselta sivulta. Esimerkiksi OMR-mallin lataaminen, jokaisen monisivuisen asiakirjan sivun käsittely ja datan tallentaminen.

Kuinka ladata ja käsitellä monisivuisen asiakirjan jokainen sivu C++-rajapinnan avulla?

#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();

 Suomen