首页 文章

Visual Studio 2008附带的Crystal Reports软件是否允许您在报表上放置条形码

提问于
浏览
0

我们使用Visual Studio 2008附带的水晶报告创建了几个报告 . 我们现在需要在这些报告中包含条形码 . 这可以通过visual studio 2008及其包含的水晶报告版本来完成吗? VS 2010(从业务对象下载visual studio 2010的水晶报告之后)怎么样?

有没有其他方法可以免费执行此操作,还是我们必须购买水晶报告或第三方软件才能执行此操作?

2 回答

  • 0

    我在其中一个论坛上找到了以下解决方案,但我不记得哪一个,(请告诉我,如果你知道原帖,我会链接到它 . )

    以下是在crysal报告中添加条形码所需的步骤 .

    1)将一个类型为byte array的列添加到报表中使用的数据集中 . 2)打开crytal报告并验证数据库,以便在crytal报告中更新新添加的列 . 3)在水晶设计器中,拖动设计图面上的新数据库列并将其放在所需位置 . 4)在生成报告的方法中,添加以下代码以将条形码图像的内容填充到新列中 .

    Dim fsImageFile As FileStream
    Dim brReader As BinaryReader
    fsImageFile = New FileStream(strBarcodeImageFilePath, FileMode.Open)
    brReader = New BinaryReader(fsImageFile)
    
    Dim bImageByte(Convert.ToInt32(fsImageFile.Length + 1)) As Byte
    bImageByte = brReader.ReadBytes(Convert.ToInt32(fsImageFile.Length))
    
    drMyCrystalReport.BarcodeImage = bImageByte
    

    在上面的示例中,drMyCrystalReport是数据集的数据行,BarcodeImage是添加到数据集的列 . 此代码将图像文件的内容添加到数据库列,并且Crystal列表会在添加此列时显示该内容 .

  • 0

    这取决于您要打印的条形码符号系统 . 对于Code 39条形码,您只需将字符串括在一对"*"字符之间并使用Code39字体;它是自我检查所以不需要进一步处理 . 我使用Free3of9.ttf工作正常 .

    代码128需要校验位,并且需要一个函数来计算将在字符串末尾使用的正确字符(与字体相关)以形成完整的条形码 . 这些字体中有一些,包含各种语言的函数库 . 其中一个来自Brian Dobson(FreeBarcodeFonts)并且似乎是一个相当完整的解决方案,包括用于Windows上的Crystal Reports的DLL .

    我没有评论您使用动态生成的图像文件的想法,因为Crystal Reports是一个非常模糊的工具 . 听起来似乎有道理,即使您是通过数据库中的存储过程完成的 .

    其他符号可用,大多数是商业的 . 在网上搜索“条形码字体”和您的符号系统名称以获得大量结果 .

相关问题