예제 #1
0
        private DXFont GetFontForTextElement(TextElement element)
        {
            DXFont result = null;

            var fontKey = string.Format("{0}{1}{2}", element.Font.Name, element.Font.Size, element.Font.Style,
                element.AntiAliased);

            if (!_fontCache.TryGetValue(fontKey, out result))
            {
                result = ToDispose(new DXFont(_device, _deviceContext));
                result.Initialize(element.Font.Name, element.Font.Size, element.Font.Style, element.AntiAliased);
                _fontCache[fontKey] = result;
            }
            return result;
        }
예제 #2
0
        private Font GetFontForTextElement(TextElement element)
        {
            Font result = null;

            var fontKey = string.Format("{0}{1}{2}", element.Font.Name, element.Font.Size, element.Font.Style,
                element.AntiAliased);

            if (!_fontCache.TryGetValue(fontKey, out result))
            {
                result = ToDispose(new Font(Device, new FontDescription
                {
                    FaceName = element.Font.Name,
                    Italic = (element.Font.Style & FontStyle.Italic) == FontStyle.Italic,
                    Quality = (element.AntiAliased ? FontQuality.Antialiased : FontQuality.Default),
                    Weight =
                        ((element.Font.Style & FontStyle.Bold) == FontStyle.Bold) ? FontWeight.Bold : FontWeight.Normal,
                    Height = (int) element.Font.SizeInPoints
                }));
                _fontCache[fontKey] = result;
            }
            return result;
        }