Skip to content

bug: Roboto__900 not registered when rich-text uses font weight 900 — "Font not registered for Roboto__900" #76

@najidev

Description

@najidev

Issue Summary

Rich-text clips that use the font family Roboto with weight 900 cause the SDK to throw during edit load, even when Roboto (or Roboto 900) is provided in timeline.fonts or when using the built-in Roboto assets.## Error
Failed to render rich text frame: Error: Failed to layout text: Text shaping failed: Failed to shape text with font "Roboto": Font not registered for Roboto900

Stack trace (relevant frames)

renderFrame shotstack-studio.es.js:49493
renderFrame shotstack-studio.es.js:49758
load shotstack-studio.es.js:49733
createPlayer shotstack-studio.es.js:52905
reconcile shotstack-studio.es.js:52905
reconcileInitial shotstack-studio.es.js:52833
initializeFromDocument shotstack-studio.es.js:53321
load shotstack-studio.es.js:53301

Expected Behavior

No response

Actual Behavior

No response

Steps to Reproduce

No response

Technical Analysis

No response

Possible Solutions

No response

Tested Environment

Environment

  • Package: @shotstack/shotstack-studio@2.1.2
  • Context: Loading an edit (template) fetched from an API. The edit has timeline.tracks with clips whose asset.type is rich-text, asset.font.family is "Roboto", and asset.font.weight is 900.

Steps to reproduce

  1. Create an edit JSON with at least one rich-text clip using font: { family: "Roboto", weight: 900, ... }.
  2. Optionally include Roboto in timeline.fonts (e.g. { src: "https://fonts.gstatic.com/s/roboto/..." }).
  3. Run const edit = new Edit(editConfig); await edit.load();.
  4. The error is thrown during load when the SDK tries to render the rich-text frame.

Expected behavior

  • Either Roboto weight 900 is registered when Roboto (variable or static) is listed in timeline.fonts, or
  • The built-in Roboto asset (if any) is used for weight 900 so that Roboto__900 is registered and rich-text renders without error.

Notes

  • Commit #53 (“fix: update Roboto font path”) may be related; the issue still occurs in 2.1.2 when the edit comes from an API payload that uses Roboto with weight 900.

Additional Context

No response

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions