Exemplo n.º 1
0
 public el_text(string text, document doc) : base(doc)
 {
     if (text != null)
     {
         _text = text;
     }
     _text_transform  = text_transform.none;
     _use_transformed = false;
     _draw_spaces     = true;
 }
Exemplo n.º 2
0
        public override void parse_styles(bool is_reparse)
        {
            _text_transform = (text_transform)html.value_index(get_style_property("text-transform", true, "none"), types.text_transform_strings, (int)text_transform.none);
            if (_text_transform != text_transform.none)
            {
                _transformed_text = _text;
                _use_transformed  = true;
                get_document().container.transform_text(_transformed_text, _text_transform);
            }

            if (is_white_space())
            {
                _transformed_text = " "; _use_transformed = true;
            }
            else
            {
                if (_text == "\t")
                {
                    _transformed_text = "    "; _use_transformed = true;
                }
                if (_text == "\n" || _text == "\r")
                {
                    _transformed_text = ""; _use_transformed = true;
                }
            }

            object font = null; font_metrics fm;
            var    el_parent = parent();

            if (el_parent != null)
            {
                font = el_parent.get_font(out fm);
            }
            else
            {
                fm = new font_metrics();
            }
            if (is_break())
            {
                _size.height = 0;
                _size.width  = 0;
                _size.depth  = 0; //:h3ml
            }
            else
            {
                _size.height = fm.height;
                _size.width  = get_document().container.text_width(_use_transformed ? _transformed_text : _text, font);
                _size.depth  = 0; //:h3ml
            }
            _draw_spaces = fm.draw_spaces;
        }
Exemplo n.º 3
0
        protected virtual string TransformText(string text, text_transform t)
        {
            switch (t)
            {
            case text_transform.text_transform_capitalize:
                return(System.Text.RegularExpressions.Regex.Replace(text, @"(^\w)|(\s\w)", m => m.Value.ToUpper()));

            case text_transform.text_transform_lowercase:
                return(text.ToLower());

            case text_transform.text_transform_uppercase:
                return(text.ToUpper());

            default:
                return(text);
            }
        }
Exemplo n.º 4
0
 public void transform_text(string text, text_transform tt)
 {
 }
Exemplo n.º 5
0
 protected override string TransformText(string text, text_transform tt)
 {
     return(text);
 }
Exemplo n.º 6
0
 private Utf8Str TransformTextCallback(Utf8Str text, text_transform t)
 {
     return(Utf8Util.StringToHGlobalUTF8(TransformText(Utf8Util.Utf8PtrToString(text), t)));
 }