![]() |
JKQTPlotter trunk/v5.0.0
an extensive Qt5+Qt6 Plotter framework (including a feature-richt plotter widget, a speed-optimized, but limited variant and a LaTeX equation renderer!), written fully in C/C++ and without external dependencies
|
Classes | |
| struct | JKQTMathTextBoxInstructionNode::InstructionProperties |
| defines the implementation of an instruction represented by JKQTMathTextModifiedTextPropsInstructionNode More... | |
| struct | JKQTMathTextSimpleInstructionNode::InstructionProperties |
| defines the implementation of an instruction represented by JKQTMathTextModifiedTextPropsInstructionNode More... | |
| struct | JKQTMathTextModifiedTextPropsInstructionNode::InstructionProperties |
| defines the implementation of an instruction represented by JKQTMathTextModifiedTextPropsInstructionNode More... | |
| struct | JKQTMathTextModifiedEnvironmentInstructionNode::InstructionProperties |
| defines the implementation of an instruction represented by JKQTMathTextModifiedTextPropsInstructionNode More... | |
| class | JKQTMathTextBlockNode |
subclass representing a {...} block More... | |
| class | JKQTMathTextBoxInstructionNode |
subclass representing an instruction node which draws a (possibly colored) box around it's contents i.e. it represents instructions like \fbox{...}, \colorbox{color}{...}, ... More... | |
| class | JKQTMathTextBraceNode |
| subclass representing a brace node More... | |
| class | JKQTMathTextDecoratedNode |
subclass representing a decorated text m (e.g. \vec \hat ...) node More... | |
| class | JKQTMathTextDualChildNode |
| subclass representing a node in the syntax tree, that has two children More... | |
| class | JKQTMathTextEmptyBoxNode |
| subclass representing an empty bbox with defined width/height in the syntax tree More... | |
| class | JKQTMathTextFracNode |
| subclass representing a \frac node More... | |
| class | JKQTMathTextHorizontalListNode |
| subclass representing a list of nodes in the syntax tree, layed out horizontally More... | |
| class | JKQTMathTextInstruction1Node |
| subclass representing an instruction node with exactly one argument and possibly additional parameters in the syntax tree This is a base-class without concrete implementations ... Implementations can be found in derived classes! More... | |
| class | JKQTMathTextMatrixNode |
subclass representing a \begin{matrix} , \begin{tabular} , \begin{array} , ... node More... | |
| class | JKQTMathTextModifiedEnvironmentInstructionNode |
subclass representing an instruction node which modify the current JKQTMathTextEnvironment, in the current block. This implements functions like \bf or \color{COL} More... | |
| class | JKQTMathTextModifiedTextPropsInstructionNode |
subclass representing an instruction node which modifies the current font (as defined in JKQTMathTextEnvironment), for it's child node, i.e. it represents instructions like \textbf{...}, \ul{underlinedText}, ... More... | |
| class | JKQTMathTextModifyEnvironmentNodeMixIn |
mixin extending a node that does not produce any output, but provides a function modifyEnvironment() that modifies the current JKQTMathTextEnvironment. Deriving classes are used to represent instructions like \bf or \color{...} that alter the text formatting for all further nodes in the current block. More... | |
| class | JKQTMathTextMultiChildNode |
| subclass representing a node in the syntax tree, that has two children More... | |
| class | JKQTMathTextNode |
| subclass representing one node in the syntax tree More... | |
| class | JKQTMathTextNonDrawingBaseNode |
| base class for all derived classes that do not draw anything More... | |
| class | JKQTMathTextNoopNode |
| subclass representing a node that outputs nothing More... | |
| class | JKQTMathTextPhantomNode |
| generates whitespace with the size of the contained node More... | |
| class | JKQTMathTextSimpleInstructionNode |
subclass representing a simple instruction node which only accepts string arguments, not LaTeX arguments i.e. it represents instructions like \unicode{...}, ... More... | |
| class | JKQTMathTextSingleChildNode |
| subclass representing a node in the syntax tree, that has one child More... | |
| class | JKQTMathTextSqrtNode |
| subclass representing a sqrt node More... | |
| class | JKQTMathTextSubscriptNode |
| subclass representing an subscript node with exactly one argument in the syntax tree More... | |
| class | JKQTMathTextSuperscriptNode |
| subclass representing an superscript node with exactly one argument in the syntax tree More... | |
| class | JKQTMathTextSymbolNode |
subclass representing one symbol (e.g. \alpha , \cdot ...) node in the syntax tree More... | |
| class | JKQTMathTextTextBaseNode |
| base class for nodes representing text in the syntax tree More... | |
| class | JKQTMathTextTextNode |
| subclass representing one text node in the syntax tree More... | |
| class | JKQTMathTextVerbatimNode |
| subclass representing a verbatim (plain-text) node with support for line-breaks in the syntax tree More... | |
| class | JKQTMathTextVerticalListNode |
| subclass representing a list of nodes in the syntax tree, layed out vertically More... | |
| class | JKQTMathTextWhitespaceNode |
| subclass representing one whitepsace node in the syntax tree More... | |
| struct | JKQTMathTextMatrixNode::LayoutInfo |
| describes the layout of the whole node More... | |
| struct | JKQTMathTextTextNode::LayoutInfo |
| describes the layout of the whole node More... | |
| struct | JKQTMathTextVerbatimNode::LayoutInfo |
| describes the layout of the whole node More... | |
| struct | JKQTMathTextVerticalListNode::LayoutInfo |
| describes the layout of the whole node More... | |
| struct | JKQTMathTextBraceNode::NodeSize |
| defines the size of the node (JKQTMathTextNodeSize) and additional information More... | |
| struct | JKQTMathTextSymbolNode::NodeSize |
| return type for getSymbolSize(), extends JKQTMathTextNodeSize with information about x-correction for sub- and superscript More... | |
| struct | JKQTMathTextSymbolNode::SymbolFullProps |
| properties of the symbol, extends SymbolProps with font... More... | |
| struct | JKQTMathTextSymbolNode::SymbolProps |
| properties of the symbol More... | |
| struct | JKQTMathTextWhitespaceNode::WhitespaceProps |
| describes a whitespace More... | |
Functions | |
| JKQTMATHTEXT_LIB_EXPORT QString | JKQTMathTextNodeTree2String (JKQTMathTextNode *root) |
| converts a node-tree with the given root into a string, representing the node-tree | |
| JKQTMATHTEXT_LIB_EXPORT JKQTMathTextNode * | simplifyAndTrimJKQTMathTextNode (JKQTMathTextNode *node) |
| calls simplifyJKQTMathTextNode(). In addition it tries to clear whitespace at the start and end of the tree | |
| JKQTMATHTEXT_LIB_EXPORT JKQTMathTextNode * | simplifyJKQTMathTextNode (JKQTMathTextNode *node) |
| simplifies the node node and the tree below it. You can put the return value in place of node after the call | |
This group contains all classes that are used to build a memory-representation of the math to be rendered. They form a tree in memory.
| JKQTMATHTEXT_LIB_EXPORT QString JKQTMathTextNodeTree2String | ( | JKQTMathTextNode * | root | ) |
converts a node-tree with the given root into a string, representing the node-tree
Here is an example output for
The output looks like this:
JKQTMathTextModifiedTextPropsInstructionNode(equation) +--MTHorizontalListNode | +--JKQTMathTextTextNode(x) | +--MTsubscriptNode | | +--MTHorizontalListNode | | | +--JKQTMathTextTextNode(1) | | | +--JKQTMathTextTextNode(/) | | | +--JKQTMathTextTextNode(2) | +--JKQTMathTextSymbolNode(=) | +--MTfracNode | | +--MTHorizontalListNode | | | +--JKQTMathTextSymbolNode(-) | | | +--JKQTMathTextTextNode(b) | | | +--JKQTMathTextSymbolNode(pm) | | | +--MTsqrtNode | | | | +--MTHorizontalListNode | | | | | +--JKQTMathTextTextNode(b) | | | | | +--MTsuperscriptNode | | | | | | +--JKQTMathTextTextNode(2) | | | | | +--JKQTMathTextSymbolNode(-) | | | | | +--JKQTMathTextTextNode(4ac) | | +--JKQTMathTextTextNode(2a)
| JKQTMATHTEXT_LIB_EXPORT JKQTMathTextNode * simplifyAndTrimJKQTMathTextNode | ( | JKQTMathTextNode * | node | ) |
calls simplifyJKQTMathTextNode(). In addition it tries to clear whitespace at the start and end of the tree
| JKQTMATHTEXT_LIB_EXPORT JKQTMathTextNode * simplifyJKQTMathTextNode | ( | JKQTMathTextNode * | node | ) |
simplifies the node node and the tree below it. You can put the return value in place of node after the call
Basically this takes does the following steps (recursively):