You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
2.7 KiB
78 lines
2.7 KiB
|
|
#include <string> |
|
#include <vector> |
|
#include <iostream> |
|
#include <gtkmathview/MathView/SmartPtr.hh> |
|
#include <gtkmathview/MathView/Length.hh> |
|
#include <gtkmathview/MathView/AbstractLogger.hh> |
|
#include <gtkmathview/MathView/defs.h> |
|
#include <gtkmathview/MathView/libxml2_MathView.hh> |
|
|
|
typedef libxml2_MathView MathView; |
|
|
|
class SimpleSVG { |
|
|
|
double width = 21; |
|
double height = 29.7; |
|
Length::Unit unitId = Length::CM_UNIT; |
|
double xMargin = 2; |
|
double yMargin = 2; |
|
double fontSize = DEFAULT_FONT_SIZE; |
|
char* configPath = 0; |
|
|
|
SmartPtr<AbstractLogger> logger; |
|
SmartPtr<MathView> view; |
|
|
|
struct Pair { |
|
const std::string key; |
|
const std::string val; |
|
}; |
|
|
|
std::vector<struct Pair> defaultConfiguration { |
|
{"math-engine-configuration/version", "0.8.0"}, |
|
{"svg-backend/null-shaper/enabled", "true"}, |
|
{"svg-backend/null-shaper/priority", "0"}, |
|
{"svg-backend/space-shaper/enabled", "true"}, |
|
{"svg-backend/space-shaper/priority", "1"}, |
|
{"svg-backend/type1-computer-modern-shaper/enabled", "false"}, |
|
{"svg-backend/type1-computer-modern-shaper/priority", "1"}, |
|
{"svg-backend/ttf-computer-modern-shaper/enabled", "true"}, |
|
{"svg-backend/ttf-computer-modern-shaper/priority", "1"}, |
|
{"svg-backend/ttf-computer-modern-shaper/post-shaping", "always"}, |
|
{"fonts/computer-modern/font-name", "cmr10"}, |
|
{"fonts/computer-modern/font-name", "cmmi10"}, |
|
{"fonts/computer-modern/font-name", "cmex10"}, |
|
{"fonts/computer-modern/font-name", "cmex10"}, |
|
|
|
{"fonts/computer-modern/font-name", "cmr10"}, |
|
{"fonts/computer-modern/font-name", "cmb10"}, |
|
{"fonts/computer-modern/font-name", "cmbx10"}, |
|
{"fonts/computer-modern/font-name", "cmbxti10"}, |
|
{"fonts/computer-modern/font-name", "cmti10"}, |
|
{"fonts/computer-modern/font-name", "cmss10"}, |
|
{"fonts/computer-modern/font-name", "cmssi10"}, |
|
{"fonts/computer-modern/font-name", "cmssbx10"}, |
|
{"fonts/computer-modern/font-name", "cmtt10"}, |
|
{"fonts/computer-modern/font-name", "cmsy10"}, |
|
{"fonts/computer-modern/font-name", "cmbsy10"}, |
|
{"fonts/computer-modern/font-name", "cmmi10"}, |
|
{"fonts/computer-modern/font-name", "cmex10"}, |
|
{"fonts/computer-modern/font-name", "msam10"}, |
|
{"fonts/computer-modern/font-name", "msbm10"}, |
|
{"fonts/computer-modern/font-name", "cmmib10"} |
|
}; |
|
|
|
|
|
public: |
|
|
|
SimpleSVG(); |
|
|
|
std::string |
|
process_mathml(const std::string &buffer) ; |
|
|
|
std::vector<std::string> |
|
process_mathml(const std::vector<std::string> &mathmlsrcbufs) ; |
|
|
|
|
|
}; |
|
|
|
|