Создайте форму опроса из разметки JSON с помощью C#

Опросы играют жизненно важную роль в исследованиях рынка для компаний или организаций, направленных на развитие их бизнеса. Они используют формы опроса для сбора отзывов клиентов, отзывов пользователей или мнений. Формы опроса обычно включают вопросы с несколькими вариантами ответов, чтобы отметить вводимые пользователем данные. Мы можем легко создавать опросы, викторины и готовые к печати листы ответов OMR из разметки JSON программными средствами. JSON позволяет хранить и передавать данные, которые можно анализировать и обрабатывать программно. В этой статье мы узнаем, как создать форму опроса из разметки JSON с помощью C#.

В этой статье должны быть раскрыты следующие темы:

С# OMR API для создания формы опроса из JSON

Для создания форм опроса из разметки JSON мы будем использовать Aspose.OMR for .NET API. Он позволяет разрабатывать, создавать и распознавать листы ответов, тесты, документы MCQ, викторины, формы обратной связи, опросы и бюллетени. Пожалуйста, загрузите DLL API или установите его с помощью NuGet.

PM> Install-Package Aspose.OMR

Создание формы опроса OMR из разметки JSON с использованием C#

Мы можем создать форму опроса из разметки JSON, выполнив следующие шаги:

  • Во-первых, создайте экземпляр класса OmrEngine.
  • Затем вызовите метод GenerateJSONTemplate с путем к файлу разметки JSON в качестве аргумента.
  • После этого получить результаты в виде объекта класса GenerationResult.
  • Наконец, вызовите метод Save, чтобы сохранить изображения шаблона и шаблон OMR. В качестве аргументов он принимает путь к папке на локальном диске и имя шаблона.

В следующем примере кода показано, как создать шаблон формы опроса OMR из разметки JSON с помощью C#.

// В этом примере кода показано, как создать изображение Survey и OMR из разметки JSON.
// Путь к файлу JSON с разметкой шаблона
string markupPath = @"C:\Files\OMR\SimpleSurvey.json";

// Инициализировать механизм OMR
OmrEngine engine = new OmrEngine();

// Создать шаблон
GenerationResult res = engine.GenerateJSONTemplate(markupPath);

// Сохранить на локальный диск
res.Save(@"C:\Files\OMR\", "SimpleSurvey");
Create OMR Survey Form from JSON Markup using C#

Create OMR Survey Form from JSON Markup using C#

Мы использовали следующую разметку шаблона JSON в примере кода, упомянутом выше.

{
	"element_type": "template",
	"children": [
		{
			"element_type": "page",
			"children": [
				{
					"name": "Welcome to Sample Survey",
					"element_type": "text",
					"font_style": "bold",
					"font_size": 16,
					"align": "center"
				},
				{
					"element_type": "emptyLine"
				},
				{
					"element_type": "text",
					"name": "February 25, 2022",
					"font_style": "italic",
					"align": "right"
				},
				{
					"element_type": "emptyLine"
				},
				{
					"name": "Section - I",
					"element_type": "text",
					"font_style": "bold",
					"font_size": 14,
					"align": "Left"
				},
				{
					"font_family": "Segoe UI",
					"font_style": "Regular",
					"font_size": 12,
					"align": "Left",
					"answers_string": "(() Yes, indeed! () No",
					"question_text": "Can Aspose.OMR process not only scans, but also photos?\r\n",
					"element_type": "ChoiceBox"
				},
				{
					"font_family": "Segoe UI",
					"font_style": "Regular",
					"font_size": 12,
					"align": "Left",
					"answers_string": "((Yes) Yes, indeed! (No) No",
					"question_text": "Aspose.OMR works with any kind of OMR forms: tests, exams, questionnaires, surveys, etc.\r\n",
					"element_type": "ChoiceBox"
				},
				{
					"font_family": "Segoe UI",
					"font_style": "Regular",
					"font_size": 12,
					"align": "Left",
					"answers_string": "(() Very high quality () High quality\r\n() Average quality () Low quality",
					"question_text": "How would you rate the quality of the product:\r\n",
					"element_type": "ChoiceBox"
				},
				{
					"font_family": "Segoe UI",
					"font_style": "Regular",
					"font_size": 12,
					"align": "Left",
					"answers_string": "(1) (2) (3) (4) (5) (6) (7) (8) (9)",
					"question_text": "How likely is it that you would recommend our company to a friend or colleague?\r\n",
					"element_type": "ChoiceBox"
				},
				{
					"element_type": "emptyLine"
				},
				{
					"children": [
						{
							"name": "Section - II",
							"font_style": "Bold",
							"font_size": 14,
							"align": "Left",
							"element_type": "Text"
						},
						{
							"name": "main_container",
							"children": [
								{
									"name": "main_block",
									"children": [
										{
											"name": "product survey",
											"children": [
												{
													"font_family": "Segoe UI",
													"font_style": "Bold",
													"font_size": 12,
													"row_proportions": [
														60,
														20,
														10,
														10
													],
													"name": "How would you rate your total experience?",
													"children": [
														{
															"name": "Score",
															"header_type": "Amount",
															"element_type": "ScoreHeader"
														},
														{
															"name": "Yes",
															"header_type": "Positive",
															"element_type": "ScoreHeader"
														},
														{
															"name": "No",
															"header_type": "Negative",
															"element_type": "ScoreHeader"
														},
														{
															"Score": 5,
															"element_type": "ScoreAnswer",
															"name": "I am enjoy the product."
														},
														{
															"Score": 10,
															"element_type": "ScoreAnswer",
															"name": "I will recommend it to my friends."
														}
													],
													"element_type": "ScoreQuestion"
												}
											],
											"score_group_type": "Table",
											"element_type": "ScoreGroup"
										}
									],
									"column": 1,
									"element_type": "Block"
								}
							],
							"columns_count": 1,
							"element_type": "Container"
						},
						{
							"element_type": "page",
							"children": [
								{
									"name": "1-st",
									"children": [
										{
											"name": "Process",
											"children": [
												{
													"name": "Process",
													"element_type": "writeIn"
												}
											],
											"element_type": "block"
										}
									],
									"element_type": "container"
								}
							]
						}
					],
					"element_type": "Page"
				}
			]
		}
	]
}

Создание опроса в формате PDF из разметки JSON с использованием C#

Мы также можем сохранить сгенерированную форму опроса в документе PDF, выполнив шаги, указанные выше. Однако нам просто нужно вызвать метод SaveAsPdf(строковая папка, строковое имя) вместо метода Save на последнем шаге.

// В этом примере кода показано, как создать Survey OMR и сохранить как PDF из разметки JSON.
// Путь к файлу JSON с разметкой шаблона
string markupPath = @"C:\Files\OMR\SimpleSurvey.json";

// Инициализировать механизм OMR
OmrEngine engine = new OmrEngine();

// Создать шаблон
GenerationResult res = engine.GenerateJSONTemplate(markupPath);

// Сохранить на локальный диск
res.SaveAsPdf(@"C:\Files\OMR\", "SimpleSurvey");
Создайте опрос в формате PDF из разметки JSON с помощью C#

Создайте опрос в формате PDF из разметки JSON с помощью C#.

Получить бесплатную лицензию

Вы можете получить бесплатную временную лицензию, чтобы попробовать библиотеку без ограничений пробной версии.

Вывод

В этой статье мы узнали, как создать шаблон опроса OMR из разметки JSON и создать изображения опроса. Мы также увидели, как программно сохранить сгенерированный опрос в PDF-документе. Кроме того, вы можете узнать больше об Aspose.OMR для .NET API, используя документацию. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.

Смотрите также