diff --git a/Fb2File/Fb2File.cpp b/Fb2File/Fb2File.cpp
index c030574cca..a9ca37da37 100644
--- a/Fb2File/Fb2File.cpp
+++ b/Fb2File/Fb2File.cpp
@@ -725,7 +725,7 @@ public:
}
}
}
- else if(sName == L"p")
+ else if(sName == L"p" || sName == L"subtitle")
{
// Стиль section-p
oFootnotes += L"";
@@ -734,6 +734,40 @@ public:
readP(L"", oFootnotes);
oFootnotes += L"";
}
+ else if(sName == L"poem")
+ {
+ int nPDepth = m_oLightReader.GetDepth();
+ while(m_oLightReader.ReadNextSiblingNode(nPDepth))
+ {
+ std::wstring sPName = m_oLightReader.GetName();
+ // Читаем stanza (один или более)
+ if(sPName == L"stanza")
+ {
+ int nSDeath = m_oLightReader.GetDepth();
+ while(m_oLightReader.ReadNextSiblingNode(nSDeath))
+ {
+ // Читаем v (один или более)
+ if(m_oLightReader.GetName() == L"v")
+ {
+ oFootnotes += L"";
+ oFootnotes += L"";
+ oFootnotes += L"";
+ readP(L"", oFootnotes);
+ oFootnotes += L"";
+ }
+ }
+ }
+ // Читаем text-author (любое)
+ else if(sPName == L"text-author")
+ {
+ oFootnotes += L"";
+ oFootnotes += L"";
+ oFootnotes += L"";
+ readP(L"", oFootnotes);
+ oFootnotes += L"";
+ }
+ }
+ }
}
oFootnotes += L"";
}
diff --git a/Fb2File/template/template.docx b/Fb2File/template/template.docx
index 64a7e9a3aa..770d45153d 100644
Binary files a/Fb2File/template/template.docx and b/Fb2File/template/template.docx differ