From 4fec1658214d667cbb5a645e83e7d7fed68d828b Mon Sep 17 00:00:00 2001 From: niksedk Date: Sun, 6 Jan 2013 16:31:17 +0000 Subject: [PATCH] Sligtly improved reading of italics in time text draft - thx Jean :) git-svn-id: https://subtitleedit.googlecode.com/svn/trunk@1553 99eadd0c-20b8-1223-b5c4-2a2b2df33de2 --- src/Logic/SubtitleFormats/TimedText.cs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/Logic/SubtitleFormats/TimedText.cs b/src/Logic/SubtitleFormats/TimedText.cs index 43125d788..aaeb9c805 100644 --- a/src/Logic/SubtitleFormats/TimedText.cs +++ b/src/Logic/SubtitleFormats/TimedText.cs @@ -145,6 +145,15 @@ namespace Nikse.SubtitleEdit.Logic.SubtitleFormats if (div == null) div = xml.DocumentElement.SelectSingleNode("//ttaf1:body", nsmgr).FirstChild; + var styleDic = new System.Collections.Generic.Dictionary(); + foreach (XmlNode node in xml.DocumentElement.SelectNodes("//ttaf1:style", nsmgr)) + { + if (node.Attributes["tts:fontStyle"] != null && node.Attributes["xml:id"] != null) + { + styleDic.Add(node.Attributes["xml:id"].Value, node.Attributes["tts:fontStyle"].Value); + } + } + foreach (XmlNode node in div.ChildNodes) { try @@ -159,7 +168,15 @@ namespace Nikse.SubtitleEdit.Logic.SubtitleFormats break; case "span": bool italic = false; - if (innerNode.Attributes != null) + if (innerNode.Attributes["style"] != null && styleDic.ContainsKey(innerNode.Attributes["style"].Value)) + { + if (styleDic[innerNode.Attributes["style"].Value].Contains("italic")) + { + italic = true; + pText.Append(""); + } + } + if (!italic && innerNode.Attributes != null) { var fs = innerNode.Attributes.GetNamedItem("tts:fontStyle"); if (fs != null && fs.Value == "italic")