This project has moved. For the latest updates, please go here.

Bubble Behaviors

The files for this sample are located in %installDir%\Samples\TallySheet.

The Scenario

In this sample we’ll use the form designer and OMR Mark Engine to do some more advanced forms and explore the various bubble behaviors. In this tutorial we’ll follow Mary, a highschool student who is doing a group project to perform a census of various neighborhoods in her town with several other students.

Creating the Template

Mary creates a simple census form using Microsoft Word and the templates provided in the template designer. Her form needs to track census area (by street) and a tally of each age group and gender. Using the portrait template she constructs the following template (download here)



Mary prints off this template and scans it into the template designer by selecting “File –> New Template From Scanner” and reviews the scanned information to ensure that it is correct.


Adding the Census Area (Multi-Bubble Questions)

Mary needs to track the census area where the information was created. She could do this by generating a different form ID barcode (example: OMR:ID:CENSUS:JAMES ST NORTH) however she doesn’t want to have to create identical forms for her small survey. She chooses instead to create a simple checkbox structure and sets the answer behavior to MULTI. MULTI answers bubbles are those whereby one question may have multiple bubbles selected as an answer.

Mary creates a singe question bubble for this information.


She copies this bubble (CTRL+C) and pastes it to complete the bubble inputs for all the census areas, changing only the “Value” property.


Creating the Tally Area (Count Bubbles)

To create the tally sheet area Mary will use the Count function for her tally bubbles. The count function will count the number of bubbles which are selected having the same Question in the same AnswerRowGroup. She decides to create two answer row groups for Male/Female and each age group being a question (she could reverse this if she likes).

Mary starts by creating a single bubble with her settings for each bubble.


She can then copy and paste this same bubble for each of her tally areas. It is probably best to copy a column of bubbles and then copy the column across the rows.

image > image

Now she repeats the process by copying the entire block of count bubbles to the next age group and modifying the “Question” property for all bubbles at once.


Once this process is complete for Males she can copy the entire “Male” group and paste the bubbles over the “Female” group changing the “AnswerRowGroup” property (Note: It is recommended you be zoomed at 75% to perform this as it can be difficult to get the Sketchy canvas to recognize moves at lower zoom levels).


Mary checks her marked up form one last time before filling in a sample and testing the form.



Testing the Form

Mary tests her form by printing off a copy of the word document and filling in some of the bubbles and selecting “Test –> From Scanner”.


The sample scan of Mary’s test image (unprocessed) is attached below for reference.

Mary Sample ScanMary Sample Scan 3

Saving Output

Mary can now save the output of her scans to a computable form (like XML or CSV). To do this she can either use the bulk scanning application or she can simply use the designer interface.

Mary places all of her collected census sheets into a sheetfed scanner and selects “Test –> From Scanner” from the designer. The sheets are scanned as “Test Input”. Mary selects the sheets which she would like to export into Excel and selects “Test –> Save Output”. She selects “Comma Separated Values” from the format list and saves the discrete data.


Last edited Apr 18, 2015 at 7:38 PM by fyfesoftware_oss, version 7