将图像传递给Crystal报表值不在预期范围内

时间:2018-08-12 09:49:28

标签: c# crystal-reports

我正在努力将图像传递到Crystal Report.I正在使用ZXing将BookId从MysqlDatabase转换为QR Code,然后将QR Code放入Picture Box,并将其传递给我的参数imageUrl PictureBox。 现在,我面临此错误值不在预期范围内。 Error

     private void QRPrintForm_Load(object sender, EventArgs e)
        {
         cry.Load(@"C:\Users\ivan\documents\visual studio 2010\Projects\LibrarySystemWithMobile\LibrarySystemWithMobile\QRPrint.rpt");
        ConnectionChecker();
        string query = "SELECT BookId FROM tblbooks WHERE BookId = 101 ";
        MySqlDataAdapter sda = new MySqlDataAdapter(query, cn);
        DataTable dt = new DataTable();
        sda.Fill(dt);
        QrCodeEncodingOptions options = new QrCodeEncodingOptions();

        var qr = new ZXing.BarcodeWriter();
        qr.Options = options;
        qr.Format = ZXing.BarcodeFormat.QR_CODE;
        var result = new Bitmap(qr.Write(dt.Rows[0]["BookId"].ToString()));
        pictureBox1.Image = result;

         //byte[] img = (byte[]) imgs;
         //MemoryStream ms = new MemoryStream(img);


        cry.SetParameterValue("imageUrl", pictureBox1.Image);

        crystalReportViewer1.ReportSource = cry;
        crystalReportViewer1.Refresh();

    }

Myrpt

1 个答案:

答案 0 :(得分:-1)

如果您愿意考虑使用一种更简单的方法,则可以通过用户功能库实现相同的目的。您可以创建自己的文件,也可以创建list of 3rd-party UFLs

这里是description of the QR Code function in my CUT Light UFL。该函数生成并返回QR码图像的路径。在Crystal中,您可以在图片对象的“图形位置”表达式中使用它。然后,它将图片立即替换为QR Code图片。