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; }
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; }
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); } }
public void transform_text(string text, text_transform tt) { }
protected override string TransformText(string text, text_transform tt) { return(text); }
private Utf8Str TransformTextCallback(Utf8Str text, text_transform t) { return(Utf8Util.StringToHGlobalUTF8(TransformText(Utf8Util.Utf8PtrToString(text), t))); }