• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 * Copyright 2024 The Android Open Source Project
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7 
8 #ifndef SKFONTSCANNER_FONTATIONS_PRIV_H_
9 #define SKFONTSCANNER_FONTATIONS_PRIV_H_
10 
11 #include "include/core/SkFontScanner.h"
12 #include "include/core/SkSpan.h"
13 #include "include/core/SkTypeface.h"
14 #include "include/core/SkTypes.h"
15 
16 struct SkAdvancedTypefaceMetrics;
17 class SkFontDescriptor;
18 class SkFontData;
19 
20 class SkFontScanner_Fontations : public SkFontScanner {
21 public:
22     SkFontScanner_Fontations();
23     ~SkFontScanner_Fontations() override;
24 
25     bool scanFile(SkStreamAsset* stream, int* numFaces) const override;
26     bool scanFace(SkStreamAsset* stream, int faceIndex, int* numInstances) const override;
27     bool scanInstance(SkStreamAsset* stream,
28                       int faceIndex,
29                       int instanceIndex,
30                       SkString* name,
31                       SkFontStyle* style,
32                       bool* isFixedPitch,
33                       AxisDefinitions* axes,
34                       VariationPosition* position) const override;
35     sk_sp<SkTypeface> MakeFromStream(std::unique_ptr<SkStreamAsset> stream,
36                                      const SkFontArguments& args) const override;
37     SkFourByteTag getFactoryId() const override;
38 private:
39 };
40 
41 #endif // SKFONTSCANNER_FONTATIONS_PRIV_H_
42