FastReport快速实现条形码,二维码面单打印
一、什么是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快速实现条形码,二维码面单打印的更多相关文章
- DevExpress 使用条形码二维码控件打印
参考文章: https://www.cnblogs.com/wuhuacong/p/6112976.html 转载请注明出处:撰写人:伍华聪 其实主要是二维码的实现,在使用条形码控件时,又一个属性Sy ...
- FastReport.NET 中使用二维码
FastReport.net 是一个比较好用的报表控件,在编辑器中编辑以后 可以直接在vs 中引用. 最近在研究fastreport 现在讲解一下 如何使用它的二维码. fastreport 没有单独 ...
- Opencv+Zbar二维码识别(标准条形码/二维码识别)
使用Opencv+Zbar组合可以很容易的识别图片中的二维码,特别是标准的二维码,这里标准指的是二维码成像清晰,图片中二维码的空间占比在40%~100%之间,这样标准的图片,Zbar识别起来很容易,不 ...
- Google API快速生成QR二维码
Google API快速生成QR二维码 现在来说生成二维码最简单的方法是使用Google Chart API来实现,再次膜拜Google大神- Google Chart API是一套可以让你在线生成报 ...
- ZBar 是款桌面电脑用条形码/二维码扫描工具
ZBar 是款桌面电脑用条形码/二维码扫描工具 windows平台python 2.7环境编译安装zbar 最近一个项目需要识别二维码,找来找去找到了zbar和zxing,中间越过无数坑,总算基本 ...
- Python zxing 库解析(条形码二维码识别)
各种扫码软件 最近要做个二维码识别的项目,查到二维码识别有好多开源的不开源的软件 http://www.oschina.net/project/tag/238/ Zbar 首先试了一下Zbar,pyt ...
- 在DevExpress程序中使用条形码二维码控件,以及进行报表打印处理
在很多业务系统里面,越来越多涉及到条形码.二维码的应用了,不管在Web界面还是WInform界面都需要处理很多物料相关的操作,甚至很多企业为了减少录入错误操作,为每个设备进行条形码.二维码的标签,直接 ...
- Java 条形码 二维码 的生成与解析
Barcode简介 Barcode是由一组按一定编码规则排列的条,空符号,用以表示一定的字符,数字及符号组成的,一种机器可读的数据表示方式. Barcode的形式多种多样,按照它们的外观分类: Lin ...
- 在Android上使用ZXing识别条形码/二维码
越来越多的手机具备自动对焦的拍摄功能,这也意味着这些手机可以具备条码扫描的功能.......手机具备条码扫描的功能,可以优化购物流程,快速存储电子名片(二维码)等. 本文使用ZXing 1.6实现条码 ...
随机推荐
- alpha测试和beta测试的区别
alpha测试版,有点相当于内部测试,一般开发人员在场 ,是由用户做测试,但开发人员在场,一般是请用户到开发现场去测试 beta测试版,完全交给用户,由用户做测试,返回测试报告,相当于发行前的一 ...
- Maven 梳理 - 核心概念
Maven坐标 依赖配置 依赖范围 依赖范围scope用来控制依赖和编译,测试,运行的classpath的关系. 主要的是三种依赖关系如下: 1.compile: 默认编译依赖范围.对于编译,测试,运 ...
- 讨论c/c++计算小数的精度问题
求出所有100以下整数与一位小数相乘等于相加的浮点数这个有Bug浮点数计算时精度会出现误差 除非使用非常精确的类型或限制浮点的位数 比如 #include <iostream> int m ...
- Vsftp服务-实战案例
Vsftp 实验案例一:(本地用户) 试验版本:Linux7.X版本 公司内部现在有一台FTP 和WEB 服务器,FTP 的功能主要用于维护公司的网站内容,包括上传文 件.创建目录.更新网页等等.公司 ...
- windows安装Mycat并测试
1.下载系统安装包 选择相应的版本进行下载,地址:http://dl.mycat.io/ .Mycat数据库分库分表中间件介绍 http://www.mycat.io/ 2.安装 安装mycat前需要 ...
- linux下mysql数据库操作命令
1:启动服务 service mysqld start (5.0版本是mysqld) service mysql start (5.5.7版本是mysql) 2:停止服务 service mysqld ...
- 使用java的循环单向链表解决约瑟夫问题
什么是约瑟夫问题 据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定 ...
- MySql一个生产死锁案例分析
接到上级一个生产环境MySQL死锁日志信息文件,需要找出原因并解决问题.我将死锁日志部分贴出如下: 在mysql中使用命令:SHOW ENGINE INNODB STATUS;总能获取到最近一些问题信 ...
- Java 学习笔记之 线程sleep方法
线程sleep方法: 单主线程使用sleep: Main线程差了2000毫秒. public class MainSleepThread extends Thread{ @Override publi ...
- 02-15 Logistic回归(鸢尾花分类)
目录 Logistic回归(鸢尾花分类) 一.导入模块 二.获取数据 三.构建决策边界 四.训练模型 4.1 C参数与权重系数的关系 五.可视化 更新.更全的<机器学习>的更新网站,更有p ...