Пример #1
0
        public static void AddCharactersProperties(CharacterRun characterRun, StringBuilder style)
        {
            AddBorder(characterRun.GetBorder(), string.Empty, style);

            if (characterRun.IsCapitalized())
            {
                style.Append("text-transform:uppercase;");
            }
            if (characterRun.GetIco24() != -1)
            {
                style.Append("color:" + GetColor24(characterRun.GetIco24()) + ";");
            }
            if (characterRun.IsHighlighted())
            {
                style.Append("background-color:" + GetColor(characterRun.GetHighlightedColor()) + ";");
            }
            if (characterRun.IsStrikeThrough())
            {
                style.Append("text-decoration:line-through;");
            }
            if (characterRun.IsShadowed())
            {
                style.Append("text-shadow:" + characterRun.GetFontSize() / 24 + "pt;");
            }
            if (characterRun.IsSmallCaps())
            {
                style.Append("font-variant:small-caps;");
            }
            if (characterRun.GetSubSuperScriptIndex() == 1)
            {
                style.Append("vertical-align:super;");
                style.Append("font-size:smaller;");
            }
            if (characterRun.GetSubSuperScriptIndex() == 2)
            {
                style.Append("vertical-align:sub;");
                style.Append("font-size:smaller;");
            }
            if (characterRun.GetUnderlineCode() > 0)
            {
                style.Append("text-decoration:underline;");
            }
            if (characterRun.IsVanished())
            {
                style.Append("visibility:hidden;");
            }
        }
Пример #2
0
        public static void SetCharactersProperties(CharacterRun characterRun, XmlElement inline)
        {
            StringBuilder textDecorations = new StringBuilder();

            SetBorder(inline, characterRun.GetBorder(), string.Empty);

            if (characterRun.GetIco24() != -1)
            {
                inline.SetAttribute("color", GetColor24(characterRun.GetIco24()));
            }
            int opacity = (int)(characterRun.GetIco24() & 0xFF000000L) >> 24;
            if (opacity != 0 && opacity != 0xFF)
            {
                inline.SetAttribute("opacity",
                        GetOpacity(characterRun.GetIco24()));
            }
            if (characterRun.IsCapitalized())
            {
                inline.SetAttribute("text-transform", "uppercase");
            }
            if (characterRun.isHighlighted())
            {
                inline.SetAttribute("background-color",
                        GetColor(characterRun.GetHighlightedColor()));
            }
            if (characterRun.IsStrikeThrough())
            {
                if (textDecorations.Length > 0)
                    textDecorations.Append(" ");
                textDecorations.Append("line-through");
            }
            if (characterRun.IsShadowed())
            {
                inline.SetAttribute("text-shadow", characterRun.GetFontSize() / 24 + "pt");
            }
            if (characterRun.IsSmallCaps())
            {
                inline.SetAttribute("font-variant", "small-caps");
            }
            if (characterRun.GetSubSuperScriptIndex() == 1)
            {
                inline.SetAttribute("baseline-shift", "super");
                inline.SetAttribute("font-size", "smaller");
            }
            if (characterRun.GetSubSuperScriptIndex() == 2)
            {
                inline.SetAttribute("baseline-shift", "sub");
                inline.SetAttribute("font-size", "smaller");
            }
            if (characterRun.GetUnderlineCode() > 0)
            {
                if (textDecorations.Length > 0)
                    textDecorations.Append(" ");
                textDecorations.Append("underline");
            }
            if (characterRun.IsVanished())
            {
                inline.SetAttribute("visibility", "hidden");
            }
            if (textDecorations.Length > 0)
            {
                inline.SetAttribute("text-decoration", textDecorations.ToString());
            }
        }
Пример #3
0
        protected override void OutputCharacters(XmlElement block, CharacterRun characterRun,
                String text)
        {
            XmlElement inline = foDocumentFacade.CreateInline();

            Triplet triplet = GetCharacterRunTriplet(characterRun);

            if (!string.IsNullOrEmpty(triplet.fontName))
                WordToFoUtils.SetFontFamily(inline, triplet.fontName);
            WordToFoUtils.SetBold(inline, triplet.bold);
            WordToFoUtils.SetItalic(inline, triplet.italic);
            WordToFoUtils.SetFontSize(inline, characterRun.GetFontSize() / 2);
            WordToFoUtils.SetCharactersProperties(characterRun, inline);

            if (IsOutputCharactersLanguage())
                WordToFoUtils.SetLanguage(characterRun, inline);

            block.AppendChild(inline);

            XmlText textNode = foDocumentFacade.CreateText(text);
            inline.AppendChild(textNode);
        }
Пример #4
0
        protected override void OutputCharacters(XmlElement pElement, CharacterRun characterRun, string text)
        {
            XmlElement span = htmlDocumentFacade.Document.CreateElement("span");
            pElement.AppendChild(span);

            StringBuilder style = new StringBuilder();
            BlockProperies blockProperies = this.blocksProperies.Peek();
            Triplet triplet = GetCharacterRunTriplet(characterRun);

            if (!string.IsNullOrEmpty(triplet.fontName)
                    && !WordToHtmlUtils.Equals(triplet.fontName,
                            blockProperies.pFontName))
            {
                style.Append("font-family:" + triplet.fontName + ";");
            }
            if (characterRun.GetFontSize() / 2 != blockProperies.pFontSize)
            {
                style.Append("font-size:" + characterRun.GetFontSize() / 2 + "pt;");
            }
            if (triplet.bold)
            {
                style.Append("font-weight:bold;");
            }
            if (triplet.italic)
            {
                style.Append("font-style:italic;");
            }

            WordToHtmlUtils.AddCharactersProperties(characterRun, style);
            if (style.Length != 0)
                htmlDocumentFacade.AddStyleClass(span, "s", style.ToString());

            XmlText textNode = htmlDocumentFacade.CreateText(text);
            span.AppendChild(textNode);
        }