概要
- この記事ではスクラッチの画面左上のロゴ(Based on Scratch from the MIT Media Lab)が、どのような仕組みで表示されているかについて説明します。
スクラッチの画面左上に表示されるBased on Scratchのロゴは、ScratchFrameMorphのcreateLogoメソッド内で作られます。
まず、ScratchFrameMorphのScratchSkinクラス変数に格納されたColorFormオブジェクトを取り出してから、SketchMorphが作られます。
作成されたSketchMorphはlogoMorphインスタンス変数で保持されます。
logoMorph := SketchMorph withForm: (ScratchFrameMorph skinAt: #scratchLogo).
続いてモーフがtopPane(ImageFrameMorph)の左上から12×8ピクセルの位置に埋め込まれます。
logoMorph position: topPane position + (12@8). topPane addMorph: logoMorph.
ScratchSkinクラス変数の内容を置き換えれば、ロゴを別の画像に変更できます。具体的な方法については「ロゴの変更方法」を参照してください。
なお、ロゴはfrom the MIT Media Labまでが1つのFormで、サイズは154×28ピクセルの8ビットインデックスカラー画像です。