
OG_OTT
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-03-2018
07:05 AM
roFontRegistry
Does `roFontRegistry` work with RSG? Do I have a typo or is there a better way than below?
font_registry = CreateObject("roFontRegistry")
font = font_registry.GetDefaultFont()
fontRegistry = CreateObject("roFontRegistry")
townFont = fontRegistry.GetDefaultFont()
townFont.size = 80
lineHeight = townFont.GetOneLineHeight()
///
Current Function:
005: sub InitWidget()
006: font_registry = CreateObject("roFontRegistry")
007:* font = font_registry.GetDefaultFont()
008: fontRegistry = CreateObject("roFontRegistry")
009: townFont = fontRegistry.GetDefaultFont()
010: townFont.size = 80
011: _lineHeight = townFont.GetOneLineHeight()
'Dot' Operator attempted with invalid BrightScript Component or interface reference. (runtime error &hec) in pkg:/components/widgets/LocationWidget.brs(7)
007: font = font_registry.GetDefaultFont()
2 REPLIES 2


Roku Employee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-03-2018
05:15 PM
Re: roFontRegistry
"OG_OTT" wrote:
Does `roFontRegistry` work with RSG? Do I have a typo or is there a better way than below?
It seems that you can only use roFontRegistry from the Main function or in a RSG Task node.
I don't know for myself whether you can get metrics from that that will work perfectly for RSG.
RSG has:
https://sdkdocs.roku.com/display/sdkdoc/Font
I'm not making any recommendation, but I have the impression that some people have used Label nodes along with https://sdkdocs.roku.com/display/sdkdoc ... undingRect to figure out other layout metrics.

OG_OTT
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-04-2018
01:18 PM
Re: roFontRegistry
Thank you. The `BoundingRect()` idea did work for my purposes!
To future reviews of this thread, the below snippet shows setting of my primary label and I get `BoundingRect` so I can get the height to place an element just beneath it - this worked for me:
To future reviews of this thread, the below snippet shows setting of my primary label and I get `BoundingRect` so I can get the height to place an element just beneath it - this worked for me:
sub init()
InitWidget()
end sub
sub InitWidget()
townLabel = m.top.findNode("TownName")
townLabel.font.size = 80
townLabelRect = townLabel.BoundingRect()
stateLabel = m.top.findNode("StateName")
stateLabel.font.size = 40
stateLabel.translation = [0, townLabelRect.height+5]
end sub