public static NormalizeDrawing ( System.Windows.Media.Drawing drawing, Point location, |
||
drawing | System.Windows.Media.Drawing | |
location | Point | |
size | ||
angle | double | |
bgTransparent | bool | |
opacity | double | |
리턴 | System.Windows.Media.Drawing |
Drawing CreateVectorDrawing(DrawingGfx gfx) { var drawing = m_drawingResources[gfx.DrawingName].Clone(); drawing = TileSetLoaderHelpers.NormalizeDrawing(drawing, new Point(gfx.X, gfx.Y), new Size(gfx.W, gfx.H), gfx.Rotate, !gfx.Opaque, gfx.Opacity); RenderOptions.SetBitmapScalingMode(drawing, BitmapScalingMode.Fant); drawing.Freeze(); return(drawing); }
Drawing CreateCharDrawing(CharGfx gfx) { var fontFamily = gfx.FontFamily != null ? gfx.FontFamily : m_symbolSet.FontFamily; var typeface = new Typeface(fontFamily, FontStyles.Normal, FontWeights.Normal, FontStretches.Normal); var fontSize = gfx.FontSize.HasValue ? gfx.FontSize.Value : m_symbolSet.FontSize; var outline = gfx.Outline.HasValue ? gfx.Outline.Value : m_symbolSet.Outline; var outlineThickness = gfx.OutlineThickness.HasValue ? gfx.OutlineThickness.Value : m_symbolSet.OutlineThickness; var drawing = TileSetLoaderHelpers.DrawCharacter(gfx.Char, typeface, fontSize, gfx.Color, gfx.Background, outline, outlineThickness, gfx.Reverse, gfx.Mode); drawing = TileSetLoaderHelpers.NormalizeDrawing(drawing, new Point(gfx.X, gfx.Y), new Size(gfx.W, gfx.H), gfx.Rotate, !gfx.Opaque, gfx.Opacity); drawing.Freeze(); return(drawing); }