00001
00002
00003
00004
00005
00006
00007
00008 #ifndef __GLYPHPOSITIONADJUSTMENTS_H
00009 #define __GLYPHPOSITIONADJUSTMENTS_H
00010
00011 #include "LETypes.h"
00012 #include "OpenTypeTables.h"
00013
00014
00015 class GlyphPositionAdjustment
00016 {
00017 public:
00018
00019 GlyphPositionAdjustment();
00020 GlyphPositionAdjustment(float xPlace, float yPlace, float xAdv, float yAdv);
00021 ~GlyphPositionAdjustment();
00022
00023 float getXPlacement();
00024 float getYPlacement();
00025 float getXAdvance();
00026 float getYAdvance();
00027
00028 void setXPlacement(float newXPlacement);
00029 void setYPlacement(float newYPlacement);
00030 void setXAdvance(float newXAdvance);
00031 void setYAdvance(float newYAdvance);
00032
00033 void adjustXPlacement(float xAdjustment);
00034 void adjustYPlacement(float yAdjustment);
00035 void adjustXAdvance(float xAdjustment);
00036 void adjustYAdvance(float yAdjustment);
00037
00038 private:
00039 float xPlacement;
00040 float yPlacement;
00041 float xAdvance;
00042 float yAdvance;
00043 };
00044
00045 inline GlyphPositionAdjustment::GlyphPositionAdjustment()
00046 : xPlacement(0), yPlacement(0), xAdvance(0), yAdvance(0)
00047 {
00048
00049 }
00050
00051 inline GlyphPositionAdjustment::GlyphPositionAdjustment(float xPlace, float yPlace, float xAdv, float yAdv)
00052 : xPlacement(xPlace), yPlacement(yPlace), xAdvance(xAdv), yAdvance(yAdv)
00053 {
00054
00055 }
00056
00057 inline GlyphPositionAdjustment::~GlyphPositionAdjustment()
00058 {
00059
00060 }
00061
00062 inline float GlyphPositionAdjustment::getXPlacement()
00063 {
00064 return xPlacement;
00065 }
00066
00067 inline float GlyphPositionAdjustment::getYPlacement()
00068 {
00069 return yPlacement;
00070 }
00071
00072 inline float GlyphPositionAdjustment::getXAdvance()
00073 {
00074 return xAdvance;
00075 }
00076
00077 inline float GlyphPositionAdjustment::getYAdvance()
00078 {
00079 return yAdvance;
00080 }
00081
00082 inline void GlyphPositionAdjustment::setXPlacement(float newXPlacement)
00083 {
00084 xPlacement = newXPlacement;
00085 }
00086
00087 inline void GlyphPositionAdjustment::setYPlacement(float newYPlacement)
00088 {
00089 yPlacement = newYPlacement;
00090 }
00091
00092 inline void GlyphPositionAdjustment::setXAdvance(float newXAdvance)
00093 {
00094 xAdvance = newXAdvance;
00095 }
00096
00097 inline void GlyphPositionAdjustment::setYAdvance(float newYAdvance)
00098 {
00099 yAdvance = newYAdvance;
00100 }
00101
00102 inline void GlyphPositionAdjustment::adjustXPlacement(float xAdjustment)
00103 {
00104 xPlacement += xAdjustment;
00105 }
00106
00107 inline void GlyphPositionAdjustment::adjustYPlacement(float yAdjustment)
00108 {
00109 yPlacement += yAdjustment;
00110 }
00111
00112 inline void GlyphPositionAdjustment::adjustXAdvance(float xAdjustment)
00113 {
00114 xAdvance += xAdjustment;
00115 }
00116
00117 inline void GlyphPositionAdjustment::adjustYAdvance(float yAdjustment)
00118 {
00119 yAdvance += yAdjustment;
00120 }
00121
00122 #endif