解析後に書式設定されたテキストのみを含む html ドキュメントがあります。マウスで選択し、コピーして新しいテキスト ドキュメントに貼り付けた場合と同じように、テキストを取得できるかどうか疑問に思っていました。
これは、開いている Word のコンテンツを選択する .ActiveSelection プロパティがある Microsoft.Office.Interop で可能であることを知っています。
どうにかして(おそらくブラウザオブジェクトで)htmlをロードし、そのすべてのコンテンツをコピーして文字列に割り当てる方法を見つける必要があります。
var doc = new HtmlAgilityPack.HtmlDocument();
var documetText = File.ReadAllText(myhtmlfile.html, Encoding.GetEncoding(1251));
documetText = this.PerformSomeChangesOverDocument(documetText);
doc.LoadHtml(documetText);
var stringWriter = new StringWriter();
AgilityPackEntities.AgilityPack.ConvertTo(doc.DocumentNode, stringWriter);
stringWriter.Flush();
var titleNode = doc.DocumentNode.SelectNodes("//title");
if (titleNode != null)
{
var titleToBeRemoved = titleNode[0].InnerText;
document.DocumentContent = stringWriter.ToString().Replace(titleToBeRemoved, string.Empty);
}
else
{
document.DocumentContent = stringWriter.ToString();
}
次に、ドキュメントオブジェクトを返します。問題は、文字列が常に希望どおりにフォーマットされているとは限らないことです