我无法处理条形码问题。我正在从Excel中的文件中传递字符串,例如51453125312453。并且我在像这样的模型中使用Spire.Barcode
private void GenerateBarcode()
{
BarcodeSettings st = new Spire.Barcode.BarcodeSettings();
st.Code128SetMode = Spire.Barcode.Code128SetMode.Auto;
//st.Data = Ilosc.ToString("F6") + "*" + Partia;
st.TextFont = new System.Drawing.Font("Arial", 16);
st.ShowTopText = false;
st.ShowTextOnBottom = true;
st.ImageWidth = 100;
Spire.Barcode.BarCodeGenerator bg = new Spire.Barcode.BarCodeGenerator(st);
HeaderBarcode = bg.GenerateImage().ToString();
//bg.GenerateImage();
}
和我的字符串
private string headerBarcode;
public string HeaderBarcode
{
get
{
return headerBarcode;
}
set
{
if (headerBarcode != value)
{
headerBarcode = value;
GenerateBarcode();
NotifyPropertyChanged(nameof(HeaderBarcode));
}
}
}
在我的打印预览中有一个 System.Drawing.Bitmap而不是条形码。你能帮我做对吗?
答案 0 :(得分:1)
您在此行中的错误:
HeaderBarcode = bg.GenerateImage().ToString();
GenerateImage()-返回位图,因此当您尝试将位图转换为字符串时,将获得类System.Drawing.Bitmap的名称。
您需要另存为图像并打开它。
bg.GenerateImage().Save("Barcode.png");
System.Diagnostics.Process.Start("Barcode.png");