条形码的应用三------从Excel文件中读取条形码
介绍
上一篇文章,我向大家展示了生成多个条形码并存储到Excel文件中的一个方法。后来我又有了个想法;既然条码插入到excel中了,我可不可以从已有的Excel文件中读取这些条码呢?因此我做了些尝试。
解决方法很简单。条码既然已经以图片的形式插入到Excel文件中。因此我只要把这些图片从Excel文件中提取出来。然后用处理 barcode 函数库扫描这些图片,就OK了。
代码
Excel文件的截图:
首先:加载Excel文件
Workbook workbook = new Workbook();
workbook.LoadFromFile("result.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
workbook.LoadFromFile("result.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
其次:从Excel文件中提取图片
PicturesCollection PicCollection = worksheet.Pictures;
Image picture;
for (int i = 0; i < PicCollection.Count; i++)
{
picture = PicCollection[i].Picture;
picture.Save(String.Format("img_{0}.png", i));
}
Image picture;
for (int i = 0; i < PicCollection.Count; i++)
{
picture = PicCollection[i].Picture;
picture.Save(String.Format("img_{0}.png", i));
}
下面是我们提取出来的图片:
最后:通过使用 barcode processing library.扫描提取出来的图片。
for (int i = 0; i < PicCollection.Count; i++)
{
String PicName = String.Format("img_{0}.png", i);
if (File.Exists(PicName))
{
Console.WriteLine(Spire.Barcode.BarcodeScanner.ScanOne(PicName));
}
}
Console.WriteLine("All Done.");
Console.ReadLine();
{
String PicName = String.Format("img_{0}.png", i);
if (File.Exists(PicName))
{
Console.WriteLine(Spire.Barcode.BarcodeScanner.ScanOne(PicName));
}
}
Console.WriteLine("All Done.");
Console.ReadLine();
输出结果
结论
大家都可以用这个方法来尝试下。如果你有更好的方法,欢迎一起讨论交流。