27#ifndef OUTLINE_FONT_H_ 
   28#define OUTLINE_FONT_H_ 
   35#include <freetype2/ft2build.h> 
   95    EMBEDDING_PERMISSION GetEmbeddingPermission() 
const;
 
  102    static OUTLINE_FONT* LoadFont( 
const wxString& aFontFileName, 
bool aBold, 
bool aItalic,
 
  103                                   const std::vector<wxString>* aEmbeddedFiles,
 
  104                                   bool aForDrawingSheet );
 
  111    double GetInterline( 
double aGlyphHeight, 
const METRICS& aFontMetrics ) 
const override;
 
  113    VECTOR2I GetTextAsGlyphs( 
BOX2I* aBoundingBox, std::vector<std::unique_ptr<GLYPH>>* aGlyphs,
 
  114                              const wxString& aText, 
const VECTOR2I& aSize,
 
  118    void GetLinesAsGlyphs( std::vector<std::unique_ptr<GLYPH>>* aGlyphs, 
const wxString& aText,
 
  120                           const METRICS& aFontMetrics ) 
const;
 
  125    void RenderToOpenGLCanvas( KIGFX::OPENGL_FREETYPE& aTarget, 
const wxString& aString,
 
  126                               const VECTOR2D& aSize, 
const wxPoint& aPosition,
 
  127                               const EDA_ANGLE& aAngle, 
bool aMirror ) 
const;
 
  131    FT_Error loadFace( 
const wxString& aFontFileName, 
int aFaceIndex );
 
  135    VECTOR2I getTextAsGlyphs( 
BOX2I* aBoundingBox, std::vector<std::unique_ptr<GLYPH>>* aGlyphs,
 
  136                              const wxString& aText, 
const VECTOR2I& aSize,
 
  142                                      std::vector<std::unique_ptr<GLYPH>>* aGlyphs,
 
  143                                      const wxString& aText, 
const VECTOR2I& aSize,
 
  145                                      bool aMirror, 
const VECTOR2I& aOrigin,
 
 
constexpr BOX2I KiROUND(const BOX2D &aBoxD)
 
wxString m_fontFileName
Font file name.
 
Class OUTLINE_FONT implements outline font drawing.
 
static std::mutex m_freeTypeMutex
Mutex for freetype access, FT_Library and FT_Face are not thread safe.
 
static FT_Library m_freeType
 
static constexpr double m_superscriptVerticalOffset
 
bool IsFakeItalic() const
 
const FT_Face & GetFace() const
 
int subscriptSize(int aSize) const
 
bool IsItalic() const override
 
static constexpr int m_charSizeScaler
 
int faceSize(int aSize) const
 
bool IsOutline() const override
 
std::map< unsigned int, std::vector< std::vector< VECTOR2D > > > m_contourCache
 
static constexpr double m_subscriptSuperscriptSize
 
const wxString & GetFileName() const
 
static constexpr double m_outlineFontSizeCompensation
 
static constexpr double m_underlineOffsetScaler
 
int subscriptSize() const
 
bool IsBold() const override
 
static constexpr double m_subscriptVerticalOffset
 
unsigned int TEXT_STYLE_FLAGS
 
VECTOR2< int32_t > VECTOR2I
 
VECTOR2< double > VECTOR2D