search/mag_sel search/close
StreamFontSource.h
1 // Copyright 2001-2021 Aspose Pty Ltd. All Rights Reserved.
3 //
4 // This file is part of Aspose.Words. The source code in this file
5 // is only intended as a supplement to the documentation, and is provided
6 // "as is", without warranty of any kind, either expressed or implied.
9 #pragma once
10 
11 #include <Aspose.Words.Cpp/Fonts/IFontData.h>
12 #include <cstdint>
13 
14 #include <Aspose.Words.Cpp/Fonts/FontSourceType.h>
15 #include <Aspose.Words.Cpp/Fonts/FontSourceBase.h>
16 #include <Aspose.Words.Cpp/aspose_words_api_defs.h>
17 
18 namespace System { namespace IO { class Stream; } }
19 namespace System { template <typename> class SmartPtr; }
20 namespace System { template <typename T0> using SharedPtr = System::SmartPtr<T0>; }
21 namespace System { class String; }
22 namespace System { namespace Collections { namespace Generic { template <typename> class IEnumerable; } } }
23 
24 namespace Aspose {
25 
26 namespace Words {
27 
28 namespace Fonts {
29 
76 class ASPOSE_WORDS_SHARED_CLASS StreamFontSource : public Aspose::Words::Fonts::FontSourceBase, public Aspose::Fonts::IFontData
77 {
78  typedef StreamFontSource ThisType;
79  typedef Aspose::Words::Fonts::FontSourceBase BaseType;
80  typedef Aspose::Fonts::IFontData BaseType1;
81 
82  typedef ::System::BaseTypesInfo<BaseType, BaseType1> ThisTypeBaseTypesInfo;
83  ASPOSE_WORDS_SHARED_RTTI_INFO_DECL();
84 
85 public:
86 
88  ASPOSE_WORDS_SHARED_API Aspose::Words::Fonts::FontSourceType get_Type() override;
89 
128  virtual ASPOSE_WORDS_SHARED_API System::SharedPtr<System::IO::Stream> OpenFontDataStream() = 0;
129  ASPOSE_WORDS_SHARED_API System::SharedPtr<System::IO::Stream> OpenStream() override;
130  ASPOSE_WORDS_SHARED_API int32_t GetSize() override;
131  ASPOSE_WORDS_SHARED_API System::String GetFilePath() override;
133 
134 protected:
135 
136  ASPOSE_WORDS_SHARED_API StreamFontSource();
137  ASPOSE_WORDS_SHARED_API StreamFontSource(int32_t priority);
138 
139  virtual ASPOSE_WORDS_SHARED_API ~StreamFontSource();
140 
141 private:
142 
143  int32_t mSize;
144 
145 };
146 
147 }
148 }
149 }