1. Produk
  2.   OMR
  3.   C++
  4.   Aspose.OMR untuk C++

Aspose.OMR untuk C++

 
 

Perpustakaan C++ untuk Membuat Formulir OMR & Mengenali Data

Solusi Pengenalan Tanda Optik (OMR) mutakhir untuk Pengembang C++ yang Memungkinkan Membuat Templat/Formulir OMR dan Mengenali Gambar & Foto yang Dipindai di dalam Aplikasi C++.

Apa itu Aspose.OMR untuk C++?

Aspose.OMR for C++ adalah API OMR C++ yang kuat dan fleksibel yang dirancang untuk menyederhanakan tugas Optical Mark Recognition dalam aplikasi C++. Ideal bagi pengembang yang membangun sistem survei, alat pemrosesan ujian, atau aplikasi OMR khusus, SDK ini menawarkan integrasi mulus, lengkap dengan dokumentasi mendalam, contoh kode, dan dukungan lintas platform. Dengan kemampuan memproses pertanyaan pilihan ganda, grid, dan berbasis teks, ia unggul dalam membaca gambar hasil pemindaian dan foto dengan akurasi tinggi. Pengembang dapat mengekspor hasil pengenalan dalam format CSV, memudahkan analisis data dari tes, formulir, atau kuesioner di berbagai platform tanpa khawatir tentang masalah kompatibilitas.

Apakah Anda mengembangkan perangkat lunak OMR C++ khusus atau mencari SDK OMR yang handal untuk C++, Aspose.OMR menonjol sebagai solusi komprehensif. Ini mendukung fitur lanjutan seperti deteksi kotak centang, bidang grid, dan templat OMR yang fleksibel. Perpustakaan ini juga terintegrasi dengan mulus ke API Aspose lainnya, memungkinkan pengembang meningkatkan aplikasi mereka dengan format file tambahan atau fitur otomatisasi dokumen. Dari analisis gambar OMR dengan akurasi tinggi menggunakan C++ hingga membangun sistem pemrosesan formulir yang skalabel, Aspose.OMR untuk C++ memberdayakan pengembang untuk membuat solusi OMR yang efisien dan kaya fitur dengan cepat dan dapat diandalkan.

Previous Next

Memulai dengan Aspose.OMR untuk C++

Cara yang disarankan untuk menginstal Aspose.OMR untuk C++ adalah melalui NuGet. Silakan gunakan perintah berikut untuk instalasi yang lancar.

Instal Aspose.OMR untuk C++ melalui NuGet

 
Install-Package Aspose.OMR.Cpp

Anda dapat mengunduh perpustakaan langsung dari Aspose.OMR halaman produk

Buat Template/Form OMR melalui API C++

Aspose.OMR untuk API C++ memfasilitasi pembuatan templat, aspek penting dari sistem OMR. Dengan API OMR C++, pengembang perangkat lunak dapat merancang templat untuk berbagai jenis formulir, memastikan ekstraksi data yang akurat selama proses pemindaian. API dapat digunakan untuk menyesuaikan ukuran kertas, orientasi, font, warna, dan pengaturan tata letak lainnya yang berlaku untuk semua halaman templat dan lebih banyak lagi. Fitur ini mempermudah integrasi kemampuan OMR ke dalam berbagai domain, seperti survei, ujian, dan penilaian. Contoh berikut menunjukkan cara menghasilkan gambar formulir yang dapat dicetak dan diberikan kepada responden dalam aplikasi C++.

Cara Membuat Gambar Formulir di dalam Aplikasi C++?

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

Kenali Formulir OMR melalui API C++

Aspose.OMR untuk C++ dilengkapi dengan fungsionalitas OMR canggih, memungkinkan pengembang perangkat lunak merancang dan memproses formulir kompleks dengan mudah. Mengenali formulir Optical Mark Recognition (OMR) menggunakan API adalah proses yang sederhana yang melibatkan beberapa langkah kunci. Setelah instalasi, pengguna perlu memuat templat OMR yang sesuai dengan formulir yang ingin dikenali. Setelah itu, muat gambar hasil pemindaian formulir OMR dan proses menggunakan templat yang dimuat, ambil data yang dikenali dan simpan jika diperlukan. Contoh berikut menunjukkan cara mengenali dan mengekstrak data dari formulir OMR dalam aplikasi C++.

Cara Mengenali dan Mengekstrak Data dari Formulir OMR menggunakan API C++?

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

Pemindaian OMR Berkecepatan Tinggi & Efisien

Efisiensi adalah kunci, terutama saat menangani volume besar dokumen yang dipindai. Aspose.OMR untuk C++ unggul dalam pemindaian berkecepatan tinggi, memungkinkan ekstraksi data yang cepat dan akurat dari lembar OMR. Fitur ini sangat berharga untuk aplikasi di mana waktu sangat penting, seperti ujian atau survei dengan batas waktu. API mendukung berbagai elemen OMR, termasuk kotak centang, grid, dan area teks. Dukungan komprehensif ini memungkinkan pengembang menangani berbagai jenis dokumen, menjadikannya pilihan yang serbaguna untuk aplikasi yang memerlukan fungsionalitas OMR.

Pemrosesan Dokumen Multi-Halaman

Aspose.OMR untuk C++ unggul dalam pemrosesan dokumen multi-halaman, memungkinkan pengembang menangani dataset yang luas dengan mulus. Kemampuan ini sangat berharga untuk aplikasi yang melibatkan survei atau ujian dengan banyak peserta. Memproses dokumen multi-halaman menggunakan OMR C++ API melibatkan serangkaian langkah untuk memuat, memproses, dan mengekstrak data dari setiap halaman. Seperti memuat template OMR, memproses setiap halaman dokumen multi-halaman, dan menyimpan data.

Cara Memuat dan Memproses Setiap Halaman Dokumen Multi-halaman melalui API C++?

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

 Indonesia