本文整理汇总了C#中Bloom.Book.HtmlDom.GetMetaValue方法的典型用法代码示例。如果您正苦于以下问题:C# HtmlDom.GetMetaValue方法的具体用法?C# HtmlDom.GetMetaValue怎么用?C# HtmlDom.GetMetaValue使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Bloom.Book.HtmlDom
的用法示例。
在下文中一共展示了HtmlDom.GetMetaValue方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddLocalizedHintContentsToDictionary
private static void AddLocalizedHintContentsToDictionary(HtmlDom singlePageHtmlDom, Dictionary<string, string> dictionary, CollectionSettings collectionSettings)
{
var nameOfXMatterPack = singlePageHtmlDom.GetMetaValue("xMatter", collectionSettings.XMatterPackName);
string idPrefix = "";
var pageElement = singlePageHtmlDom.RawDom.SelectSingleNode("//div") as XmlElement;
if (XMatterHelper.IsFrontMatterPage(pageElement))
{
idPrefix = "FrontMatter." + nameOfXMatterPack + ".";
}
else if (XMatterHelper.IsBackMatterPage(pageElement))
{
idPrefix = "BackMatter." + nameOfXMatterPack + ".";
}
foreach (XmlElement element in singlePageHtmlDom.RawDom.SelectNodes("//*[@data-hint]"))
{
//why aren't we just doing: element.SetAttribute("data-hint", translation); instead of bothering to write out a dictionary?
//because (especially since we're currently just assuming it is in english), we would later save it with the translation, and then next time try to translate that, and poplute the
//list of strings that we tell people to translate
var key = element.GetAttribute("data-hint");
if (!dictionary.ContainsKey(key))
{
string translation;
var id = idPrefix + key;
if (key.Contains("{lang}"))
{
translation = LocalizationManager.GetDynamicString("Bloom", id, key, "Put {lang} in your translation, so it can be replaced by the language name.");
}
else
{
translation = LocalizationManager.GetDynamicString("Bloom", id, key);
}
dictionary.Add(key, translation);
}
}
}
示例2: GetHtmlMessageIfVersionIsIncompatibleWithThisBloom
public static string GetHtmlMessageIfVersionIsIncompatibleWithThisBloom(HtmlDom dom,string path)
{
var versionString = dom.GetMetaValue("BloomFormatVersion", "").Trim();
if (string.IsNullOrEmpty(versionString))
return "";// "This file lacks the following required element: <meta name='BloomFormatVersion' content='x.y'>";
float versionFloat = 0;
if (!float.TryParse(versionString, NumberStyles.Float, CultureInfo.InvariantCulture, out versionFloat))
return "This file claims a version number that isn't really a number: " + versionString;
if (versionFloat > float.Parse(kBloomFormatVersion, CultureInfo.InvariantCulture))
{
var msg = LocalizationManager.GetString("Errors.NeedNewerVersion",
"{0} requires a newer version of Bloom. Download the latest version of Bloom from {1}","{0} will get the name of the book, {1} will give a link to open the Bloom Library Web page.");
msg = string.Format(msg, path, string.Format("<a href='{0}'>BloomLibrary.org</a>", UrlLookup.LookupUrl(UrlType.LibrarySite)));
msg += string.Format(". (Format {0} vs. {1})",versionString, kBloomFormatVersion);
return msg;
}
return null;
}
示例3: FixBookIdAndLineageIfNeeded
private static void FixBookIdAndLineageIfNeeded(HtmlDom bookDOM)
{
//at version 0.9.71, we introduced this book lineage for real. At that point almost all books were from Basic book,
//so let's get further evidence by looking at the page source and then fix the lineage
if (bookDOM.GetMetaValue("bloomBookLineage", "") == "")
if (bookDOM.GetMetaValue("pageTemplateSource", "") == "Basic Book")
{
bookDOM.UpdateMetaElement("bloomBookLineage", kIdOfBasicBook);
}
//there were a number of books in version 0.9 that just copied the id of the basic book from which they were created
if (bookDOM.GetMetaValue("bloomBookId", "") == kIdOfBasicBook)
{
if (bookDOM.GetMetaValue("title", "") != "Basic Book")
{
bookDOM.UpdateMetaElement("bloomBookId", Guid.NewGuid().ToString());
}
}
}