特定の幅と高さに設定できるテキスト ボックスを作成したいと思います。しかし、私が作成したテキスト ボックスには、そもそも幅と高さがないように見えます。たとえば、次のコード:
main = do
putStrLn $ show $ width $ myText
putStrLn $ show $ height $ myText
mainWith myText
myText :: Diagram B
myText = text "here" # lw 1 # fontSizeL 0.2 # fc grey # scaleX 1
空白のダイアグラム (テキストなし) になり、テキスト ボックスの幅と高さとして "0.0" が出力されます。
ghc --make Main.hs && ./Main -o circle.svg -w 400
[1 of 1] Compiling Main ( Main.hs, Main.o )
Linking Main ...
0.0
0.0
テキストを表示するには、何か他のものの上に配置する必要があるようです。たとえば、次のコード:
main = do
putStrLn $ show $ width $ myDiagram
putStrLn $ show $ height $ myDiagram
mainWith myDiagram
myDiagram :: Diagram B
myDiagram = myText <> myBackground
myText :: Diagram B
myText = text "here" # lw 1 # fontSizeL 0.2 # fc grey # scaleX 1
myBackground :: Diagram B
myBackground = rect 1 1 # fc black
予想どおり、黒い背景内に灰色のテキストが生成されます。
テキスト ボックスにサイズがないのはなぜですか?
テキスト ボックスの長さと幅を特定の値に設定するにはどうすればよいですか?