一、什么是FastReport?

FastReport是功能齐全的报表控件,使开发者可以快速并高效地为·NET/VCL/COM/ActiveX应用程序添加报表支持。

FastReport有很多产品,如FastReport.Net、FASTREPORT VCL等,这里不一一去做概述,描述下FastReport.Net的具体使用。

FastReport.Net

A、是一款适用于Windows Forms, ASP.NET和MVC框架的功能齐全的报表分析解决方案。

B、可用在Microsoft Visual Studio 2005到2015,支持.Net Framework 2.0到4.x。

C、2013版支持AJAX,云存储,地图编辑器和自定义标签。

二、使用FastReport可以完成什么功用?

打印预览、打印设计、导出PDF、根据数据源生成报表等

三、如何使用FastReport?

(1)下载安装

下载地址:链接: https://pan.baidu.com/s/1wAx3A-chefjgVUwWjvzDLw 密码: 2dca

解压后,见以下文件:

(2)打开程序,并进行界面汉化

A、双击Demo.exe打开程序

B、在弹出窗体中,点击设计按钮

弹出设计界面:

C、点击菜单File-- Select Language

弹出界面如下:界面已汉化

(3)设计模板:

A、根据情况,可适当删除画布中的位置,只保留Data数据区部分,删除方式见下图:

在对应模块的空白区域,点击右键--删除即可:

B、设置页面的尺寸:(很重要,与打印的面单纸大小要一致,如A4纸,或自定义的尺寸)

弹出设置窗口,如下:

点击确定后,画布会自动调整尺寸大小

C、点击左侧的工具,进行排版设计(此处以一个条形码做为案例):

点击条形码按钮,弹出编码方式,这里选择Code128(原因是生成的数据会做压缩,条形码更简洁,见下图有对比)

点击后,把鼠标移动到data编辑区,即可以看到一个条形码随鼠标移动:

如需添加文字,左侧的工具栏也有对应的按钮。

(4)保存模板:.frx后缀名

(5)电脑连接好打印机,安装好驱动,保证在打印机列表中,可以选择。

(6)在项目中使用模板,进行打印操作

 private bool GodownEntryPrint(string instorageNumber, string localhostCode)
{
try
{
//创建Report对象
var report = new Report();
//获得模板的路径
string reportLabel = Application.StartupPath + @"\" + "Report\\GodownEntry.frx";
//判断文件是否存在
if (!File.Exists(reportLabel))
{
MessageTool.Show("标签模板不存在!请先获取标签模板!");
}
//清空
report.Clear();
//加载报表模板
report.Load(reportLabel);
//获取模板中,对应的TextObject节点-替换模板内容
var textObject = report.FindObject("Text2") as TextObject;
if (textObject != null) textObject.Text = localhostCode; //库位编码 //同理:一/二维码文本替换
var barcodeObject = report.FindObject("Barcode1") as BarcodeObject;
if (barcodeObject != null)
{
barcodeObject.Text = instorageNumber; //入库单号
//更改一维码的生成方式为Code128码
barcodeObject.Barcode = new Barcode128();
} //预览面单
//report.Show();
//默认不显示打印机选择页面
report.PrintSettings.ShowDialog = false;
//获取打印机的名称,这里是通过封装的方法去获取打印机名,这里可以直接指定“打印机名称”;
string strPrintName = PrinterHelper.GetPrintSetting("LocationPrint");
if (string.IsNullOrWhiteSpace(strPrintName))
{
MessageTool.Show("未设置打印机!");
return false;
}
//当前操作打印机
report.PrintSettings.Printer = strPrintName;
//启动打印
report.Print();
}
catch (Exception)
{
return false;
}
return true;
}

