「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板

(#1990) 現象が確認とおそらくは原因がわかりました - うぇいく (2012-04-28 09:52) /低 未処理
 現在、pngで保存しようとする(拡張子に.pngを指定する)と、実際にはBMP形式で保存されてしまうようです。保存されたtest2.pngをtest1.bmpにリネームすると、普通にBMPとして開けます。
どうも、1.5333からpng保存ができなくなってしまったようです。

------ 開発向け ----
おそらくは、Delphi2009のころは、PNGでの保存をDelphi本体の機能で行っていたものが、Delphi7にした際にサポートされなくなった(2009以降の機能)のが原因に見えます。
(GrachicExはドキュメントにあるようにSave機能は無いようですので、Saveの際にAsignしても基底クラスのSaveで動いていたっぽい気が)
おそらくは、LoadはGraphicExを使用して、SaveはPNGimageを使用する(RTLVersion<20.0)のと今の動作(RTLVersion>=20.0)に切り分けるのがよいのではと思います。
------------(vnako_funcion.pasの15ごろ)
{$IF RTLVersion >=15}
  ,XPMan
{$IFEND}
{$IF RTLVersion <20}
  ,pngimage
{$IFEND}
------------(vnako_function.pasの1500ごろ)
  procedure _png ;
  begin
    bmp.PixelFormat := pf24bit;
{$IF RTLVersion >=20}
    g := TPNGGraphic.Create;
{$ELSE}
    g := TPNGObject.Create;
{$IFEND}
  end;
------------
pngが読めない? / eL (2012-04-26 21:17) (#1987)/ 低 未処理
  現象が確認とおそらくは原因がわかりました / うぇいく (2012-04-28 09:52) (#1990)/ 低 未処理

(#1990)へ返信する:

👆お手数ですが、いたずら防止のために、「真夏」の読み方を記入してください。

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能