PNG

画像形式にハマる (2)

PNGの機能についてよく調べることにした。 わりと多機能。

2値化されたビットマップデータの保存

PNG

カラータイプ=グレーでビット深度=1にすると8bitsで8pixels分書けた。(0=ホワイト,1=ブラックみたい) もともと8bits=>1pixelだったので単純に考えたら1/8だけど、gzipが絡むので実際にはそこまで差が出ない。120*120にストライプを書いた画像が84bytesにな…

PNGは圧縮されている

PNG

当然なんだけど、ソースデータをランダムにすると圧縮後のデータ量がぐーんと増える。 ストライプという規則性のあるソースデータで測ったのが間違いだった。

PNGは圧縮されている (2)

PNG

ランダムなデータで120*120の画像を作ったときに、ビット深度=8だと平均2400bytesくらいで、ビット深度=1だと平均2000bytesくらい。 ソースデータを小さくする できるだけソースデータに規則性を持たせる みたいな感じで小さくなるのは分かるんだけど、PNGフ…

拡大表示したい

PNG

1ドットを4ドット分くらいの大きさで表示したい。

拡大表示したい (2)

PNG

HTMLのimgエレメントでwidth/heightアトリビュートを使って拡大すると、滑らかに拡大表示するために妙な変換フィルターを通るのではと不安に思っていた。しかし、Firefox2/IE7ともに単純に拡大表示しているだけだった。 本当は画像にそういう情報を埋め込め…

オフセットを指定したい

PNG

上方左端に余白をつけたい。

オフセットを指定したい (2)

PNG

『png_set_oFFs』で画像に指定幅を埋め込めるようなんだけど、表示時に無視されている? どうせHTMLで拡大するのだから、imgエレメントのstyleアトリビュートでmarginとかを指定しらいいいかーみたいな。だんだんテキトウになってきた。