public static string GenerateBarCode(string id) { QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(); qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE; qrCodeEncoder.QRCodeScale = 4; // qrCodeEncoder.QRCodeVersion = 4; qrCodeEncoder.QRCodeVersion = 0; qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M; //System.Drawing.Image image = qrCodeEncoder.Encode("4408810820 深圳-广州 小江"); global::System.Drawing.Image image = qrCodeEncoder.Encode(id); string filename = Guid.NewGuid().ToString() + ".jpg"; string fileMonthPath = System.Web.HttpContext.Current.Server.MapPath(@"~\UploadFile") + "\\" + DateTime.Now.ToString("yyyyMM"); if (!System.IO.Directory.Exists(fileMonthPath)) { System.IO.Directory.CreateDirectory(fileMonthPath); } string filepath = fileMonthPath + "\\" + filename; global::System.IO.FileStream fs = new global::System.IO.FileStream(filepath, global::System.IO.FileMode.OpenOrCreate, global::System.IO.FileAccess.Write); image.Save(fs, global::System.Drawing.Imaging.ImageFormat.Jpeg); fs.Close(); image.Dispose(); return(@"../../UploadFile/" + DateTime.Now.ToString("yyyyMM") + "/" + filename); }
public static byte[] GetBytes(global::System.Drawing.Image image) { MemoryStream stream = new MemoryStream(); image.Save(stream, ImageFormat.Jpeg); return(stream.ToArray()); }
/// <summary> /// 直接將 System.Drawing.Image 轉為 Stream /// </summary> /// <param name="image"></param> /// <returns></returns> public static Stream ToStream(this global::System.Drawing.Image image) { var ms = new MemoryStream(); image.Save(ms, ImageFormat.Jpeg); ms.Position = 0; return(ms); }
/// <summary> /// Saves the encoded image to a stream. /// </summary> /// <param name="image">The image to save</param> /// <param name="quality">The quality desired (a value between 1 and 100).</param> /// <param name="format">The <see cref="T:System.Drawing.Imaging.ImageFormat" /> to save the image as.</param> /// <returns></returns> public static Stream ToStream(global::System.Drawing.Image image, long quality, ImageFormat format) { MemoryStream stream = new MemoryStream(); ImageCodecInfo encoder = null; foreach (ImageCodecInfo info2 in ImageCodecInfo.GetImageEncoders()) { if (info2.MimeType == "image/jpeg") { encoder = info2; } } EncoderParameter parameter = new EncoderParameter(Encoder.Quality, quality); EncoderParameters encoderParams = new EncoderParameters(1); encoderParams.Param[0] = parameter; image.Save(stream, encoder, encoderParams); return(stream); }