とにかく奥が深い。何かやろうとするたびに、膨大なbackgroundに押し潰されそうになる。

*フォーマット [#o31398be]
画像の持つ情報量は多いので、ファイルの形式としては何らかの圧縮を施すのが通例であり、その方法の違いなどにより様々なファイル形式が存在する。一般に、写真画像ならjpegが適し、白の背景に黒の三角形を描きました、みたいなエッジのきいた人工的な図形ならPNGの方が適する場合が多い。
-[[ウェブで用いられる画像形式について。:http://www.marguerite-site.com/Nihongo/Labo/Image/index.html]]
-[[画像圧縮アルゴリズム (5) LZ法:http://www2.starcat.ne.jp/~fussy/algo/algo8-5.htm]]
-[[離散コサイン変換:http://laputa.cs.shinshu-u.ac.jp/~yizawa/InfSys1/advanced/dct/]]


*RGBとグレースケール [#v465ca1b]
一般的なPC上で、色は赤・緑・青(RGB)の各々の強度(加色混合)で表現される。ここで「いやいや私はグレースケールで充分です」と謙遜したつもりでも、色々と方式があって余計に頭を使う破目に陥った。しかし世の中広いもので、幾つかすばらしい解説が与えられていた。
-[[osakana.factory - グレースケールのひみつ:http://ofo.jp/osakana/cgtips/grayscale.phtml]]
-[[ISP imaging-developers - 色変換式集:http://image-d.isp.jp/commentary/color_cformula/index.html]]
-[[YUVフォーマット及び YUV<->RGB変換:http://vision.kuee.kyoto-u.ac.jp/~hiroaki/firewire/yuv.html]]

*PNG [#h1252d19]

Portable Network Graphics のことで、GIFの後継として開発されたそうだ。

**ライブラリ [#h5709eca]

プログラムからPNGを扱うためには[[zlib:http://www.zlib.net/l]]と[[libpng:http://www.libpng.org/pub/png/libpng.html]]が必要となる。ソースもバイナリも手に入るが、ソースを持ってきてもVisual Studio用のプロジェクトが付属するのでビルドは楽である。プロジェクトを開いて ビルド => アクティブな構成の設定 から好きなものを選ぶだけでよい。
-[[bmp2png & png2bmp:http://hp.vector.co.jp/authors/VA010446/software/b2psrc.html]]
-[[PNG利用術:http://www5.cds.ne.jp/~kato/png/]]
-[[PNGを読み込む(VC++でlibpngを使用する):http://hp.vector.co.jp/authors/VA016379/cpplib/libpng.htm]]
-[[libpngについて:http://estset.d.fiw-web.net/unix/libpng.html]]


**PNGファイルフォーマット [#h064f0e5]
-[[倉庫という名の作品展:http://depot.c--v.net/yaezakura.php/docs/prog/png]]
-[[Portable Network Graphics (PNG) Specification (Second Edition):http://www.w3.org/TR/2003/REC-PNG-20031110/]]



*GDI+ [#u84caed6]
Windowsにおいて、標準の画像フォーマットは所謂「ビットマップ」であるが、それ以外のjpegといったフォーマットの方が巷で専ら使用されている。GDI+は、そういった様々のフォーマットの画像(BMP, GIF, JPEG, PNG, TIFF, EMF)を扱うためのライブラリ。(だそうだ。まだ使ってない)

-[[GDI+に関するメモ:http://www.nilab.info/megabbs/readres.cgi?bo=computer&vi=1093051600]]
-[[GDI+の導入:http://lamoo.s53.xrea.com/develop/gdiplus/gdiplus.html]]
-[[第335章 GDI+の基礎 その1(猫でもわかるプログラミングより):http://www.kumei.ne.jp/c_lang/sdk4/sdk_335.htm]]
-[[第336章 GDI+の基礎 その2(猫でもわかるプログラミングより):http://www.kumei.ne.jp/c_lang/sdk4/sdk_336.htm]]

platformSDKが必要みたいだ。
-[[Windows Server 2003 PSDK Full Download with Local Install(Windows 2000でもこちらから導入するらしい):http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm]]
-[[Visual C++ Toolkit + Platform SDK のインストールとテスト:http://homepage1.nifty.com/kazubon/progdoc/poor/vctoolkit.html]]