10

问题

我们正在使用 Reporting Services 报表和 ReportViewer 控件在网页上呈现条形图。有时图表上的文字很清晰:

带有清晰文本的图表

但大多数时候,图表上的文字是模糊的:

带有模糊文本的图表

到底是怎么回事?

解决步骤和其他信息

  • 广泛搜索网络和 SO
  • 尝试了不同的浏览器、用户和机器;无法确定韵律或模糊的原因
  • 尝试了 SSRS 报告属性的几种设置DynamicHeightDynamicWidth
  • 在 Firefox 中,右键单击图表图像并选择View image时,显示的图像始终清晰
  • 这个问题在有边界的图表上似乎更加突出;删除了图表上的边框,但问题仍然存在

影响浏览器

  • 火狐15.0
  • 铬 23.0.1271.97 m
  • IE 9 但仅在浏览器模式=IE9、文档模式=IE9 标准时

环境

  • 视觉工作室 2010 专业版
  • .NET 4.0
  • IIS 7.0
  • 报告服务 2008
  • ReportViewer 控件版本 10
4

3 回答 3

14

原因

ReportViewer 控件将图表呈现为 PNG 图像。ReportViewer 将widthheightmin-width属性添加到图像的 CSS 中。这些 CSS 属性会导致图像在浏览器中缩放到稍小的尺寸。图像缩放会导致观察到的模糊。

解析度

通过使用额外的 CSS 覆盖 ReportViewer 呈现的几个 CSS 属性,该问题在我们的环境中得到解决。Reporting Services 图表在 BIDS 中具有特殊标记,因此 CSS 选择器可以找到受影响的图像。

步骤 1. 为图表赋予其ToolTip属性的唯一值:

BIDS 中 ToolTip 属性的唯一值

(此示例中的唯一值是MyOfficeChart。)

当图表呈现为<img>时,<img>标签的alttitle属性设置为此值。

步骤 2. 创建 CSS 以选择属性<img>的唯一值title,并覆盖导致问题的 CSS:

img[title$='MyOfficeChart']
{
    height:auto !important;
    width:auto !important;
    min-width:0 !important;
}

这些步骤解决了所有浏览器和用户的问题,以及图表是否有边框。

于 2012-12-14T23:15:40.217 回答
0

解决这个问题的一个简单方法是将一个矩形直接放入您的 tablix 单元格,然后将图表放在该矩形内。(而不是将图表直接放在 tablix 单元格中。)

不是 100% 确定它为什么会起作用……但确实如此。

于 2014-05-02T17:06:44.243 回答
-1

这不是正确的解决方案,但可以提供帮助。步骤如下:

  1. 在报表生成器中打开报表 rdl
  2. 选择图表的文本,它会变得模糊
  3. 在字体样式中输入“C”(在顶部菜单上),然后按 Enter
  4. 字体样式更改但未知
  5. 尝试运行并查看差异
于 2015-06-22T17:41:09.930 回答