在使用RS 2008 beta,RC0等生成图表时,我从未为轴标签,图例等指定任何字体。默认情况下,它们都使用Arial字体进行渲染,看起来很棒。但是一旦我们切换到RS 2008决赛,字体就搞砸了 - 它们以某种大胆的控制台字体呈现。
我最初的想法是默认更改了 - 我尝试将字体显式设置为Arial(通过RDL或设计器)。这不起作用 - 只有某些字体似乎有效(例如Calibri)。更奇怪的是,传说并没有听取字体设置 - 它总是在这个丑陋的大胆的东西中呈现。 另一个想法可能是字体在某处丢失,但是,Tablix元素使用相同的字体,它们似乎有效。
此行为是通用的 - 可以使用开发工作室预览,报表查看控件以及将其导出为所有可用格式。
所以,显然,我被困 - 有没有人遇到过这种行为?
答案 0 :(得分:3)
我以前见过这种行为。不是在SSRS中,而是在.NET桌面应用程序中的GDI +渲染中。它与抗锯齿和不支持透明度的调色板有关 - 字形周围的所有几乎透明的像素都被强制为纯色。
对于像Calibri这样的后LCD字体,你不会得到这种效果,因为它们与像素边界对齐,以便在具有清晰像素的LCD显示器上更好地渲染。 CRT允许颜色渗入相邻的像素,产生基本上模拟抗锯齿的东西。 (这就是为什么电视画面看起来要好得多,考虑到它们的分辨率非常低。)
我确实找到了解决GDI的方法,当我记得我会告诉你的时候。也就是说,您无权访问渲染代码,因此您可能无法应用此修复程序。实际上我想我已经记得了 - 你明确地将背景设置为白色而不是透明,迫使GDI合成边缘颜色而不是希望显卡会这样做。我不知道你是否能够使用这个答案,抱歉。