DXFont GetFontForTextElement(TextElement element) { DXFont result = null; string fontKey = String.Format("{0}{1}{2}", element.Font.Name, element.Font.Size, element.Font.Style, element.AntiAliased); if (!_fontCache.TryGetValue(fontKey, out result)) { result = new DXFont(_device, _deviceContext); result.Initialize(element.Font.Name, element.Font.Size, element.Font.Style, element.AntiAliased); _fontCache[fontKey] = result; } return result; }
Font GetFontForTextElement(TextElement element) { Font result = null; string 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 & System.Drawing.FontStyle.Italic) == System.Drawing.FontStyle.Italic, Quality = (element.AntiAliased ? FontQuality.Antialiased : FontQuality.Default), Weight = ((element.Font.Style & System.Drawing.FontStyle.Bold) == System.Drawing.FontStyle.Bold) ? FontWeight.Bold : FontWeight.Normal, Height = (int)element.Font.SizeInPoints })); _fontCache[fontKey] = result; } return result; }