ロゴの表示

概要

  • この記事ではスクラッチの画面左上のロゴ(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ビットインデックスカラー画像です。