static const char *SPECIAL_CHARS_HTML [] = {
"ℜ",
"C",
"∪",
"∞",
""
};
class QIHTMLWriter : public QIWriter {
public:
inline QIHTMLWriter() {}
inline virtual ~QIHTMLWriter(){}
inline string formatBeginDoc (void)
{
string result;
result += "\n";
result += " \n";
result += " \n";
result += " ";
return result;
}
/** A slight modification to convert "\n"'s into HTML
*/
inline string formatDefault (string rawText)
{
stringstream ss;
unsigned short k;
for (k = 0; k < rawText.length(); k++) {
if (rawText[k] == '\n') {
ss << "
";
}
else
ss << rawText[k];
}
return ss.str();
}
inline string formatSection (string sectionName)
{ return "" + formatDefault(sectionName) + "
\n"; }
inline string formatSubsection (string subsectionName)
{ return "" + formatDefault(subsectionName) + "
\n"; }
inline string formatMath (string expr)
{ return "" + formatDefault(expr) + ""; }
inline string formatInfo (string information)
{ return "" + formatDefault(information) + ""; }
inline string formatExponent (string exponent)
{ return "" + formatDefault(exponent) + ""; }
inline string formatSpecial (SpecialChar id)
{ return SPECIAL_CHARS_HTML[id]; }
inline string formatEndDoc (void)
{
string result;
result += " \n";
result += "";
return result;
}
};
#endif