Exemplo n.º 1
0
        public static NSAttributedString AttributedPartialTitle(string title, List <string> keyWordsList, NSColor fontColor,
                                                                string fontName, float fontSize, NSTextAlignment textAlignment, NSLineBreakMode breakMode)
        {
            string patten = "\\b(";
            int    i      = 0;

            foreach (var item in keyWordsList)
            {
                if (i != 0)
                {
                    patten = patten + "|" + item;
                }
                else
                {
                    patten = patten + item;
                }
                i++;
            }
            patten = patten + ")\\b";
            string [] results = Regex.Split(title, patten);

            NSMutableParagraphStyle ps = new NSMutableParagraphStyle();

            ps.Alignment     = textAlignment;
            ps.LineBreakMode = breakMode;

            NSMutableAttributedString attrTitle = new NSMutableAttributedString();

            foreach (var item in results)
            {
                //Console.WriteLine ("result:{0}", item);
                if (item.Length == 0)
                {
                    continue;
                }
                if (keyWordsList.Contains(item))
                {
                    NSStringAttributes attributes = new NSStringAttributes();

                    attributes.Font            = NSFont.FromFontName(fontName + " Bold Italic", fontSize);
                    attributes.ForegroundColor = Utility.ColorWithRGB(0, 0, 0, 0.45f);
                    attributes.ParagraphStyle  = ps;

                    NSAttributedString attrString = new NSAttributedString(item, attributes);
                    attrTitle.Append(attrString);
                }
                else
                {
                    NSStringAttributes attributes = new NSStringAttributes();
                    attributes.Font            = NSFont.FromFontName(fontName, fontSize);
                    attributes.ForegroundColor = fontColor;
                    attributes.ParagraphStyle  = ps;
                    NSAttributedString attrString = new NSAttributedString(item, attributes);
                    attrTitle.Append(attrString);
                }
            }

            return(attrTitle);
        }
Exemplo n.º 2
0
		public CCLabelTTF (string label, SizeF dimensions, NSTextAlignment alignment, NSLineBreakMode lineBreakMode, string fontName, float fontSize) : this (label, fontName, fontSize, dimensions, alignment, lineBreakMode)