我创建了一个包含roImageCanvas的页面,我正在尝试用另一个更改其默认字体。我的代码是我的代码,但这不起作用。请帮我解决此错误。提前谢谢。
canvas = CreateObject("roImageCanvas")
port = CreateObject("roMessagePort")
canvas.SetMessagePort(port)
items = []
FontInterface=CreateObject("roFontRegistry") 'create global font access
Fontinterface.Register("pkg:/source/Univers.ttf")
Font=FontInterface.GetFont("Univers",36,false,false)
FontSmall=FontInterface.GetFont("Univers",15,false,false)
items.Push({
Text: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s"
TextAttrs:{ font: Font, color: "#a0a0a0"}
TargetRect: {x: 200, y: 75, w: 300, h: 500}
})
items.Push({
Text: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s"
TextAttrs:{ font: FontSmall, color: "#a0a0a0"}
TargetRect: {x: 600, y: 75, w: 300, h: 500}
})
canvas.SetLayer(0, { Color: "#00ff00", CompositionMode: "Source" })
canvas.SetLayer(1, items)
canvas.Show()
答案 0 :(得分:1)
首先,对于roImageCanvas,您应该使用roFontRegistry.Get()而不是roFontRegistry.GetFont()。 GetFont()用于roScreen。
其次,你确定字体系列实际上是" Univers"?注册完字体后,可以拨打roFontRegistry.GetFamilies()获取已注册字体系列名称的列表。
答案 1 :(得分:1)
使用
Font=FontInterface.Get("Univers",36,false,false)
FontSmall=FontInterface.Get("Univers",15,false,false)
Insted of
Font=FontInterface.GetFont("Univers",36,false,false)
FontSmall=FontInterface.GetFont("Univers",15,false,false)