【Canvas】テキストを重ねて描画する
※本ページのリンクにはプロモーションが含まれています。
こんにちは、Ryohei(@ityryohei)です!
本記事では、Canvasでテキストを重ねて描画する方法をご紹介しています。
Canvasでテキストを重ねて描画したいんだけど、どうすればいいんだろう?
上記の疑問にお答えします。
では、解説していきます。本記事で作成する内容
今回作成するのは、テキストを重ねて描画したCanvasです。下記のデモで内容をご確認いただけます。
See the Pen by ryohei (@intotheprogram) on CodePen.
テキストの描画については下記の記事でご紹介しております。Canvasでのテキストの描画について触れたことがない場合は、下記の記事を参考にしていただければと思います。
では本題に戻りまして、Canvasにテキストを重ねて描画する方法をご紹介していきます。
Canvasを設置する
まずはベースとなるCanvas_APIを設置します。Canvasは下記のようにcanvas
要素で設置することができます。width
とheight
属性の値は環境に合わせて変更してください。
<canvas id="canvas" width="500" height="100"></canvas>
Web API のCanvas APIでは、HTMLのcanvas
要素とJavaScriptを用いて描画する内容を指定することができます。Canvasの設置は完了しましたので、続いてJavaScriptで描画するテキストを指定します。
JavaScriptでテキストを重ねて描画する
Canvasの設置が完了したら、JavaScriptで描画するテキストの内容を指定します。今回は本サイト名を単語にわけて描画します。テキストの表示位置については、各テキストのX軸を少しずらし、それぞれが少し重なるようにY軸に位置を調整します。
const canvas = document.getElementById("canvas"); const ctx = canvas.getContext("2d"); ctx.font = "40px Times New Roman"; ctx.fillText("Into", 0, 40); ctx.font = "40px Times New Roman"; ctx.strokeText("the", 20, 60); ctx.font = "40px Times New Roman"; ctx.fillText("Program", 40, 80);
以上でCanvasにテキストを重ねて描画することができます。要素の裏側に設置したり、セクションのタイトルにしたりと応用が利きそうなので、ぜひ使ってみてくださいね。
最後に
Canvasは本当に奥が深くて、サイトで使用するアニメーションはもちろん、テトリスやレースといったブラウザ上で実行するゲームも作ることができます。気になった方はGoogle等で調べてみて、Canvasの沼にハマってくださいね!
以上、Canvasでテキストを重ねて描画する方法のご紹介でした!
JavaScriptを基礎からしっかりと学びたい方へ
下記の参考書がおすすめです。私がJavaScript入門時に購入した書籍で、基礎から応用まで多様なサンプルを用いて解説されています。ページ数は多いですが、内容が伴っているのですらすら読めます。腰を据えて学びたい方に最良の一冊となっています。