summaryrefslogtreecommitdiff
path: root/dviware/dvisvgm/src/FontMetrics.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'dviware/dvisvgm/src/FontMetrics.hpp')
-rw-r--r--dviware/dvisvgm/src/FontMetrics.hpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/dviware/dvisvgm/src/FontMetrics.hpp b/dviware/dvisvgm/src/FontMetrics.hpp
index 79cb579b2e..85427720e7 100644
--- a/dviware/dvisvgm/src/FontMetrics.hpp
+++ b/dviware/dvisvgm/src/FontMetrics.hpp
@@ -21,6 +21,7 @@
#ifndef FONTMETRICS_HPP
#define FONTMETRICS_HPP
+#include <cstdint>
#include <istream>
#include <memory>
#include <string>
@@ -28,6 +29,7 @@
struct FontMetrics {
virtual ~FontMetrics () =default;
+ virtual void read (std::istream &is) {}
virtual double getDesignSize () const =0;
virtual double getCharWidth (int c) const =0;
virtual double getCharHeight (int c) const =0;
@@ -41,14 +43,15 @@ struct FontMetrics {
virtual double getDescent () const =0;
virtual bool verticalLayout () const =0;
virtual uint32_t getChecksum () const =0;
- virtual uint16_t firstChar () const =0;
- virtual uint16_t lastChar () const =0;
+ virtual uint32_t firstChar () const =0;
+ virtual uint32_t lastChar () const =0;
virtual bool isJFM () const {return false;}
+ virtual bool isOFM () const {return false;}
static std::unique_ptr<FontMetrics> read (const std::string &fontname);
};
-struct NullFontMetric : public FontMetrics {
+struct NullFontMetrics : public FontMetrics {
double getDesignSize () const override {return 1;}
double getCharWidth (int c) const override {return 0;}
double getCharHeight (int c) const override {return 0;}
@@ -62,8 +65,8 @@ struct NullFontMetric : public FontMetrics {
double getDescent () const override {return 0;}
bool verticalLayout () const override {return false;}
uint32_t getChecksum () const override {return 0;}
- uint16_t firstChar () const override {return 0;}
- uint16_t lastChar () const override {return 0;}
+ uint32_t firstChar () const override {return 0;}
+ uint32_t lastChar () const override {return 0;}
};