Skapa enkätformulär från JSON Markup med C#

Undersökningar spelar en viktig roll i marknadsundersökningar för företag eller organisationer för att växa sina företag. De använder enkätformulär för att samla in kundfeedback, användarrecensioner eller åsikter. Enkätformulär innehåller vanligtvis flervalsfrågor för att markera användarinmatningar. Vi kan enkelt generera undersökningar, frågesporter och färdiga OMR-svarsblad från JSON-uppmärkning programmatiskt. JSON tillåter lagring och transport av data som kan analyseras och bearbetas programmatiskt. I den här artikeln kommer vi att lära oss hur man skapar ett enkätformulär från JSON-uppmärkning med C#.

Följande ämnen ska behandlas i den här artikeln:

C# OMR API för att skapa enkätformulär från JSON

För att skapa enkätformulär från JSON-uppmärkning kommer vi att använda Aspose.OMR for .NET API. Det gör det möjligt att designa, skapa och känna igen svarsblad, tester, MCQ-uppsatser, frågesporter, feedbackformulär, enkäter och omröstningar.

Vänligen antingen ladda ned API:ets DLL eller installera den med NuGet.

PM> Install-Package Aspose.OMR

Skapa OMR-undersökningsformulär från JSON Markup med C#

Vi kan skapa ett enkätformulär från JSON-uppmärkning genom att följa stegen nedan:

  • Skapa först en instans av klassen OmrEngine.
  • Anrop sedan metoden GenerateJSONTemplate med JSON-markeringsfilsökväg som argument.
  • Efter det får du resultat som ett objekt i klassen GenerationResult.
  • Till sist, anropa metoden Save för att spara mallbilder och OMR-mall. Den tar sökvägen till den lokala diskmappen och namnet på mallen som argument.

Följande kodexempel visar hur man skapar en OMR-undersökningsformulärmall från JSON-uppmärkning med C#.

// Detta kodexempel visar hur man genererar enkätbild och OMR från JSON-uppmärkning.
// Sökväg till JSON-filen med Template Markup
string markupPath = @"C:\Files\OMR\SimpleSurvey.json";

// Initiera OMR-motorn
OmrEngine engine = new OmrEngine();

// Skapa mall
GenerationResult res = engine.GenerateJSONTemplate(markupPath);

// Spara på den lokala disken
res.Save(@"C:\Files\OMR\", "SimpleSurvey");

Vi har använt följande JSON-mallmarkering i kodexemplet som nämns ovan.

{
	"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"
				}
			]
		}
	]
}

Skapa PDF-enkätformulär från JSON i C#

Vi kan också spara det genererade enkätformuläret i ett PDF-dokument genom att följa stegen ovan. Men vi behöver bara anropa metoden SaveAsPdf(strängmapp, strängnamn) istället för metoden Spara i det sista steget.

// Detta kodexempel visar hur man genererar Survey OMR och Save as PDF från JSON-uppmärkning.
// Sökväg till JSON-filen med Template Markup
string markupPath = @"C:\Files\OMR\SimpleSurvey.json";

// Initiera OMR-motorn
OmrEngine engine = new OmrEngine();

// Skapa mall
GenerationResult res = engine.GenerateJSONTemplate(markupPath);

// Spara på den lokala disken
res.SaveAsPdf(@"C:\Files\OMR\", "SimpleSurvey");
Skapa enkät i PDF från JSON Markup med C#

Skapa PDF-enkätformulär från JSON i C#.

Skaffa en gratis licens

Du kan få en gratis tillfällig licens för att prova biblioteket utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har vi lärt oss hur man skapar en OMR-undersökningsmall från JSON-uppmärkning och genererar enkätbilder. Vi har också sett hur man sparar den genererade enkäten i ett PDF-dokument programmatiskt. Dessutom kan du lära dig mer om Aspose.OMR för .NET API med hjälp av dokumentation. I händelse av oklarheter är du välkommen att kontakta oss på vårt gratis supportforum.

Se även