/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a license // agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// #ifndef _NW_PLOTEMBEDDEDFONT_H_ #define _NW_PLOTEMBEDDEDFONT_H_ #include "NwObject.h" #include "OdBinaryData.h" #include "NwPlotEnums.h" /** \details This class represents geometry. */ class NWDBEXPORT OdNwPlotEmbeddedFont : public OdNwObject { ODRX_DECLARE_MEMBERS(OdNwPlotEmbeddedFont); /** \details Default constructor. Creates an OdNwPlotEmbeddedFont object. */ OdNwPlotEmbeddedFont(); public: /** \details Virtual destructor. Frees allocated resources. */ virtual ~OdNwPlotEmbeddedFont(); public: /** \details Returns a pointer to the buffer containing the embedded font binary data. \returns OdBinaryData object with embedded font data. */ OdBinaryData getBuffer() const; /** \details Returns the embedded font technology type. \returns OdString object with the embedded font technology type. \remarks "T2Embed" is used for AGFA t2embed fonts, "OpenType" is used for XPS-font OpenType fonts, "ObfuscatedOpenType" for XPS-font obfuscated OpenType fonts. */ OdString getFontType() const; /** \details Returns the identifier for an embedded fonts, if font type is ObfuscatedOpenType. \returns OdString object with the embedded font identifier. \remarks Identifier is a 128-bit GUID with that the font is obfuscated. */ OdString getIdentifier() const; /** \details Returns the request type by which the font information was embedded. \returns OdUInt32 as a set of NwPlotEmbeddedFontRequest flags. */ OdUInt32 getRequestType() const; /** \details Returns the full font name. \returns OdString object with the full font name. */ OdString getCanonicalName() const; /** \details Returns shorter logfont name with maximum 32 byte character length. \returns OdString object with the logfont name. */ OdString getLogFontName() const; /** \details Returns the embedding privilege of the font. \returns NwPlotEmbeddedFontPrivilege enumeration with the embedding privilege of the font. */ NwPlotEmbeddedFontPrivilege::Enum getPrivilege() const; /** \details Returns the character set of the embedded font. \returns NwPlotEmbeddedFontCharacterCode enumeration with the character set of the embedded font. */ NwPlotEmbeddedFontCharacterCode::Enum getCharacterSetType() const; }; /** \details This template class is a specialization of the OdSmartPtr class for OdNwPlotEmbeddedFont object pointers. */ typedef OdSmartPtr OdNwPlotEmbeddedFontPtr; #endif // _NW_PLOTEMBEDDEDFONT_H_