프로젝트

일반

사용자정보

통계
| 브랜치(Branch): | 개정판:

markus / KCOM / Common / InitData.cs @ c206d293

이력 | 보기 | 이력해설 | 다운로드 (2.96 KB)

1
using System.Collections.Generic;
2
using System.Linq;
3
using System.Windows.Controls;
4
using System.Windows.Media;
5
using System.Drawing.Text;
6
using KCOM.Common;
7

    
8
namespace KCOM.Views
9
{
10
    public class DashStyle
11
    {
12
        public DoubleCollection dashData { get; set; }
13
    }
14

    
15
    public partial class TopMenu : UserControl
16
    {
17
        public List<DashStyle> dashSet;
18

    
19
        public void InitDataSet()
20
        {
21
            App.splashString(ISplashMessage.INITDATA);
22
            dashSet = new List<DashStyle>()
23
            {
24
                new DashStyle { dashData = new DoubleCollection{999999}},
25
                new DashStyle { dashData = new DoubleCollection{2,2}},
26
                new DashStyle { dashData = new DoubleCollection{4,4}},
27
                new DashStyle { dashData = new DoubleCollection{8,8}},
28
                new DashStyle { dashData = new DoubleCollection{20,0,0, 5,1.1,5}},
29
                new DashStyle { dashData = new DoubleCollection{10,10}},
30
                new DashStyle { dashData = new DoubleCollection{15,15}},
31
                new DashStyle { dashData = new DoubleCollection{15,3,3,0,3,3}},
32
                new DashStyle { dashData = new DoubleCollection{15,3,3,3,3,3}},
33
            };
34
            cbDashStyle.ItemsSource = dashSet.ToList();
35

    
36
            List<string> fontList = new List<string>();
37
            fontList.Add("Arial");
38
            //fontList.Add("Calibri (Body)");
39
            //fontList.Add("Tahoma");
40
            fontList.Add("Verdana");
41
            fontList.Add("Times New Roman");
42
            fontList.Add("Cambria");
43
            //fontList.Add("나눔바른펜");
44
            List<string> fontSet = new List<string>();
45
            foreach (var font in fontList)
46
            {
47
                if (IsFontInstalled(font))
48
                {
49
                    fontSet.Add(font.ToString());
50
                }
51
            }
52
            comboFontFamily.ItemsSource = fontSet.ToList();
53

    
54
            if (KCOM.Properties.Settings.Default.FontFamily != null)
55
            {
56
                comboFontFamily.SelectedItem = KCOM.Properties.Settings.Default.FontFamily;
57
            }
58
        }
59

    
60
        public void SetFont(FontFamily fontFamily)
61
        {
62
            foreach (var item in comboFontFamily.Items)
63
            {
64
                if(fontFamily.FamilyNames.Select(x=>x.Value).Contains((string)item))
65
                {
66
                    comboFontFamily.SelectedItem = item;
67
                    return;
68
                }
69
            }
70
        }
71
        
72
        /// <summary>
73
        /// 폰트 설치 여부 구하기
74
        /// </summary>
75
        public bool IsFontInstalled(string fontName)
76
        {
77
            InstalledFontCollection collection = new InstalledFontCollection();
78
            foreach (System.Drawing.FontFamily fontFamily in collection.Families)
79
            {
80
                if (fontFamily.Name.Equals(fontName))
81
                {
82
                    return true;
83
                }
84
            }
85
            return false;
86
        }        
87
    }    
88
}
클립보드 이미지 추가 (최대 크기: 500 MB)