summaryrefslogtreecommitdiff
path: root/Build/source/texk/lcdf-typetools/lcdf-typetools-2.104/mmpfb/myfont.hh
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/lcdf-typetools/lcdf-typetools-2.104/mmpfb/myfont.hh')
-rw-r--r--Build/source/texk/lcdf-typetools/lcdf-typetools-2.104/mmpfb/myfont.hh31
1 files changed, 31 insertions, 0 deletions
diff --git a/Build/source/texk/lcdf-typetools/lcdf-typetools-2.104/mmpfb/myfont.hh b/Build/source/texk/lcdf-typetools/lcdf-typetools-2.104/mmpfb/myfont.hh
new file mode 100644
index 00000000000..ffe35668f94
--- /dev/null
+++ b/Build/source/texk/lcdf-typetools/lcdf-typetools-2.104/mmpfb/myfont.hh
@@ -0,0 +1,31 @@
+#ifndef MYFONT_HH
+#define MYFONT_HH
+#include <efont/t1font.hh>
+namespace Efont { class MultipleMasterSpace; }
+class ErrorHandler;
+
+class MyFont : public Efont::Type1Font { public:
+
+ MyFont(Efont::Type1Reader &);
+ ~MyFont();
+
+ bool set_design_vector(Efont::MultipleMasterSpace *, const Vector<double> &, ErrorHandler * = 0);
+
+ void interpolate_dicts(bool force_integers, ErrorHandler *);
+ void interpolate_charstrings(int precision, ErrorHandler * = 0);
+
+ private:
+
+ typedef Vector<double> NumVector;
+
+ int _nmasters;
+ Vector<double> _weight_vector;
+
+ void interpolate_dict_int(PermString, Dict, ErrorHandler *);
+ void interpolate_dict_num(PermString, Dict, bool round_integer = false);
+ void interpolate_dict_numvec(PermString, Dict, int round_mode = 0, bool executable = false);
+ void kill_def(Efont::Type1Definition *, int which_dict = -1);
+
+};
+
+#endif