jkriege2
868d6dcdf4
fixed several compile warnings
2024-01-23 13:09:37 +01:00
jkriege2
b0df7a1fd7
NEW/BREAKING: provide general targets JKQTPlotter5/6::JKQTPlotter5/6, JKQTPlotter5/6::JKQTMathText5/6, ... which are independent of the type of build (shared/static)
...
NEW/BREAKING: refactor CMake-Code, so static/dynamic switch is done via <code>BUILD_SHARED_LIBS</code>, which retires <code>JKQtPlotter_BUILD_STATIC_LIBS</code>, <code>JKQtPlotter_BUILD_SHARED_LIBS</code> and removes the capability to build static and shared libraries in one location (fixes issue #104 )
NEW: prepareed library for CMake's <a href="https://cmake.org/cmake/help/latest/module/FetchContent.html ">FetchContent</a>-API
NEW: the different sub-libraries JKQTPlotter, JKQTFastPlotter (DEPRECATED), JKQTMath, JKQTMathText can be activated/deactivated with CMake options JKQtPlotter_BUILD_LIB_JKQTPLOTTER, JKQtPlotter_BUILD_LIB_JKQTFASTPLOTTER, JKQtPlotter_BUILD_LIB_JKQTMATHTEXT, JKQtPlotter_BUILD_LIB_JKQTMATH
2024-01-16 13:07:08 +01:00
jkriege2
f07c013c7f
FIXed slicing warning, by making the slice-operation explicit
2024-01-11 14:22:46 +01:00
jkriege2
f096aa9602
fixed several static code analysis warnings and security vulnerabilities
2024-01-10 10:35:43 +01:00
jkriege2
1b9d0506fd
fix
2024-01-08 21:31:18 +01:00
jkriege2
dde0151cb6
fix typo
2024-01-08 21:13:00 +01:00
jkriege2
66e374a5d9
FIXed typo in JKQTMathTextDecoratedNode (placement of decorations was wrong after one of the last commits) and improved placement
2024-01-08 21:11:32 +01:00
jkriege2
25ff0a1b5b
IMPROVED JKQTMathText rendering of \sfrac and \stfrac
2024-01-08 21:00:30 +01:00
jkriege2
d030cf5f3f
FIX JKQTMathText rendering problem with a combination of numbers and text/symbols (wrong advance was used)
2024-01-08 20:29:02 +01:00
jkriege2
09e07cb12a
NEW/REWORKED: extended the set of functions like JKQTMathTextGetTightBoundingRect(): These use an internal, thread-safe cache and capsule calls to QFontMetricsF-instances. This significantly improves speed in (parallelized) plotting.
2024-01-08 17:16:31 +01:00
jkriege2
9662ed2d69
MODIFIED: Synchronization of JKQTMathText and JKQTBasePlotter over threads: using read/write lockers now and removed some unnecessary mutexes by using a kind of singleton pattern
2024-01-05 23:26:47 +01:00
jkriege2
a1408ccbd0
JKQTMathText: Update several layouting nodes (especially braces)
2023-07-01 15:57:57 +02:00
jkriege2
4b4075c226
JKQTMathText: fixed super-script sizing (using tightboundingbox around x instead of xHeight(), which caused some problems recently for several standard fonts
2023-07-01 15:09:38 +02:00
jkriege2
3fc8951851
made more STATIC data members thread_local or secured them by a std::mutex. This was at least JKQTMathText and JKQTBasePlotter should be usable in several threads
2023-06-30 13:52:17 +02:00
jkriege2
75db7cff42
dox update/fix
2022-09-19 21:55:12 +02:00
jkriege2
6ebd8743ca
JKQTMathText:
...
- NEW: Added the Fira Math fonts as sans-serif symbol font to the library (as a ressource) and added JKQTMathText::useFiraMath()
- NEW: Added JKQTMathText::useGuiFonts()</li>
JKQTPlotter:
- NEW: Using JKQTMathText::useGuiFonts() for FONT rendering by default
2022-09-01 14:36:34 +02:00
jkriege2
e729ebbc78
docfix
2022-08-29 21:46:38 +02:00
jkriege2
6273e469cd
BREAKING/REWORKED: Separated the LaTeX parser into JKQTMathTextLatexParser from JKQTMathText
2022-08-20 16:19:40 +02:00
jkriege2
5722970496
JKQTMathText:
...
- NEW: added environment-modifying commands for font sizes: \c \\tiny ... \c \\normalsize ... \c \\Huge
- NEW: added environment-modifying commands for text color: \c {\\color{COL}...}
- NEW: added environment-modifying commands for text formatting: \c {\\bfseries...}, \c {\\itshape...}, \c {\\bf...}, \c {\\it...}, \c {\\sffamily...}, \c {\\ttfamily...}, ...
- REFACTORING: split up several .h/.cpp-files in nodes subdirectory
2022-08-19 12:16:00 +02:00
jkriege2
dde8deb56f
JKQTMathText: improved placement of sub-/superscript nodes by using JKQTMathtextNodeSize::baselineXCorrection to shift subscript to the left for e.g. preceding italic text or symbols that require such a shift
...
JKQTMathText: moved sub-/superscripts placed below/above a bit further apart from the central symbol/node
2022-08-17 22:56:57 +02:00
jkriege2
6fa5dd65ed
JKQTMathText: Code Cleanup: using JKQTMathTextNodeSize for all size-calculation functions and got rid of all functions that take the output parameters with call-by-reference
...
JKQTMathText: JKQTMathTextBraceNode now properly supports different opening and closing braces e.g. |...> for bra-vetors
2022-08-16 23:05:04 +02:00
jkriege2
74cf8046ce
code cleanup: Removed Parameter prevNodeSize from JKQTMathTextNode::draw() and JKQTMathTextNode::getSize()/JKQTMathTextNode::getSizeInternal(), since it is only really necessary for JKQTMathTextSubscriptNode and JKQTMathTextSuperscriptNode
...
bugfixed possible crash in JKQTMathTextWhitespaceNode (QMap[n1]=QMap[n2]=something; does not work for some reason)
2022-08-14 16:59:03 +02:00
jkriege2
e757e26503
JKQTMathText: ensure mini size of \left/\right braces, when contained text is very small, e.g. only lower-case
...
JKQTMathText: improve width-calculation of \left/\right braces
2022-08-13 21:56:09 +02:00
jkriege2
cfac5138b3
docfix
2022-08-13 19:47:35 +02:00
jkriege2
f83a3468b1
JKQTMathText:
...
- new options interface for JKQTMathText::parse()
- breaking: removed JKQTMathtext::unparsedNode
- several minor improvements
2022-08-13 19:43:39 +02:00
jkriege2
ce6637fb4b
NEW: JKQTMathText::parse() by default allows linebreaks in the LaTeX string to be parsed. This can be switched off by a parameter
...
NEW: TabSize can be set in JKQTMathTextVerbatimNode
2022-08-13 14:36:49 +02:00
jkriege2
c58fc985ce
JKQTMathText: optimized frac/sub/super spacing
2022-08-12 16:50:26 +02:00
jkriege2
04beafb1a6
JKQTMathText: text/narrow-math-operators have less space around the,
2022-08-12 13:28:34 +02:00
jkriege2
86ec545794
bug fixed
2022-08-12 13:04:26 +02:00
jkriege2
67579da1bc
JKQTMathText: NEW: array/tabular-environments have limited support for formatting string like l|r|c and for \hline , \hdashline , \toprule , \midrule , \bottomrule
2022-08-12 12:54:10 +02:00
jkriege2
05d791502b
fixed \min & \max + docfix
2022-08-11 15:22:48 +02:00
jkriege2
8876c361cf
bugfix QSet <--> QList conversion + docfix
2022-08-11 15:12:11 +02:00
jkriege2
bfee90b4fe
JKQTMathText: added long arrow symbols
2022-08-11 14:17:39 +02:00
jkriege2
331a67c5a8
JKQTMathText: added \c \\dashuline{X}, \c \\dotuline{X}, \c \\underleftarrow{X}, \c \\underrightarrow{X}, \c \\underleftrightarrow{X}, \c \\overleftarrow{X}, \c \\overrightarrow{X}, \c \\overleftrightarrow{X}
...
JKQTMathText: corrected linewidths for decorations
2022-08-11 14:17:04 +02:00
jkriege2
62e3b47d08
JKQTMathText: improved rendering of decorations
2022-08-11 12:26:14 +02:00
jkriege2
c7b0185735
JKQTMathtext: added several new symbols that were missing so far
2022-08-11 11:33:29 +02:00
jkriege2
84f02e3ab6
JKQTMathText: improved symbol listing (auto-generated)
2022-08-11 09:06:06 +02:00
jkriege2
868b89a99e
JKQTMathText:
...
NEW: added \c \\snugshade{...}
NEW: added \c \\snugbox{...}
NEW: added \c \\phantom{xXy} , \c \\vphantom{xXy} and \c \\hphantom{xXy} instructions for whitespaces with the size of \c xXy
2022-08-10 14:36:16 +02:00
jkriege2
5283a1a995
JKQTMathText: IMPROVED/REWORKED rendering of blackboard font: now several different rendering modes can be selected using JKQTMathText::setFontBlackboradMode()
2022-08-10 12:12:30 +02:00
jkriege2
3de6cf59d2
JKQTMathtext: bugfixed symbols for registered and copyright (had wrong codepoint)
2022-08-10 12:09:13 +02:00
jkriege2
d3b0e88bb8
jkqtmathtext_render: added option to generate listing of all symbols + fixed some bugs
2022-08-07 22:13:31 +02:00
jkriege2
ad171c161f
whitespacenode: updated drawing/calculating
2022-08-07 17:50:38 +02:00
jkriege2
8af79cb927
JKQTMathTextSymbolNode: bugfixed bar-drawing for hbar
2022-08-07 17:49:46 +02:00
jkriege2
f7ad259aeb
JKQTMathText: added JKATMathTextNode::getSize()-Variant with struct return value
2022-08-07 17:48:05 +02:00
jkriege2
715aa4e7d9
JKQTMathText: bugfixed some uninitialized variables
2022-08-07 17:42:43 +02:00
jkriege2
06db6633e7
JKQTMathtext: added \st and \sout-instructions
2022-08-07 17:40:19 +02:00
jkriege2
7f2dc5f645
JKQTMathText: made simulated blackboard-font nicer (thinner outline)
2022-08-07 17:38:57 +02:00
jkriege2
00c6e39391
docufix
2022-08-07 17:37:34 +02:00
jkriege2
7d686f0c9a
JKQTMathText:
...
- BREAKING/REWORKED: The \\verb!...!-command now works the same as in LaTeX
- NEW: added support for \\begin{verbatim}...\\end{verbatim}, \\begin{verbatim*}...\\end{verbatim*}
2022-08-03 16:12:19 +02:00
jkriege2
c7ffdacfcc
JKQTMathText: added support for \\bigl,\\bigr,\\Bigr,... commands for fixed-size but enlarged paramtheses
2022-08-03 09:55:45 +02:00