// Copyright 2016 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

module fonts;

enum FontSlant {
  UPRIGHT,
  ITALIC,
};

struct FontRequest {
  // For example, "Roboto".
  string family;

  // For example, 400 is normal, 700 is bold.
  uint32 weight = 400;

  // Numeric values matching OS/2 & Windows Metrics usWidthClass table.
  // https://www.microsoft.com/typography/otspec/os2.htm
  // For example, 5 is normal.
  uint32 width = 5;

  FontSlant slant = FontSlant.UPRIGHT;
};

struct FontData {
  handle<vmo> vmo;
};

struct FontResponse {
  FontData data;
};

[ServiceName="fonts::FontProvider"]
interface FontProvider {
  GetFont(FontRequest request) => (FontResponse? response);
};