FastReport快速实现条形码,二维码面单打印的更多相关文章

  1. DevExpress 使用条形码二维码控件打印

    参考文章: https://www.cnblogs.com/wuhuacong/p/6112976.html 转载请注明出处:撰写人:伍华聪 其实主要是二维码的实现,在使用条形码控件时,又一个属性Sy ...

  2. FastReport.NET 中使用二维码

    FastReport.net 是一个比较好用的报表控件,在编辑器中编辑以后 可以直接在vs 中引用. 最近在研究fastreport 现在讲解一下 如何使用它的二维码. fastreport 没有单独 ...

  3. Opencv+Zbar二维码识别(标准条形码/二维码识别)

    使用Opencv+Zbar组合可以很容易的识别图片中的二维码,特别是标准的二维码,这里标准指的是二维码成像清晰,图片中二维码的空间占比在40%~100%之间,这样标准的图片,Zbar识别起来很容易,不 ...

  4. Google API快速生成QR二维码

    Google API快速生成QR二维码 现在来说生成二维码最简单的方法是使用Google Chart API来实现,再次膜拜Google大神- Google Chart API是一套可以让你在线生成报 ...

  5. ZBar 是款桌面电脑用条形码/二维码扫描工具

    ZBar 是款桌面电脑用条形码/二维码扫描工具 windows平台python 2.7环境编译安装zbar   最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本 ...

  6. Python zxing 库解析(条形码二维码识别)

    各种扫码软件 最近要做个二维码识别的项目,查到二维码识别有好多开源的不开源的软件 http://www.oschina.net/project/tag/238/ Zbar 首先试了一下Zbar,pyt ...

  7. 在DevExpress程序中使用条形码二维码控件,以及进行报表打印处理

    在很多业务系统里面,越来越多涉及到条形码.二维码的应用了,不管在Web界面还是WInform界面都需要处理很多物料相关的操作,甚至很多企业为了减少录入错误操作,为每个设备进行条形码.二维码的标签,直接 ...

  8. Java 条形码 二维码 的生成与解析

    Barcode简介 Barcode是由一组按一定编码规则排列的条,空符号,用以表示一定的字符,数字及符号组成的,一种机器可读的数据表示方式. Barcode的形式多种多样,按照它们的外观分类: Lin ...

  9. 在Android上使用ZXing识别条形码/二维码

    越来越多的手机具备自动对焦的拍摄功能,这也意味着这些手机可以具备条码扫描的功能.......手机具备条码扫描的功能,可以优化购物流程,快速存储电子名片(二维码)等. 本文使用ZXing 1.6实现条码 ...

随机推荐

  1. 解决AndroidKiller APK 反编译失败,无法继续下一步源码反编译!

    报错背景 今天使用AndroidKiller V1.3.1,反编译一个APK,遇到如下报错: 当前 Apktool 使用版本:Android Killer Default APKTOOL 正在反编译 ...

  2. Idea插件之IdeTalk

    前言 随着越来越多的公司与Java工程师,逐步从Eclipse过度到Idea,安装相应的插件可能会成倍的增加工作效率. IDETalk是由JetBrains的工程师开发的一款代码级的协同工具,主要是为 ...

  3. 【Python】机器学习之单变量线性回归练习(计算Cost Function)

    注:练习来自于吴恩达机器学习 翻译后的题目: 你是一个餐厅的老板,你想在其他城市开分店,所以你得到了一些数据(数据在本文最下方),数据中包括不同的城市人口数和该城市带来的利润.第一列是城市的人口数,第 ...

  4. [Note] 使用Code Snippet简化编码

    使用NewtonSoft.Json写实体类时大量格式一致的代码出现 ,这时可以使用Code snippet来加快编码速度 [JsonProperty(PropertyName = "mess ...

  5. dedecms织梦二次开发报名表单模块插件安装及配置详细教程

    网上找了很多,都不是太满意,功能不全不全不说,还没有详细的安装配置教程,经过自己的折腾,成功了修改程序并配置成功,亲测,试用没有问题!所以,决定给大家出一个针对新手的详细教程. 废话不多,直接上干货. ...

  6. axios对put操作对Android的支持之坑

    ### 前段时间我做的一个手机端H5项目,需要发送一个put请求.因为ajax现在用的人有点少了,而且公司里边都是用的axios,所以我也是用的是axios做的请求. ### 再开发的时候测试都没有问 ...

  7. Mysql高手系列 - 第22篇:深入理解mysql索引原理,连载中

    Mysql系列的目标是:通过这个系列从入门到全面掌握一个高级开发所需要的全部技能. 欢迎大家加我微信itsoku一起交流java.算法.数据库相关技术. 这是Mysql系列第22篇. 背景 使用mys ...

  8. 50个实用的jq代码段整理

    个人博客: http://mcchen.club   1. 如何创建嵌套的过滤器:   //允许你减少集合中的匹配元素的过滤器,   //只剩下那些与给定的选择器匹配的部分.在这种情况下,   //查 ...

  9. 分库分表(5) ---SpringBoot + ShardingSphere 实现分库分表

    分库分表(5)--- ShardingSphere实现分库分表 有关分库分表前面写了四篇博客: 1.分库分表(1) --- 理论 2.分库分表(2) --- ShardingSphere(理论) 3. ...

  10. IMongoQuery的使用-C#

    一.Mongodb的IMongoQuery的使用 引用命名空间:MongoDB.Driver;MongoDB.Driver.Builders; Query.All("name",  ...