Crystal Report水晶报表碰到的一些纠结问题
1.插入PNG文件时,透明的背景会变成黑色.试了矢量图WMF文件,是可以正常显示的,不过毕竟得到矢量图比较困难.
后来找到个方法,就是把JPG图片放在子报表里,调整子报表在父报表的位置并且保持JPG背景颜色与父报表背景颜色一致,图片下面的文字就不会被图片背景盖住了.
2.中文乱码
这是因为文本框字符的问题,调整字符应该就可以了.不过有些字符在里面没得选,而且字体最小才是8,不知有没有方法可以扩展多些选择.
3.当把英文和中文放在同一个text object的时,文本框里文本的字符类型会自动变成system,不能指定特定字符.
可以通过填充field内容,将中英文分别放在不同field,然后拖到文本框来实现.麻烦是麻烦了些,不过这样就可以指定不同field内容的字符了.
4.最痛苦的一点就是报表里面没有table object,单靠line object 和box object来画表格实在太麻烦.
后来是设置text object的边框来实现表格的样式.这样的话就遇到了边框宽度的问题,右边和下边text object的位置(left,right,height,width)都要相应增加才不会错位.
不过当文本框有背景的话,是可以设置某个文本框放在另一个文本框之上的,所以后来只要保证后面文本框永远在前面的文本框上面,表格就会显示正常了.
5.文本框可以设置文字水平对齐方式,可是没办法设置垂直对齐,当text object的高度变化时候,文字的位置就需要调整.
如果高度变化了,只能调整字符大些才能保持居中.或者把這個text object放在box object裏面再調位置.
6.水晶报表没有办法动态生成text object,field object
7.還有個很不便利的是设置某text object的CanGrow属性为True并且在程序里面动态赋值后,没法得到自动增长后的新高度。
郁闷,就算我想利用该text object的宽度能放多少个字符来判断多少行,可是在报表中英文,中文,数字所占用的宽度都是不同的阿!不同的阿!
8.如果先安装VS2012,再裝Crystal Report,会发现报表打开是乱码,需要按下列步驟来重装VS2012才行
http://social.msdn.microsoft.com/Forums/vstudio/zh-CN/914c5795-cf49-4e51-a20f-6e4e14f6c8d2/vs2012-update-2-0x80040154-corrupt-install-when-starting-the-debugger
9.VS2012安裝CRforVS_13_0_5.exe進行開發,之後放上別的機器時可以不必安裝這個,而是安裝CRRuntime_32bit_13_0_5.msi,CRRuntime_64bit_13_0_5.msi
10.下面的dll中,前面4個是一定需要引入的,這可以理解。但後面2個沒有用到也需要放上去,不是很明白爲什麽。
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/>
<add assembly="CrystalDecisions.ReportAppServer.Controllers, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
<add assembly="CrystalDecisions.ReportAppServer.DataDefModel, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" />
......
11.得到報表頁數
ReportDocument rd = new ReportDocument();
rd.Load(AppDomain.CurrentDomain.BaseDirectory + @"\Test.rpt");
int totalPageCnt = rd.FormatEngine.GetLastPageNumber(new ReportPageRequestContext());
12.隐藏text object里面的空行
拖了几个field object 进去一个text object,当某行空值的时候,不想留下个空行在中间,这个选项可以自动隐藏空行
Crystal Report水晶报表碰到的一些纠结问题的更多相关文章
- 2.ASP.NET MVC 中使用Crystal Report水晶报表
上一篇,介绍了怎么导出Excel文件,这篇文章介绍在ASP.NET MVC中使用水晶报表. 项目源码下载:https://github.com/caofangsheng93/CrystalReport ...
- [转]解决crystal report水晶报表在浏览器提示bobj未定义的错误
网上的中文文章(比如这篇文章)都是写的部署到服务器后出现的问题,同时也指出要把crystal report的aspnet_client文件夹拷贝到对应项目的根目录里,这样就可以正常显示了,但是具体到我 ...
- 解决crystal report水晶报表在浏览器提示bobj未定义的错误
网上的中文文章(比如这篇文章)都是写的部署到服务器后出现的问题,同时也指出要把crystal report的aspnet_client文件夹拷贝到对应项目的根目录里,这样就可以正常显示了,但是具体到我 ...
- C# WinForm开发系列 - Crystal Report水晶报表
转自:ttp://www.cnblogs.com/peterzb/archive/2009/07/11/1521325.html 水晶报表(Crystal Report)是业内最专业.功能最强的报表系 ...
- Crystal Report - 水晶报表导出文件的格式设置
水晶报表中自带的导出和打印功能用起来确实很方便,只不过有时候需要导出的文件并不需要那么多种类型,在网上找到一些朋友的代码总结了一下,可以通过代码实现自定义导出文件类型 首先需要定义一个枚举: publ ...
- Visual Studio 2017 集成Crystal Report为ASP.NET MVC呈现报表
最近项目需要实现报表功能,平衡各方面的因素,还是使用Crystal Report(水晶报表) 下载较新版本: http://downloads.businessobjects.com/akdlm/cr ...
- Visual Studio 2012使用水晶报表Crystal Report
原文:Visual Studio 2012使用水晶报表Crystal Report SAP在 2013年1月14日 released SAP Crystal Reports,developer ver ...
- Crystal Report制作使用
Crystal Report制作使用 本文主要划分为以下六部分: 一.Crystal Report for .NET 的功能 二.Crystal Report总体结构 三.报表数据访问执行模式 四.报 ...
- 如何将水晶报表(Crystal Report)导入葡萄城报表
当从旧的报表平台迁移到葡萄城报表工具时,意味着有大量的报表设计工作要重复去做,如果有一款工具能够在这些工具之间进行自由转换,就能省去报表开发几乎一半的工作量. 葡萄城报表为兼容其他报表控件,提供了简单 ...
随机推荐
- WUSTOJ 1365: 矩阵旋转(Java)
题目链接:
- go变量的定义并赋值
变量在定义时没有明确的初始化时会赋值为_零值_. 零值是: 数值类型为 `0`, 布尔类型为 `false`, 字符串为 `""`(空字符串). package main impo ...
- Idea中一个服务按多个端口同时启动
1.勾选并行启动 2.-Dserver.port=9018
- hadoop2.7.7 分布式集群安装与配置
环境准备 服务器四台: 系统信息 角色 hostname IP地址 Centos7.4 Mster hadoop-master-001 10.0.15.100 Centos7.4 Slave hado ...
- prometheus+grafana+Alertmanager邮箱告警
环境 系统:CentOS 7 软件:alertmanager-0.18.0.linux-amd64.tar.gz 安装 下载二进制包 地址:https://prometheus.io/download ...
- Educational Codeforces Round 65 (Rated for Div. 2)
A:签到. #include<bits/stdc++.h> using namespace std; #define ll long long #define inf 1000000010 ...
- PAT-1003 Emergency (25 分) 最短路最大点权+求相同cost最短路的数量
As an emergency rescue team leader of a city, you are given a special map of your country. The map s ...
- c#学习笔记-深度复制 与浅度复制
关于值类型和引用类型: 浅度复制(shallow copy)只复制值类型(char,int )的值,而对于引用类型不会复制,浅度复制可以通过派生于System.Object的MemberwiseClo ...
- 国际化(i18n)学习
一 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 国际化(internationalization)又称 ...
- 使用HTML CSS制作简易三角形和旗帜
HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...