我有一个带有类作为数据源的水晶报表。我有一个字节数组,我将位图传递给它,但它没有打印在水晶报表上。请参阅下面我的代码。
var d = new Label();
var eanCreator = new CreateEan();
var bf = new BinaryFormatter();
using (var ms = new MemoryStream())
{
bf.Serialize(ms, eanCreator.createBitmap(1.5f, "1234567890"));
var byteArray = ms.ToArray();
var ld = new LabelData
{
PartNumber = "123",
EanData = byteArray
};
d.SetDataSource(new List<LabelData> {ld});
d.PrintOptions.PrinterName = @"\\SERVER\Printer";
d.PrintToPrinter(1, false, 0, 0);
}
打印出来,除了图像之外的所有数据都存在。我正在使用一个类来创建 EAN 条形码,这部分可以正确呈现为图像文件,但在 Crystal Reports 中无法识别它。
此方法与您的代码类似。我一直使用这种方法将图像发送到水晶报表,没有任何问题。
public static byte[] ConvertImageToByte(Image Value)
{
if (Value != null)
{
MemoryStream fs = new MemoryStream();
((Bitmap)Value).Save(fs, ImageFormat.Jpeg);
byte[] retval= fs.ToArray();
fs.Dispose();
return retval;
}
return null;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)