
Como imprimir um código de barras em ASP.NET usando C#
Este artigo demonstrará como imprimir imagens de código de barras em Aplicações Web ASP.NET usando C#. O MVC Framework será utilizado neste exemplo, mas você também pode usar Web Forms ASP.NET, Windows Forms ou Web API conforme suas necessidades.
Um conhecimento básico do MVC Framework ASP.NET dará uma melhor compreensão deste artigo.
Como Imprimir Arquivos de Código de Barras em C#
- Instalar a biblioteca C# para imprimir arquivo de código de barras
- Configurar modelo e controlador
- Utilize o método
CreateBarcodepara criar código de barras em C# - Configure a visualização para exibir o código de barras gerado.
- Imprima a página da web que contém a imagem do código de barras usando uma impressora ou um software de impressão para PDF.
Crie um Projeto MVC
Abra o Microsoft Visual Studio. Clique em Criar Novo Projeto > Selecione Aplicação Web ASP.NET nos templates > Pressione Next > Nomeie o seu Projeto > Pressione Next > Selecione MVC > Clique no Botão Criar. O projeto será criado conforme mostrado abaixo.
Criar um novo projeto ASP.NET
Adicionar Modelo
Clique com o botão direito na pasta Models > Adicionar > Classe....
Navegar para adicionar Diálogo de Classe
Uma nova janela será aberta. Nomeie sua classe como BarcodeModel.
Escreva o seguinte código na classe modelo.
using System.ComponentModel.DataAnnotations;
public class BarcodeModel
{
[Display(Name ="Barcode File Name")]
public string FileName { get; set; }
[Display(Name = "Barcode Content")]
public string BarcodeContent { get; set; }
}Imports System.ComponentModel.DataAnnotations
Public Class BarcodeModel
<Display(Name :="Barcode File Name")>
Public Property FileName() As String
<Display(Name := "Barcode Content")>
Public Property BarcodeContent() As String
End ClassO FileName será usado para obter o nome da imagem do código de barras do usuário. O BarcodeContent é usado para obter o conteúdo para o código de barras.
Adicionar Controlador
Em seguida, um Controller é adicionado ao projeto. Ele se comunicará com um View e Model usando o modelo MVC. O código para gerar códigos de barras consiste em apenas duas ou três linhas. Portanto, não há necessidade de uma classe separada; em vez disso, o código é adicionado dentro do Controlador.
Para adicionar o Controlador, clique com o botão direito na pasta Controladores > Adicionar > Controlador. Uma nova janela será aberta. Selecione MVC 5 Controlador Vazio. Clique no botão Adicionar. Uma nova caixa aparecerá.
Caixa de Diálogo Adicionar Controlador
Escreva o nome do seu Controlador, por exemplo, BarcodeController. Clique no botão Adicionar. Um novo Controlador será gerado.
O próximo passo é instalar a biblioteca de código de barras.
Instalar a Biblioteca de Código de Barras
A biblioteca IronBarcode é recomendada como uma biblioteca de terceiros para gerar códigos de barras. É gratuita para desenvolvimento e oferece múltiplas funcionalidades para personalizar códigos de barras, como adicionar um logotipo a uma imagem de código de barras, adicionar valor abaixo ou acima do código de barras, adicionar anotações abaixo ou acima do código de barras, redimensionar o código de barras, salvar o código de barras em múltiplos formatos de imagem, etc. Para mais detalhes, por favor, clique aqui.
Vá para o Console do Gerenciador de Pacotes. Digite o seguinte comando e pressione Enter.
Este comando instalará a biblioteca IronBarcode no projeto.
Gerar o Código de Barras
Em seguida, adicione o seguinte código de exemplo ao controlador.
using System.IO;
using System.Linq;
using System.Web.Mvc;
using IronBarCode;
public class BarcodeController : Controller
{
[HttpPost]
public ActionResult CreateBarcode(BarcodeModel model)
{
try
{
// Create a barcode with the specified content and encoding
var MyBarCode = BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128);
// Define the path where the barcode image will be saved
string path = Server.MapPath("~/Files/");
string filepath = Path.Combine(path, model.FileName);
// Add the barcode value text above the barcode
MyBarCode.AddBarcodeValueTextAboveBarcode();
// Save the generated barcode as a JPEG file
MyBarCode.SaveAsJpeg(filepath);
// Retrieve the first file from the directory as a sample image
string image = Directory.GetFiles(path).FirstOrDefault();
// Pass the image path to the view
ViewBag.FileName = image;
return View();
}
catch
{
// Handle any exceptions that occur
return View();
}
}
}Imports System.IO
Imports System.Linq
Imports System.Web.Mvc
Imports IronBarCode
Public Class BarcodeController
Inherits Controller
<HttpPost>
Public Function CreateBarcode(ByVal model As BarcodeModel) As ActionResult
Try
' Create a barcode with the specified content and encoding
Dim MyBarCode = BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128)
' Define the path where the barcode image will be saved
Dim path As String = Server.MapPath("~/Files/")
Dim filepath As String = System.IO.Path.Combine(path, model.FileName)
' Add the barcode value text above the barcode
MyBarCode.AddBarcodeValueTextAboveBarcode()
' Save the generated barcode as a JPEG file
MyBarCode.SaveAsJpeg(filepath)
' Retrieve the first file from the directory as a sample image
Dim image As String = Directory.GetFiles(path).FirstOrDefault()
' Pass the image path to the view
ViewBag.FileName = image
Return View()
Catch
' Handle any exceptions that occur
Return View()
End Try
End Function
End Classtry-catché usado para capturar qualquer exceção em tempo de execução.- A função
CreateBarcodefornecida pela classeBarcodeWriterleva dois argumentos: o conteúdo do código de barras e o esquema de codificação. Além disso, também aceita 11 outros argumentos opcionais que incluem altura máxima, largura máxima, e assim por diante. - A função
Server.MapPathé usada para mapear o caminho onde as imagens de código de barras geradas serão salvas. O métodoPath.Combinecombinará o caminho e o nome da imagem do código de barras. - A função
AddBarcodeValueTextAboveBarcodeadicionará o valor do código de barras. IronBarcode fornece outras configurações de código de barras, tais comomax-height,max-width,barcode,color, e assim por diante. Você pode explorar e usar os vários parâmetros. - A função
SaveAsJpegaceita o caminho como argumento e salva os códigos de barras gerados naquele caminho específico. - O método
Directory.GetFilesobterá a imagem do código de barras recém gerada. ViewBag.FileNameé usado para enviar o caminho da imagem do código de barras para a visualização para exibir a imagem do código de barras gerado.
Códigos QR também podem ser gerados da mesma forma, mudando o esquema de codificação de Code128 para QRCode.
Adicionar Visão
O próximo passo é fornecer o lado do cliente para esta Aplicação Web ASP.NET adicionando uma nova Visão. Clique com o botão direito no nome do método do Controlador e clique no botão "Adicionar Visão".
Navegar para adicionar Caixa de Diálogo de Visão
Uma nova janela será aberta. Selecione MVC 5 Visão, e clique no botão Adicionar.
Um novo aviso aparecerá como mostrado abaixo.
Caixa de Diálogo Adicionar Visão
Nomeie sua Visão e clique no botão Adicionar. Um novo arquivo .cshtml será criado.
Adicione o seguinte código dentro da sua visão recém-gerada.
@model GenerateBarcodeMVC.Models.BarcodeModel
@{
ViewBag.DisplayBarcode = false;
}
<h2>Create</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>GenerateBarcode</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.FileName, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.FileName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.FileName, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.BarcodeContent, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.BarcodeContent, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.BarcodeContent, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<img src="~/Files/@Path.GetFileName(ViewBag.FileName)" alt="Barcode" />
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
Em seguida, clique com o botão direito dentro da Visão, e clique no Botão Executar para Navegador.
Saída
Executar Aplicativo Web para exibir o formulário de criação
Digite o nome da imagem do seu código de barras e o conteúdo do código de barras conforme mostrado abaixo:
Insira o conteúdo do seu código de barras
Clique no botão Criar . A imagem do código de barras será gerada e exibida na tela conforme mostrado abaixo.
Gerar um código de barras a partir de uma URL
Resumo
Este tutorial demonstrou como gerar códigos de barras usando ASP.NET em C#, combinado com o Framework MVC. O Microsoft Visual Studio é usado como IDE. IronPDF é uma biblioteca de terceiros que é gratuita para desenvolvimento e compatível com todas as versões do .NET Framework, incluindo a versão recém-lançada. IronBarcode é rápido e fornece múltiplas funcionalidades para trabalhar com códigos de barras. Também pode gerar códigos QR especificando diferentes tipos.
Existem outras bibliotecas úteis, como IronPDF para trabalhar com documentos PDF, IronXL para trabalhar com documentos Excel e IronOCR para trabalhar com OCR. Atualmente, você pode obter todas as cinco bibliotecas pelo preço de apenas duas adquirindo o pacote completo Iron Suite. Visite nossa página de licenciamento para mais detalhes.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.
Artigos relacionados


