1. 程式人生 > >c# 生成條形碼標識類

c# 生成條形碼標識類

using System;
using System.IO;
using System.Drawing;
using System.Web.UI;

namespace WebUI.WebControl
{
 /// <summary>
 /// Class1 的摘要說明。
 /// </summary>
 public class CreateImage
 {
  public CreateImage()
  {
   //
   // TODO: 在此處新增建構函式邏輯
   //
  }


  
  //生成圖片
  public void CreateCodeLogo(string code)
  {
   
   long len = code.Length;
   string lastString = "";
   char[] list = new char[len+1];
   

   list = code.ToCharArray();

   for( int i = 0; i < list.Length; i++)
   {
    lastString += this.ConvertToBinaryString(list[i].ToString());
    //numList[i] = this.ConvertToBinaryString(list[i].ToString());
   }
   
   char[] numList = new char[lastString.Length + 1];
   numList = lastString.ToCharArray();


   Bitmap image = new Bitmap(200,140);
   Graphics g = Graphics.FromImage(image);

   //string thefullname = "nowtime.gif";
   g.Clear(Color.White);
   //g.DrawString(lastString,new System.Drawing.Font("Courier New", 12),new SolidBrush(Color.Red),10,110);

   Pen penBlack = new Pen(Color.FromArgb(255, 0, 0, 0),2.5F);
   Pen penWhite = new Pen(Color.White,2.5F);

   int j = 0;

   for (float k = 10; j < numList.Length; k += 2.5F,j++)
   {
    if ( numList[j].ToString() == "1")
    {
     g.DrawLine(penBlack, k, 10, k, 110);
    }
    else
    {
     g.DrawLine(penWhite, k, 10, k, 110);
    }

    if ( j % 4 == 0)
    {
     g.DrawString(list[j/4].ToString(),new System.Drawing.Font("Courier New", 12),new SolidBrush(Color.Red),k,112);
     //k += 5; 
    }
   }
   
   image.Save(@"c://codeLogo.gif",System.Drawing.Imaging.ImageFormat.Gif);

  }

  //將字串數值轉換為二進位制字串數值
  public string ConvertToBinaryString(string buf)
  {
   int[] temp= new int[20];
   string binary;
   int val=0,i=0,j;
   
   //先將字元轉化為十進位制數
   try
   {
    val = Convert.ToInt32(buf);
   }
   catch
   {
    val = 0;
   }
   
   if(val==0)
   {
    return("0000");
   }
   
   i=0;
   while(val!=0)
   {
    temp[i++] = val % 2;
    val /= 2;
   }
  
   binary = "";
 
   for ( j=0; j<= i-1; j++)
   {
    binary += (char)(temp[i-j-1]+48);
   }
 
   if (binary.Length < 4)   //如果小於4位左邊補零
   {
    int len = 4 - binary.Length;
    string str = "";

    while(len > 0)
    {
     str += "0";
     len --;
    }

    binary = str + binary;
   }

   return(binary);
  }

  private string CurrentPath(string physicalPath)
  {
   int ilastSlash = physicalPath.LastIndexOf(@"/");
   int length = physicalPath.Length - ilastSlash;
   return physicalPath.Remove(ilastSlash,length)[email protected]"/";
  }
 }
}

相關推薦

c# 生成條形碼標識

