Files
EgtGeomKernel/FontManager.h
T
Dario Sassi 396d53fc5d EgtGeomKernel 1.5h6 :
- migliorata trasformazioni di archi in curve di Bezier
- aggiunta funzione di esplosione di testi in più entità su interruzione di linea
- in TSC aggiunta funzione TEXT.SPLIT che fa quanto detto sopra
- in TSC aggiunta gestione colori e materiali notevoli da entità
- corretta assegnazione materiale a entità tramite Id
- piccole migliorie a PolyArc, aggiunta IsFlat.
2014-08-23 08:42:41 +00:00

56 lines
2.2 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2014-2014
//----------------------------------------------------------------------------
// File : FontManager.h Data : 28.05.14 Versione : 1.5f1
// Contenuto : Dichiarazione della classe FontManager.
//
//
//
// Modifiche : 28.05.14 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
#pragma once
#include "FontNfe.h"
#include "FontOs.h"
#include "/EgtDev/Include/EGkBBox3d.h"
#include "/EgtDev/Include/EGkPolyLine.h"
#include <string>
//----------------------------------------------------------------------------
class FontManager
{
public :
bool Init( const std::string& sNfeFontDir, const std::string& sDefaultFont) ;
bool SetCurrFont( const std::string& sFont, int nWeight, bool bItalic,
double dHeight, double dRatio, double dAddAdvance) ;
bool GetCapHeight( double& dCapH) ;
bool GetAscent( double& dAsc) ;
bool GetDescent( double& dDesc) ;
bool GetCapBox( const std::string& sText, int nInsPos, BBox3d& b3Box) ;
bool GetBBox( const std::string& sText, int nInsPos, BBox3d& b3Box) ;
bool GetOutline( const std::string& sText, int nInsPos, ICURVEPLIST& lstPC) ;
bool ApproxWithLines( const std::string& sText, int nInsPos, double dLinTol, double dAngTolDeg, POLYLINELIST& lstPL) ;
bool ApproxWithArcs( const std::string& sText, int nInsPos, double dLinTol, double dAngTolDeg, POLYARCLIST& lstPA) ;
bool GetTextLines( const std::string& sText, int nInsPos, PNTVECTOR& vPt, STRVECTOR& vLine) ;
private :
std::string m_sNfeFontDir ;
std::string m_sDefaultFont ;
bool m_bCurrNfeFont ;
NfeFont m_NfeFont ;
OsFont m_OsFont ;
public :
static FontManager& GetFontManager( void)
{ static FontManager fntMgr ;
return fntMgr ; }
private :
FontManager( void) {}
FontManager( FontManager const& copy) ; // Not Implemented
FontManager& operator=( FontManager const& copy) ; // Not Implemented
} ;