PDF SDK Documentation

Comprehensive Guide for Developers: Features, Integration, and API Reference

Loading...
Searching...
No Matches
font.h
1// Copyright (c) 2009-2025 Avanquest Software. All rights reserved.
2
3#ifndef PDFSDK_CXX_PDF_FONT_H_INCLUDED_
4#define PDFSDK_CXX_PDF_FONT_H_INCLUDED_
5
7#include <pdfsdk/cxx/math.h>
8
9#include "forward_declarations.h"
10#include "wrapper_base.h"
11
12namespace PDF {
13
14class OutlineEnumMonitor;
15
21class Font : public detail::RefCountedHandle<PDEFont> {
22public:
28 static Font CreateFromPdfObject(const Object& object);
29
35
41
46 PDAtom GetName() const;
47
53
59
65
70 bool IsEmbedded() const;
71
77
84 Content GetCharProc(const char* codepoint, size_t codepointLen) const;
85
91 Content GetCharProc(const std::string& codepoint) const;
92
99 void EnumCharOutline(const char* codepoint, size_t codepointLen, OutlineEnumMonitor& mon) const;
100
106 void EnumCharOutline(const std::string& codepoint, OutlineEnumMonitor& mon) const;
107
114 int16_t GetCharWidth(const char* codepoint, size_t codepointLen) const;
115
121 int16_t GetCharWidth(const std::string& codepoint) const;
122
129 PDEGlyphVertMetric GetCharVertMetric(const char* codepoint, size_t codepointLen) const;
130
136 PDEGlyphVertMetric GetCharVertMetric(const std::string& codepoint) const;
137
143
149
154 PDAtom GetEncodingName() const;
155
161 bool CanTypeUnicode(const std::wstring& unicode) const;
162
167 bool IsFauxed() const;
168
174
180
181#ifndef SWIG
188 std::wstring CharToUnicode(const char* codepoint, size_t codepointLen) const;
189#endif
190
196 std::wstring CharToUnicode(const std::string& codepoint) const;
197
198#ifndef SWIG
205 std::string UnicodeToChar(const UnicodeChar* unicode, size_t unicodeLen) const;
206#endif
207
213 std::string UnicodeToChar(const std::wstring& unicode) const;
214
220
221 PDF_CXX_CORE_WRAPPER_DEFINE_MEMBERS_(Font, PDEFont)
222};
223
225public:
226 virtual ~OutlineEnumMonitor() = default;
227 virtual void MoveTo(const PDPointF& to) = 0;
228 virtual void LineTo(const PDPointF& to) = 0;
229 virtual void ConicCurveTo(const PDPointF& c, const PDPointF& to) = 0;
230 virtual void CubicCurveTo(const PDPointF& c1, const PDPointF& c2, const PDPointF& to) = 0;
231};
232
233} // namespace PDF
234
235#include "font_impl.inl"
236
237#endif // PDFSDK_CXX_PDF_FONT_H_INCLUDED_
Represents the content of a PDF page.
Definition content.h:20
Represents a font in a PDF document.
Definition font.h:21
Matrix GetFontMatrix() const
std::string UnicodeToChar(const std::wstring &unicode) const
Object GetPdfObject() const
RectF GetType3GlyphsBBox() const
ReadStream OpenFontFileStream() const
PDAtom GetName() const
PDEFontMetrics GetMetrics() const
void EnumCharOutline(const std::string &codepoint, OutlineEnumMonitor &mon) const
bool IsEmbedded() const
RectF GetFontBBox() const
bool CanTypeUnicode(const std::wstring &unicode) const
std::wstring CharToUnicode(const char *codepoint, size_t codepointLen) const
static Font CreateFromPdfObject(const Object &object)
PDFontStyle GetStyle() const
PDEGlyphVertMetric GetCharVertMetric(const std::string &codepoint) const
Content GetCharProc(const char *codepoint, size_t codepointLen) const
std::wstring CharToUnicode(const std::string &codepoint) const
std::string UnicodeToChar(const UnicodeChar *unicode, size_t unicodeLen) const
PDEWritingMode GetWritingMode() const
Content GetCharProc(const std::string &codepoint) const
PDFontInfo GetFauxFontInfo() const
PDFontInfo GetFontInfo() const
PDAtom GetEncodingName() const
PDEGlyphVertMetric GetCharVertMetric(const char *codepoint, size_t codepointLen) const
void EnumCharOutline(const char *codepoint, size_t codepointLen, OutlineEnumMonitor &mon) const
int16_t GetCharWidth(const char *codepoint, size_t codepointLen) const
bool IsFauxed() const
PDEFontSubtype GetSubtype() const
int16_t GetCharWidth(const std::string &codepoint) const
Represents a PDF object.
Definition object.h:20
Definition font.h:224
Represents a read stream for reading data.
Definition read_stream.h:15
Content API.
PDEWritingMode
Specifies the writing orientation of any CIDFont. This is the WMode key from the CMap stream dictiona...
Definition content.h:691
PDEFontSubtype
Specifies the font subtype or type (if there is no subtype)
Definition content.h:592
PDFontStyle
Specifies the styling to apply to a font.
Definition fonts.h:24
Definition content.h:638
Definition content.h:677
Definition math.h:1037
Definition math.h:544
Definition fonts.h:32
Definition math_types.h:12