精华内容
下载资源
问答
  • 让报表尽可能的贴近实际的需求,在之前的随笔中《使用FastReport报表工具生成报表PDF文档》介绍了FastReport生成常规报表的处理,本篇随笔回顾常规报表的处理效果,并介绍基于FastReport生成标签纸打印需要的报表...

    在我们实际开发报表的时候,我们需要按一定的业务规则组织好报表的模板设计,让报表尽可能的贴近实际的需求,在之前的随笔中《使用FastReport报表工具生成报表PDF文档》介绍了FastReport生成常规报表的处理,本篇随笔回顾常规报表的处理效果,并介绍基于FastReport生成标签纸打印需要的报表格式。

    1、常规报表的处理

    我们一般处理报表的时候,大多数情况碰到的是明细报表,或者有主从表这种样式的报表格式,明细报表就是只需要设计一个表头,按列表展示即可,如下所示格式。

    或者类似一个基于XtraReport报表的功能界面,如下面图示所示。

    这里面涉及的字段,包括字符型、日期型,数值型、枚举类型等,还有统计值、打印时间(参数),因此也算一个比较完整的报表展示了。

    或者一些有一条记录构建成的报表信息,如下报表所示,这些也只是设计模板上的差异,在模板里面绑定对应的字段或者参数即可实现。

     还有一种是主表有信息,从表有明细的数据展示方式,这个在随笔《使用FastReport报表工具生成报表PDF文档》有介绍过。

    2、基于标签信息报表的打印处理

    之前在随笔《在Winform开发中使用Grid++报表》和《在Bootstrap开发框架中使用Grid++报表》中介绍了使用锐浪报表来设计展现标签打印报表的处理,如下效果所示。

    本篇随笔介绍基于FastReport报表工具生成标签打印文档的操作。

    其实如果细心查找,FastReport也提供了很多Demo案例,其中就有标签的案例介绍,设计效果如下所示。

     报表预览效果如下所示。

    我们要做的类似,不过我们需要增加二维码、条码上去进行打印而已。

    首先我们需要设计一个报表模板,设计格式如下所示。

     在其中我们需要加入一个数据源进行绑定和测试预览效果,我们选择SQLServer一个表的数据进行创建数据源,如下所示。

    设计报表,我们需要根据实际标签纸张预先设计好报表页面大小,如下所示。

    如果需要展示多少列,可以通过页面设置中的列进行指定划分多少列,如下所示。

    不过在实际测试的时候,这样的属性设置,报表渲染的时候,是按指定高度,从左列到右列进行依次展现的,如果我们需要按实际渲染高度,那么这里可以设置为1,然后由数据区进行设置列的数量即可。如下所示。

    数据区设置列数为实际需要展现的列数,这个根据宽度预览看大概设计多少列合适,让页面高宽尽可能利用好即可。

    二维码标签报表格式设计效果大概如下所示。

    我们使用数据源的数据预览下效果,效果还是杠杠的。

     报表模板弄好了,我们就需要如何生成FastReport报表或者导出PDF了。

    我在之前的随笔《使用FastReport报表工具生成报表PDF文档》里面介绍了FastReport报表的处理代码,这里做法依旧差不多,绑定数据源即可展示或者导出PDF了。

    最主要的代码如下所示。

    //生成PDF报表文档到具体文件
    Report report = new Report();
    report.Load(reportPath);
    
    //定义参数和数据格式
    var dict = new Dictionary<string, object>();
    var dt = DataTableHelper.CreateTable("ID,Name,CurrDept,Code,UsePerson,KeepAddr");
    if (list != null)
    {
        foreach (var info in list)
        {
            var dr = dt.NewRow();
            dr["ID"] = info.ID;
            dr["Name"] = info.Name;
            dr["CurrDept"] = info.CurrDept;
            dr["Code"] = info.Code;
            dr["UsePerson"] = info.UsePerson;
            dr["KeepAddr"] = info.KeepAddr;
            dt.Rows.Add(dr);
        }
    }
    
    //刷新数据源
    foreach (string key in dict.Keys)
    {
        report.SetParameterValue(key, dict[key]);
    }
    report.RegisterData(dt, "T_Asset");
    
    //运行报表
    report.Prepare();

    如果需要导出PDF,那么代码增加部分导出处理即可。

    //导出PDF报表
    PDFExport export = new PDFExport();
    report.Export(export, realPath);
    report.Dispose();
    我们来 看看实际在浏览器预览的效果,如下所示。

    以上效果结合了pdfJS的在线预览PDF操作,如果需要了解PDF的在线处理,参考下随笔《实现在线预览PDF的几种解决方案》。

    展开全文
  • 之前随笔《使用FastReport报表工具生成报表PDF文档》介绍过使用FastReport.Net来根据报表模板进行生成PDF,以及随笔《使用FastReport报表工具生成标签打印文档》介绍过生成标签文档的处理,基本上都是基于模板...

    之前我在随笔《使用FastReport报表工具生成报表PDF文档》介绍过使用FastReport.Net来根据报表模板进行生成PDF,以及随笔《使用FastReport报表工具生成标签打印文档》介绍过生成标签文档的处理,基本上都是基于模板进行生成PDF的做法,由于PDF在手机端显示总是觉得不那么方便,不管使用pdfjs或者直接打开PDF,都不太令客户满意,客户希望直接展示图片的方式显示。本篇随笔介绍如何使用FastReport.Net来直接生成报表格式的图片文件。

    1、报表模板及数据绑定处理

    FastReport.Net是一款适用于Windows Forms, ASP.NET和MVC框架的功能齐全的报表分析解决方案。之前使用直接生成PDF的方式构建报表文档,如下效果所示。

    7f3bb82e36f9161fbf41b7ad5165ff34.png

    在FastReport设计报表模式里面,我们可以对报表进行设置,以便于在实际运行环境的情况下生成上面的报表文档。在FastReport设计器里面的效果如下所示。

    80e8fa42ca092869e8825758789da4df.png

    这个报表包含了主表信息,和明细表的信息,我们主表动态信息,可以通过参数的绑定方式绑定,明细表则通过绑定DataTable的方式动态处理即可。

    采用参数绑定,我们需要在报表设计器里面定义好我们需要的参数,如下所示。

    be71b17851f5c09510bc8a05c8cd089c.png

    我们一般预先定义好相关的参数,然后绑定在模板里面,并设置好内容的对其格式即可。

    如报表页面里面,我们放置了一个表格,定义好表格的行列和宽度后,双击表格单元格,就可以设置表格单元格的文本内容为对应的参数了,如下界面所示。

    ffb08fb8d0b1c32a5c095ff7f895a24b.png

    对于动态展示的明细列表部分,我们需要定义一个数据源的方式,从而可以让报表模板绑定对应的字段名称。

    041c41e6961ed95e12e780bd21e3ae8c.png

    我根据数据表的信息,生成一个用于绑定明细列表的数据源,如下所示。

    3e81a59e0f99a3b29782daf46576ade8.png

    这样我们在代码绑定的时候,只需要指定Detail的名称和对应的字段名称即可,有了这些定义,我们可以在报表设计中使用字段绑定了。

    be2661f14b048622e9550d2252473096.png

    对于运行时刻报表数据的绑定,主要使用对应的对象的注册数据和设置参数处理函数即可实现。

    //刷新数据源

    report.RegisterData(dt, "Detail");foreach (string key indict.Keys)

    {

    report.SetParameterValue(key, dict[key]);

    }//运行报表

    report.Prepare();//导出PDF报表

    PDFExport export = newPDFExport();

    report.Export(export, realPath);

    report.Dispose();

    2、实现报表生成图片文档

    图片生成的处理,和PDF格式的处理大同小异,主要就是先处理数据的绑定和准备,后续在根据对应的文件后缀名进行相应的图片生成,PDF生成使用PDFExport,图片生成采用的是ImageExport类处理。

    如果是基于Web开发的,我们在控制器上处理对应的报表输出文件名称和路径,如下所示。

    //导出PDF的文件路径

    string exportPdfPath = string.Format("/GenerateFiles/Pres/Report_{0}.jpg", id);//转换为物理路径

    string realPath = Server.MapPath(exportPdfPath);

    加载报表模板并初始化,这个不管PDF或者换图片格式,处理一样。

    //以报表模板,初始化报表对象

    Report report = newReport();

    report.Load(reportPath);

    BS下生成并输出图片文件如下所示

    //刷新数据源

    report.RegisterData(dt, "Detail");foreach (string key indict.Keys)

    {

    report.SetParameterValue(key, dict[key]);

    }//运行报表

    report.Prepare();//导出PDF报表//PDFExport export = new PDFExport();//导出JPG报表

    ImageExport export = newImageExport();//export.JpegQuality = 392;//export.ResolutionY = 226;

    report.Export(export, realPath);

    report.Dispose();

    result= Content(exportPdfPath);//返回Web相对路径

    我们看到,图片生成的操作和PDF的处理差不多。

    最后生成图片的界面效果如下所示。

    86e32bd6c69790857519845c8a8afba7.png

    如果报表的页数超过一页,我们可以通过参数来生成不同的图片,如下所示。

    new ImageExport() { PageRange = PageRange.Current, CurPage = count }

    我们来看看另外一个处理代码,如下所示。

    //多个图片导出

    int count = 1;string firstFileName = exportImgPath.Replace(".png", "");foreach (PageBase item inreport.Pages)

    {string fileName = string.Format("{0}_{1}.png", firstFileName, count);

    exportImgPath=fileName;

    report.Export(new ImageExport() { PageRange = PageRange.Current, CurPage =count }, fileName);

    count++;

    }

    和之前的不同,这个图片格式指定为PNG,另外可以支持多个页面的图片生成。

    针对FastReport报表的特性,我在综合案例里面编写了一个专门用来处理FastREport的案例代码,如下所示。

    1d0f7da44b34f5b3f152e9cc876bd32a.png

    展开全文
  • word文档打印大号字

    千次阅读 2012-12-19 15:52:57
    word文档打印大号字  设置之前可以先将页面设置为横向。文件à页面设置à横向 一 、使用快捷键操作字体(比较简单实用) 按快捷键 'Ctrl'+'Shift'+'>' 可以将所选择的文字的字号不断变大,按快捷键 'Ctrl'...

    word文档中打印大号字  

    设置之前可以先将页面设置为横向。文件à页面设置à横向

     使用快捷键操作字体(比较简单实用)

    按快捷键 'Ctrl'+'Shift'+'>' 可以将所选择的文字的字号不断变大,按快捷键 'Ctrl'+'Shift'+'<' 可以将所选择的文字的字号不断变小。然后打印。字的大小取决于纸张的大小。
    另法:'Ctrl'+'[' 字体变小,'Ctrl'+']' 字体变大,变化幅度比较小,可以微调字的大小。

     

    插入横向文本框

    插入à文本框à横向。然后输入文字,按照第一种方法进行文字的放大,可以对文本框也进行放大。 

     

    三、使用艺术字

       插入à图片à艺术字,直接选择第一种,然后设置填充颜色为黑色就可以了。也第二种方法类似可拉动艺术字边框进行缩放。

     

    四、设置页面大小和文字大小(不好判断)

    1、设置页面大小

    先选择Word“文件”→“页面设置”命令 打开Word“页面设置”对话框 选择“纸张”标签 并选择“纸型”为“自定义大小” 同时设置 下纸张 大小 如宽55厘米、高55厘米等,按下“确定”按钮 此时Word会提示“你有 处或多处页边距设在了页面的外 选择‘调整’按钮可以增加页边距” 我们选择“忽略”按钮

    2、设置文字大小

    在页面直接输入需要打印 汉字内容 然后选中它们 选择“格式”菜单下 “字体”命令 在打开 “字体”对话框中选中“字号”输入框双击使字号内容反显 然后输入字号大小 输入字号 大小在1磅到1638磅的间 般纵向A4幅面单字大小为500磅 纵向A3幅面单字大小为750磅 注意输入字号后 定不要忘了回车 否则字号设置不起作用。 最后单击“确定”按钮保存 当然 我们也可以在文字“字体”属性中设置其为空心字体以节省墨粉

    3、观看效果

    此时我们可以看到Word窗口中汉字明显大了 为了取得更好 效果 我们单击工具栏上 比例缩放下拉框 选择 个合适 比例 就可以看到整体效果了

    4、打印输出

    给打印机装好纸 单击“打印输出”按钮后即可把当前大字打印出来了

     

    展开全文
  • 你可以执行与打印机有关的任务(例如页面设晋或打印一个文档)之前,你必须已经安装打印机。你想现在安装打印机吗? 只需要将Print Spooler 服务启动即可。 服务启动步骤 1、Windows10 左下角搜索按钮点击输入“服务...

    Powerdesigner 创建、打开工程提示"打印错误"
    在你可以执行与打印机有关的任务(例如页面设晋或打印一个文档)之前,你必须已经安装打印机。你想现在安装打印机吗?
    在这里插入图片描述
    只需要将Print Spooler 服务启动即可。
    服务启动步骤
    1、Windows10 左下角搜索按钮点击输入“服务”。(会的网上搜如何打开服务窗口,很多的)
    在这里插入图片描述
    2、打开服务窗口,找到Print Spooler服务,点击启动即可
    在这里插入图片描述
    3、重启Powerdesigner软件就可以正常使用了
    我是不知道怎么的把这个服务给关了

    展开全文
  • 使用DevExpress的富文本编辑器richeditcontrol 在文档中画横线条 并在打印和预览的时候线条可以打印出来 程序运行之后打开 效果像之前上学数学作业本一样的效果 不影响在横线上写的东西
  • 近日,遇到一个需求,要将 word 文档转化为 pdf 文档,并且能 IE 浏览器、火狐浏览器、谷歌浏览器等主流浏览器上展示 pdf 内容。...这个需求,实现的方案有很多,之前使用过开源的工具进行转化,比如 op...
  • 打印文件直接装订——逆序打印 相信使用Word打印过长篇文档的朋友一定都清楚,打印完成后的装订一直是个麻烦事儿,因为文件由打印机打出时,第一页肯定会最下面,装订之前总要费时费力的把纸张按顺序排好。...
  • 首先,先说明一下需求,之所以需要生成...作出说明之前,首先大家可以参考reportlab的官方英文文档,文章后面已附带上了。 如果是有了一定的reportlab基础的,并且只想解决加载中文的问题的,可以直接跳到最后,...
  • 之前随笔《使用FastReport报表工具生成报表PDF文档》介绍过使用FastReport.Net来根据报表模板进行生成PDF,以及随笔《使用FastReport报表工具生成标签打印文档》介绍过生成标签文档的处理,基本上都是基于模板...
  • 不是人人家中都有一台打印机,在使用Office编辑完某个Word文档后,会去打印打印。但发现打印使用的是WPS,Word会因为办公软件不同出现不兼容的格式错乱情况,这时需要将Word转换为PDF格式再去打印店进行打印。...
  • 不是人人家中都有一台打印机,在使用Office编辑完某个Word文档后,会去打印打印。但发现打印使用的是WPS,Word会因为办公软件不同出现不兼容的格式错乱情况,这时需要将Word转换为PDF格式再去打印店进行打印。...
  • 使用doxygen和CTEX生成pdf文档

    千次阅读 2013-04-11 14:58:51
    之前一直使用doxygen生成HTML格式代码文档电脑上阅读没有问题,前几日领导提出打印要求,于是考虑生成PDF文档网上翻看了很多文章,发现可以使用doxygen和CTEX生成pdf文档,于是将过程整理如下,由于本人新...
  • 通常情况下,一个结构组织的比较好的MFC程序是基于文档...编写打印程序之前,有必要先介绍一下MFC的框架结构,其中的文档视图结构又是这个框架的重点,我们通过分析MFC实现的视图类的原代码就可以看到一个打印程序的
  • 当面对很多word需要转成pdf的时候,手动一个个...以下就是基于Python的程序,在使用之前呢,你需要安装了office程序,对于Python包,你需要:comtypes具体代码如下:import sysimport osimport comtypes.clientdef d...
  • 之前在调试vc6.0平台的老项目。。没有文档,没有注释,只能靠自己打印来调试。但是又不知道如何显示打印信息。 百度找到相关信息,谢谢onlyou930的分享~ 原文链接...
  • 因为需要调用打印机封装好的DLL文件,只能IE下使用ActiveX来调用,直接使用tspl指令来打印。只前台调用,所以后台什么也不需要,但是客户端需要进行配置,首先要安装打印机驱动,然后注册DLL 本案例相关的dll...
  • 之前在做一个C#项目需要对word文档的表格进行数据填充,然后代码调用打印。如何用C#对word文档填充文字网上已经很多实例了,我就不多重复了,只提一点,找不到“文字型窗体域”的(我反正是找一下午没找...
  • 文档的布局只有当它要显示设备上,或者当某些信息需要文档的可视化表示时才相关。...这种方法使创建自定义布局成为可能,并提供了准备打印页面或导出到可移植文档格式(PDF)文件时使用的机制。 有时,呈...
  • 作者xlsx文档使用Caxlsx可以轻松快速地生成基于专业xlsx的报告,可以序列化之前对其进行验证。 生成3D饼图,折线图,散点图和条形图:使用Caxlsx图表,生成和管理就像几行代码一样容易。 您可以基于工作表中的...
  • 文档注释使用方法: 相比于多行注释,第一个斜杠后有两个星号,就这样 引用数据类型 类(string类里面)、接口、数组 整型变量的声明 声明long型变量,必须要以“l”或“L”型结尾,如long a=3424123421341
  • 前提:后台返回是绘制医用心电波形报告的数据,前端通过canvas网页上绘制再进行打印并生成PDF文档!一. 尝试LODOP打印插件之前前端表单打印功能有使用过LODOP打印插件,需安装相应的LODOP的打印软件,lodop的使用...
  • 软件开发过后,如果需要对软件进行保护就需要进行版权登记,现在登记都可以网上进行也是非常的方便,版权登记网站登记信息后,需要打印一份表格签字,然后就是需要准备软件的设计说明书和打印源代码2个事情。...
  • 公司一个项目,之前都是使用的Google浏览器,最近要IE下跑。打开IE11控制台时,控制台打印了好多XML5619: 文档语法不正确。 行: 1,列 1错误信息。通过查看网络选项卡,发现只要有获取json数据的页面都会报错,每...
  • 之前我们说一下Word打印快捷键:【Ctrl+P】;当然我们也可以点击【文件】,再点击【打印】...以上两种操作模式达到的效果是一样的。话不多说,往下看。1:完整打印顾名思义,我们点击打印任务后,点击确认。这样...
  • 前提:后台返回是绘制医用心电波形报告的数据,前端通过canvas网页上绘制再进行打印并生成PDF文档! 一. 尝试LODOP打印插件 之前前端表单打印功能有使用过LODOP打印插件,需安装相应的LODOP的打印软件,lodop的...
  • 保护图片和文档

    2012-06-07 11:59:51
    可以设置图片,文档是否允许内容复制,是否允许屏幕截图,能对打印进行控制,可以设置文件过期时间和文件阅读次数,允许设置密码、机器码和Email验证,允许对文档进行在线跟踪,是一款使用简单、功能强大的数字版权...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 386
精华内容 154
关键字:

在打印文档之前使用