はじめまして、ellerと申します。
HTMLタグの何を利用されたいのかはよく分かりませんが、HSP上での描画に
HTMLタグを使おうとしていらっしゃるのだろうと思ったので、その前提で書いてみます。
HTMLタグの動作はそれぞれ
<font><i><b><s><big><small>などフォント関連
→ font 命令, color 命令
<a>
→ リンク先を開くには exec 命令
<img>
→ picload 命令, gcopy 命令
その他<table><ul><ol>など
→ line や circle, mes などの組み合わせ?
とかで似せられる思います。
さらにHTMLを解析して表現したい…となると、その「解析」はHSPが勝手にやってはくれない
(少なくとも標準命令では)ので、自分で考える必要があります。
getstr 命令とかに慣れていないと、少し難しいかも知れません。
参考までに、b, i, brタグだけを解析できるスクリプトを考えてみました。
html = "<b>太字</b>とか<i>斜体</i>とか<br>改行とか"
len = strlen(html)
x = 0 : y = 0 // 描画位置
bold = 0 // 太字にするか?
italic = 0 // 斜体にするか?
fontSize = 24 // フォントのサイズ(HTMLのそれとは異なる)
repeat len
font msgothic, fontSize, bold + italic * 2
getstr sTmp, html, cnt, '<'
size = strsize
if size > 1 { // 空っぽのときは描画する必要はありません
pos x, y
mes sTmp
x += ginfo_mesx // 描画した文字の幅だけ描画位置を移動
}
if cnt + size >= len : break
getstr sTmp, html, cnt + size, '>'
// この時点でsTmpにはタグの中身が格納されているはず
size += strsize
sTmp = getpath(sTmp, 16) // 小文字に変換すれば大文字が混ざっててもOK
if sTmp == "br" {
x = 0
y += ginfo_mesy
}
if sTmp == "b" : bold = 1
if sTmp == "/b" : bold = 0
if sTmp == "i" : italic = 1
if sTmp == "/i" : italic = 0
wait 1
continue cnt + size
loop
stop
getstr 命令で < までの文字列を取り出して描画し、
もう一度getstr 命令で > までの文字列を取り出して(このときタグ内部の文字列が格納されて
いるはずです)、タグの種類に沿った処理をしています。
入れ子は考えていませんし完全にブラウザと同じ動作をするわけではありませんが、
解析方法の参考にはなると思います。がんばってくださいね。