using System;using System.IO;using System.Drawing;using System.Web.UI;namespace WebUI.WebControl{ /// <summary> /// Class1 的摘要說明。 //

C#實現用於生成條形碼

clas res ssi win 聲明 plugin 鏈表 用法 style 本文實例講述了C#實現用於生成條形碼的類。分享給大家供大家參考。具體如下: 這個C#類可以用來生成39碼 12位標準條形碼using System.Collections; using Syst

c#生成條形碼

pac space content for enc txt direct line draw 一、生成EAN13的一維碼 // 1.設置條形碼規格 EncodingOptions encodeOption = new EncodingOptions(); encodeOp

史上最簡潔C# 生成條形碼圖片思路及示例分享

else 應用 align current 有一個 += 類別 num namespace 在網上看到一些人寫關於條形碼的代碼都很長,有的甚至拿來賣,所以查了下資料,希望能對大家有幫助。 我的實現原理是: 其實Windows本身就有一個字體是用來顯示條形碼的。 只要將數字

C#生成code128條形碼的方法

internal 內容 sta 必須 mil 字符串 char bit array 本文實例講述了物流條形碼的C#實現方法,分享一下供大家參考。具體實現方法如下: 主要功能代碼如下:using System; using System.Collections.Generi

C#生成不重復隨機字符串

content tran () fff ati 書寫 get mar title 本文實例講述了C#生成不重復隨機字符串類。分享給大家供大家參考。具體如下: 這個C#類用於隨機產生不重復的字符串,可以指定字符串範圍,可以指定要產生字符串的長度using System; n

C# 利用VS自帶的WSDL工具生成WebService服務

web 路徑 引用 src cnblogs logs png program 菜單 WebService有兩種使用方式,一種是直接通過添加服務引用,另一種則是通過WSDL生成。 添加服務引用大家基本都用過,這裏就不講解了。 那麽,既然有直接引用的方式,為什麽還要通過WSDL

C#生成樹形結構泛型

接口 message HERE mes ict test bsp ace spa C#生成樹形結構泛型類,使用方法: ToTree<ShowMessageUpdatesTableTreeViewModel>.ToDo(models) public class

一種用C++自帶的生成服從正態分佈的隨機數。

今天寫關於深度學習的程式碼時,裡面要用服從標準正態分佈的隨機數初始化權值,就是matlab裡面那個randn函式,網上找了很多方法,最後發現C++本身就有自帶的方法生成服從正態分佈的隨機數序列。下面給出C++程式碼: C++程式碼: #include &

C#訪問帶有安全協議的Webservice(https、生成wsdl代理

1.最近公司上專案,其中有一個小欄目 是查詢身份證的,就是輸入身份證碼和姓名返回你的地址和圖片的這種,也就是公安部全國公民身份資訊系統(NCIIS)我是第一次,中間有幾個問題第一個難題是這樣的,要驗證證書,當時給文件的時候只有一個地址,也只有安裝上了證書檔案才能訪

c# 生成微信公眾帳號帶引數二維碼

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Web

C# 標識

<span style="font-family: Arial, Helvetica, sans-serif;">using UnityEngine;</span>using System.Collections; public class Fla

【原創】開源Math.NET基礎數學庫使用(14)C#生成安全的隨機數

  真正意義上的隨機數(或者隨機事件)在某次產生過程中是按照實驗過程中表現的分佈概率隨機產生的,其結果是不可預測的,是不可見的。而計算機中的隨機函式是按照一定演算法模擬產生的,其結果是確定的,是可見的。我們可以這樣認為這個可預見的結果其出現的概率是100%。所以用計算機隨機函式所產生的“隨機數”並不隨機,

C#生成Code39條形碼而非條形碼字型的方法

/// <summary> /// Code39一維碼生成類 /// http://www.cnblogs.com/bluescreen/p/4689351.html /// </summary> public class CSharpCode39 { #region

c#生成靜態html檔案,封裝

由於這段時間比較輕鬆,於是想到很多的企業網站,新聞網站需要將頁面靜態化,於是寫了個封裝類來實現靜態檔案的生成,思路比較簡單,但未完善,網友可根據自己的思路將此類擴充套件,運用了簡單工廠模式(本來剛開始看設計模式,是個好書),好了,廢話不多說,先來看看靜態類的父類:StaticBase(抽象類)

C#利用Zxing.net生成條形碼和二維碼並實現列印的功能

    開篇:zxing.net是.net平臺下編解條形碼和二維碼的工具。 Step1:使用VS2010新建一個窗體程式專案: Step2:新增三個類:分別是BarCodeClass.cs、DocementBase.cs、imageDocument.cs。(下

C#生成唯一機器標識

public static string getUniqueID(){ try{ ManagementObjectSearcher mbs = new ManagementObjectSearcher("Select * From Win

c#生成二維碼,一維碼(條形碼)

傳統 lin family 底部 之一 提供商 tex 圖像 字節 一、一維碼 1.一維條碼即指條碼條和空的排列規則,常用的一維碼的碼制包括:EAN碼、39碼、交叉25碼、UPC碼、128碼、93碼,ISBN碼,及Codabar(庫德巴碼)等。 2.一維

ASP.NET中C#生成二維碼

保存 mss 軟件 clear 所有 str drawing for visual ASP.NET中用C#語言編寫網頁,將自己輸入的文字生成二維碼。 工具/原料 已安裝好VS2010或其他版本VS軟件的電腦一臺 1、新建 1

C#基礎知識-引用型和值型的區別(六)

值類型 type 調用 執行 new 內存堆 ada ont 不同類 在第一篇中我們介紹了C#中基本的15種數據類型,這15種數據類型中又分為兩大類,一種是值類型,一種是引用類型。值類型有sbyte、short、long、int、byte、ushort、uint、u