打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Barcode Professional for ASP.NET使用教程:如何在HTML支持的DPI范围内显示高清条码

我们知道高质量的条码更能达到我们的目的,然而图像DPI与图像的大小成正比,即DPI越高,图片文件越大。

可能你将600DPI的图片显示在HTML上很容易,然而你会发现图片占满了整个页面,因为大多数的HTML显示分辨率为96DPI。那么今天将分享用Barcode Professional for ASP.NET在HTML支持的DPI范围内显示高清条码。代码仅供参考。

注意:我们使用的是Visual Studio 2005 (Visual Web Developer) ,不过有些VS.NET也可以使用。

步骤

  • 用Visual Studio 2005创建一个ASP.NET Web项目。
  • 删除项目中创建的所有的ASPX 文件。
  • 如果有需要可以创建一个BIN文件夹,添加一个引用到Barcode Professional for ASP.NET集合。
  • 在Generic Handler 中添加一个新的项目类型命名BarcodeGen.ashx.
  • 在BarcodeGen.ashx文件中用ProcessRequest方法输入下列代码,这个方法将通过字符串查询得到128码符号编码值和输出条码图像分辨率。

VB

Dim dpi As Single = 96.0  Try dpi = Single.Parse(context.Request.QueryString("dpi")) Catch  End Try  Dim valueToEncode As String = context.Request.QueryString("valueToEncode")  Dim bcp As New Neodynamic.WebControls.BarcodeProfessional.BarcodeProfessional() bcp.Symbology = Neodynamic.WebControls.BarcodeProfessional.Symbology.Code128 bcp.Code = valueToEncode  bcp.BarWidth = 0.01Fbcp.BarHeight = 0.5Fcontext.Response.ContentType = "image/jpeg" context.Response.BinaryWrite(bcp.GetBarcodeImage(System.Drawing.Imaging.ImageFormat.Jpeg, dpi))

C#

float dpi = 96.0f;  try { dpi = float.Parse(context.Request.QueryString["dpi"]); } catch { }  string valueToEncode = context.Request.QueryString["valueToEncode"];  Neodynamic.WebControls.BarcodeProfessional.BarcodeProfessional bcp = new Neodynamic.WebControls.BarcodeProfessional.BarcodeProfessional(); bcp.Symbology = Neodynamic.WebControls.BarcodeProfessional.Symbology.Code128; bcp.Code = valueToEncode;  bcp.BarWidth = 0.01f; bcp.BarHeight = 0.5f;  context.Response.ContentType = "image/jpeg";context.Response.BinaryWrite(bcp.GetBarcodeImage(System.Drawing.Imaging.ImageFormat.Jpeg, dpi));
  • 然后将新项目添加到HTML页面项目,这个HTML页面将显示600DPI的条码图像,这是通过用JS代码在其他浏览器上显示96DPI的HTTP处理。输如下面的代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>HTML Barcode image with DPI support</title> <script type="text/javascript">  var imageUrlGen = "BarcodeGen.ashx"; var imageID = "MyBarcodeImage"; var txtValueToEncodeID = "MyValueToEncode";  var tmpImage; var dpi = 600;  function CheckForLoadedImage() { if(tmpImage.complete) { var img = document.getElementById(imageID);  img.width = tmpImage.width * 96 / dpi; img.height = tmpImage.height * 96 / dpi;  img.src = tmpImage.src;  clearTimeout("CheckForLoadedImage()"); } else { setTimeout(“checkforloadedimage()”,500); }  }  function GetBarcodeImage() { var valueToEncode = document.getElementById(txtValueToEncodeID).value;  tmpImage = new Image(); tmpImage.src = imageUrlGen + "?valueToEncode="  + valueToEncode + "&dpi=" + dpi;  CheckForLoadedImage(); }  </script> </head> <body> <p> <b>Barcode Professional in a HTML page with DPI support</b> </p> <p> <img id="MyBarcodeImage" alt="" src="" /> </p> <p> Enter a value to encode:<br /> <input id="MyValueToEncode" type="text" name="MyValueToEncode" /> </p> <p> <input id="Button1" type="button" value="Get Barcode at 600 DPI..." name="Button1" onclick="GetBarcodeImage()" /> </p> </body></html>

完成,虽然图像的大小是经过JS代码生成的,但生成图像的质量是与打印结果一致。

Barcode Professional for ASP.NET>>

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于Metronic的Bootstrap开发框架经验总结(14)--条码和二维码的生成及打印处理
Excel函数公式:工号到条码的制作,你会吗?
条码
机械设计及生产英语词汇
如何判断斑马打印机105SL的分辨率点数
利用这款软件,制作属于你的身份条形码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服