public virtual int distanceOf(Point other) { int x2 = other.X; int y2 = other.Y; return(QRCodeUtility.sqrt((x - x2) * (x - x2) + (y - y2) * (y - y2))); }
/// <summary> /// Encode the content using the encoding scheme given /// </summary> /// <param name="content"></param> /// <param name="encoding"></param> /// <returns></returns> public virtual Bitmap Encode(String content) { if (QRCodeUtility.IsUniCode(content)) { return(Encode(content, Encoding.Unicode)); } else { return(Encode(content, Encoding.ASCII)); } }
/// <summary> /// Encode the content using the encoding scheme given /// </summary> /// <param name="content"></param> /// <param name="encoding"></param> /// <returns></returns> public virtual Bitmap Encode(String content) { if (QRCodeUtility.IsUniCode(content)) { return(Encode(content, Encoding.GetEncoding("UTF-8"))); // 这样就支持中文了 ( 解码部分也要改下) } else { return(Encode(content, Encoding.ASCII)); } }
public virtual Bitmap Encode(string content, System.Drawing.Color startColor, System.Drawing.Color endColor, LinearGradientMode brushType) { bool flag = QRCodeUtility.IsUniCode(content); Bitmap result; if (flag) { result = this.Encode(content, Encoding.UTF8, startColor, endColor, brushType); } else { result = this.Encode(content, Encoding.ASCII, startColor, endColor, brushType); } return(result); }
public virtual String decode(QRCodeImage qrCodeImage) { sbyte[] data = decodeBytes(qrCodeImage); byte[] byteData = new byte[data.Length]; Buffer.BlockCopy(data, 0, byteData, 0, byteData.Length); Encoding encoding; if (QRCodeUtility.IsUniCode(byteData)) { encoding = Encoding.Unicode; } else { encoding = Encoding.ASCII; } String decodedData; decodedData = encoding.GetString(byteData, 0, byteData.Length); return(decodedData); }