一、什么是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. ORM组件LogORM使用指北

    LogORM是一个对数据库进行对象关系映射的ORM组件.当对数据库进行增删改操作时,组件会自动进行日志记录. 该组件支持.Net平台和.NetCore平台,支持SQL Server.Oracle.My ...

  2. 利用echarts展示旅行足迹

    前言 一直有个环游世界的梦,周游列国,体验不同国家的人类文明,寻山访水,体验造物主大自然的伟大造化.毕竟人生不止眼前的苟且,还有诗和远方.这么多年以来,陆续走过了一些地方,每到一个地方,都让我离梦想又 ...

  3. 死磕 java同步系列之redis分布式锁进化史

    问题 (1)redis如何实现分布式锁? (2)redis分布式锁有哪些优点? (3)redis分布式锁有哪些缺点? (4)redis实现分布式锁有没有现成的轮子可以使用? 简介 Redis(全称:R ...

  4. 005-做题:使用 Python 生成 200 个激活码

    题目:使用 Python 生成 200 个不重复的激活码 编写思路# 激活码一般是由26个大写字母和10个数字任意组合而成# 长度为12位或者16位的居多激活码# 一个激活码里的字符是可以重复的,而且 ...

  5. Spring IOC(1)----容器刷新(refresh())之前

    首先本次分析是基于注解形式的,想来xml格式的原理都是类似的. 首先说一下什么是Bean定义(beandefinition):bean定义并不是实例化的bean,而是bean对象的一些信息,根据这些定 ...

  6. (三)分布式数据库tidb-隔离级别详解

    tidb隔离级别详解: 1.TiDB 支持的隔离级别是 Snapshot Isolation(SI),它和 Repeatable Read(RR) 隔离级别基本等价,详细情况如下: ● TiDB 的 ...

  7. 3D虚拟环境中的选择技术分类

    我们在3D虚拟环境(Virtual Environment, VE)中需要完成的操作有3种:选择物体,操纵(改变)物体,移位(locomotion).这里来总结一下3D VE中的选择技术的种类.本文根 ...

  8. Mac 安装node npm cnpm vue 以及卸载 node 和 npm 的方法 清空npm缓存的方法

    S01 安装node(内含npm) 首先,到官网下载长期支持版,截止目前,最新的长期支持版本号是10.16.3 https://nodejs.org/zh-cn/download/ 下载完毕后,安装该 ...

  9. VGG(2014),3x3卷积的胜利

    目录 写在前面 网络结构 multi-scale training and testing 其他有意思的点 参考 博客:blog.shinelee.me | 博客园 | CSDN 写在前面 VGG(2 ...

  10. Airport Express UVA - 11374

    In a small city called Iokh, a train service, Airport-Express, takes residents to the airport more q ...