#include "third_party/blink/renderer/platform/fonts/font_custom_platform_data.h"
#include "base/logging.h"
#include "build/build_config.h"
#include "third_party/blink/renderer/platform/fonts/font_cache.h"
#include "third_party/blink/renderer/platform/fonts/font_platform_data.h"
#include "third_party/blink/renderer/platform/fonts/opentype/font_format_check.h"
#include "third_party/blink/renderer/platform/fonts/opentype/font_settings.h"
#include "third_party/blink/renderer/platform/fonts/opentype/variable_axes_names.h"
#include "third_party/blink/renderer/platform/fonts/palette_interpolation.h"
#include "third_party/blink/renderer/platform/fonts/web_font_decoder.h"
#include "third_party/blink/renderer/platform/fonts/web_font_typeface_factory.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/wtf/shared_buffer.h"
#include "third_party/blink/renderer/platform/wtf/wtf_size_t.h"
#include "third_party/skia/include/core/SkTypeface.h"
#include "v8/include/v8.h"
namespace {
constexpr SkFourByteTag kOpszTag = …;
constexpr SkFourByteTag kSlntTag = …;
constexpr SkFourByteTag kWdthTag = …;
constexpr SkFourByteTag kWghtTag = …;
std::optional<SkFontParameters::Variation::Axis>
RetrieveVariationDesignParametersByTag(sk_sp<SkTypeface> base_typeface,
SkFourByteTag tag) { … }
std::unique_ptr<SkFontArguments::Palette::Override[]>
ConvertPaletteOverridesToSkiaOverrides(
Vector<blink::FontPalette::FontPaletteOverride> color_overrides) { … }
}
namespace blink {
FontCustomPlatformData::FontCustomPlatformData(PassKey,
sk_sp<SkTypeface> typeface,
size_t data_size)
: … { … }
FontCustomPlatformData::~FontCustomPlatformData() { … }
const FontPlatformData* FontCustomPlatformData::GetFontPlatformData(
float size,
float adjusted_specified_size,
bool bold,
bool italic,
const FontSelectionRequest& selection_request,
const FontSelectionCapabilities& selection_capabilities,
const OpticalSizing& optical_sizing,
TextRenderingMode text_rendering,
const ResolvedFontFeatures& resolved_font_features,
FontOrientation orientation,
const FontVariationSettings* variation_settings,
const FontPalette* palette) const { … }
Vector<VariationAxis> FontCustomPlatformData::GetVariationAxes() const { … }
String FontCustomPlatformData::FamilyNameForInspector() const { … }
FontCustomPlatformData* FontCustomPlatformData::Create(
SharedBuffer* buffer,
String& ots_parse_message) { … }
FontCustomPlatformData* FontCustomPlatformData::Create(
sk_sp<SkTypeface> typeface,
size_t data_size) { … }
bool FontCustomPlatformData::MayBeIconFont() const { … }
}