1金币
急!生成条码或二维的时候如何得到Btimap格式,
关于条码/二维码的生成问题(write),生成条码或二维码的时候,得到的是RasterImage image,能否得到Bitmap
代码如下:
// 开始生成
using (RasterCodecs codecs = new RasterCodecs())
{
// 创建默认QR码设置
BarcodeData data = BarcodeData.CreateDefaultBarcodeData(BarcodeSymbology.QR);
// 将输入的文字变为UTF8
byte[] buffer = Encoding.UTF8.GetBytes(this.textBox1.Text);
// 设置给Data
data.SetData(buffer);
// 计算QR码大小
writer.CalculateBarcodeDataBounds(LogicalRectangle.Empty, resolution, resolution, data, null);
// 创建图片
LeadRect pixels = data.Bounds.ToRectangle(resolution, resolution);
using (RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
{
// 将QR码写到一个白色的空白图片上
writer.WriteBarcode(image, data, null);
// 科隆图片,否则会被释放
this.rasterImageViewer1.Image = image.Clone();
}
}
|
|