Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General update to drop getTable() in favor of blob() #47

Merged
merged 10 commits into from
Oct 12, 2020

Conversation

oyiptong
Copy link
Collaborator

@oyiptong oyiptong commented Oct 7, 2020

This PR updates the spec and explainer with information closer to the proposal we want to make.

Namely, the spec drops references to getTable(), which is no longer part of the spec that we're proposing, in favor of blob().
This also introduces the concepts necessary to explain font data, namely the SFNT container.

The explainer has been updated to contain current information.

Fixes #27
Fixes #37
Fixes #40

@oyiptong oyiptong changed the title General update to match blob() implementation General update to drop getTable() in favor of blob() Oct 7, 2020
@jakearchibald
Copy link

This doesn't build for me:

LINE ~65: Couldn't find 'SFNT' in bibliography data. Did you mean:
  font
  xfn
  wfs
  apng
  sri
 ✘  Did not generate, due to fatal errors

index.bs Outdated
1. Let |blob| be a new {{Blob}} whose contents are |table|'s [=font table/data bytes=] and {{Blob/type}} attribute is \``application/octet-stream`\`.
1. Append the [=ecma-record|Record=] { \[[Key]]: |tag|, \[[Value]]: |blob| } to |backing|.\[[MapData]].
1. [=/Resolve=] |promise| with |map|.
1. Let |blob| be a new {{Blob}} whose contents are |metadata|'s [=font representation/data bytes=] and {{Blob/type}} attribute is \``application/octet-stream`\`.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

metadata is referenced for the first time here. I think it's support to be [=this=]? But that also suggests that [=font representation/data bytes=] is in the wrong place, and instead it should be a child of FontMetadata.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought the explanation of [=font representation/data bytes=] as being concept/context. And the link between Font Metadata and font representation is made with this sentence:

Each FontMetadata has an associated font representation.

font representation, I thought was important to stand on its own because it delved into the concept of tables and specifically, the name table, to explain where postscriptName, fullName, and family come from.

Do you have thoughts on how this could flow better?

index.bs Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
@oyiptong
Copy link
Collaborator Author

oyiptong commented Oct 8, 2020

This doesn't build for me:

LINE ~65: Couldn't find 'SFNT' in bibliography data. Did you mean:
  font
  xfn
  wfs
  apng
  sri
 ✘  Did not generate, due to fatal errors

I'm working on making a change to specref to include SFNT.

index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Outdated
* Be available from Workers
* Allow multiple levels of privacy preservation; e.g., full access for "trusted" sites and degraded access for untrusted scenarios
* Reflect local font access state in the Permissions API
* Restrict access to local font data to Secure Contexts
* Provide unique identification of families and instances (variants like "bold" and "italic"), including PostScript names
* Provide access to all browser-allowed font tables (may vary per browser)
* Shield applications from unnecessary complexity by requiring that browser implementations produce valid OpenType data in the returned data
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're not actually requiring/implementing this, are we? i.e. in Chrome we're not relying on OTS?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct, we're not relying on OTS. That said I want to express that the byte data should be valid SFNT.
WDYT of switchingOpenType for SFNT in this sentence?

index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Outdated Show resolved Hide resolved
index.bs Show resolved Hide resolved
@oyiptong
Copy link
Collaborator Author

This doesn't build for me:

LINE ~65: Couldn't find 'SFNT' in bibliography data. Did you mean:
  font
  xfn
  wfs
  apng
  sri
 ✘  Did not generate, due to fatal errors

I'm working on making a change to specref to include SFNT.

specref change here: tobie/specref#629

@oyiptong oyiptong mentioned this pull request Oct 12, 2020
index.bs Outdated Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants