IT用語辞典バイナリ | さくいん | サイトマップ | ヘルプ | お気に入りに追加  
HTML5 JavaScript API
IT用語辞典バイナリ<パソコン用語・コンピュータ辞書>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
拡張子辞典<ファイル・変換・変更・表示>
HTML5タグリファレンス
CSS3リファレンス
HTML5 JavaScript API
エクセル関数リファレンス
ITパスポート試験
 
  
  IT用語辞典バイナリ > HTML5 JavaScript API > Canvasの使い方 > Canvasの状態を保存しておくには?
  カテゴリ別さくいん

Canvasの状態を保存しておくには?

Canvasの状態を保存しておくには

解説

コンテキストオブジェクトで指定できる線の形状や塗りつぶしの色は、 いったん指定するとその状態が維持されます。
たとえば、一度「context.fillStyle = "red";」と指定すると、 それ以降に描画される図形の塗りつぶしの色はすべて赤になります。

毎回色などを指定しなくてよいメリットはありますが、不都合が生じることもあります。
例として、一部の機能を関数に切り出した場合、関数の中で塗りつぶし色を変更すると、 関数の呼び出し側の状態まで変わってしまうということがあります。

このようなことを避けるために、コンテキストの状態を保存するsave()メソッドと、 元に戻すrestore()メソッドが用意されています。
次の例では、fillStyleが赤である状態を保存しておき、いったん青に変更した後、 restore()メソッドで元の赤の状態に戻しています。

context.fillStyle = "red";
context.fillRect(20,20,40,80);
context.save();
context.fillStyle = "blue";
context.fillRect(80,20,40,80);
context.restore();
context.fillRect(140,20,40,80);

26.png

save()メソッド保存される状態には、次のものがあります。

  • 変換マトリックス
  • クリップ領域
  • strokeStyle, fillStyle
  • globalAlpha
  • lineWidth, lineCap, lineJoin, miterLimit
  • shadowOffsetX, shadowOffsetY, shadowBlur, shadowColor
  • globalCompositeOperation
  • font, textAlign, textBaseline

描画処理を関数に切り出すときは、関数の処理の先頭でsave()メソッドを、終了直前にrestore()メソッドを呼び出すとよいでしょう。

関連項目

Canvasとは
線の形状を設定するには?
線や塗りつぶしの色を指定するには?
図形を変形させて描画するには?
図形の重なり具合を指定するには?
図形に影をつけるには?
文字列を表示するには?




iPhone 7 (PRODUCT)RED Special EditioniPhone 7 (PRODUCT)RED Special Edition
Appleが発売したiPhone 7の特別エディション。
Wi-Fi STATION N-01JWi-Fi STATION N-01J
NTTドコモが販売するモバイルWi-Fiルーター。
LAVIE Hybrid ZEROLAVIE Hybrid ZERO
NECパーソナルコンピュータが販売する2in1PCのシリーズ。

 ・ITパスポート試験とは
 ・試験範囲と内容
 ・サンプル問題にチャレンジ

 ・Windowsの歴史
ジョン・マッカーシー LISPの開発者
ジョン・マッカーシー
人工知能の研究分野における第一人者。
スティーブ・ジョブズ Appleの共同創設者
スティーブ・ジョブズ
「Mac」や「iPhone」を生み出した経営者。
デニス・リッチー C言語、UNIXの開発者
デニス・リッチー
C言語の設計、UNIXの開発に携わった人物。
».m4b MPEG-4オーディオファイルの拡張子。 up!
».m4r iPhoneの着メロにするAACファイルにつく拡張子。 up!
».xlsx Excel 2007で作成したファイルのデフォルトの拡張子。
».docx Word 2007の標準的な保存形式。XML形式となっている。

2017年3月28日現在
ランキング1   ICT (用語辞典)
ランキング2   セグメント (用語辞典)
ランキング3   スワイプ  (用語辞典)
ランキング4   プラットフォーム  (用語辞典)
ランキング5   リーンスタートアップ  (用語辞典)
ランキング6   リマインダー  (用語辞典)
ランキング7   ハードコピー  (用語辞典)
ランキング8   ローゼット  (用語辞典)
ランキング9   キュレーションサービス  (用語辞典)
ランキング10   リグレッションテスト  (用語辞典)
RSS 0.91 RSS 1.0 RSS 2.0
IT用語辞典バイナリについてウェブリオ株式会社についてお問い合わせ先テクニカルライター募集利用規約
プライバシーポリシー著作権・商標について協力社一覧Weblio 辞書スマート翻訳英和辞典 - Weblio辞書Weblio英会話
©2012 Weblio, Inc. All rights reserved.