お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"bmpのファイルにコメントをつける"

この発言に対し以下のコメントが寄せられています
#00450 凛 さん RE:bmpのファイルにコメントをつける

bmpファイルにコメントを付加してみるサンプルです。 もっと良い方法もがありそうですし、結構危険かも知れませんので 注意して使って下さい。  この方法でコメントをつけると、最後に付加されるので、 普通にbmpとして読むことができます。  しかし、間違ってコメントが無い状態で消去するととんでもないことになりま すので、実用にするにはコメントがあるか無いかのフラグを最後に付加したり、 拡張子を変えたり、最後にIDブロックを設けるなどの対応が必要と思います。 画像ローダによっては、コメント付きのファイルを読み込ませて、上書き保存 させるとコメントは消えると思います。(単に読むだけならOK) //コメントをつける procedure TForm1.Button1Click(Sender: TObject); var f:file; buf:pchar; str:string; len:integer; begin str:='例えばこんなコメントをつけてみる'; buf:=stralloc(length(str)+1); strPCopy(buf,str); len:=length(str); assignfile(f,'c:\a.bmp'); reset(f,1); try seek(f,filesize(f)); blockwrite(f,buf^,len); blockwrite(f,len,sizeOf(len)); finally closefile(f); strDispose(buf); end; end; //コメントを消去 procedure TForm1.Button2Click(Sender: TObject); var f:file; buf:pchar; str:string; len:integer; begin assignfile(f,'c:\a.bmp'); reset(f,1); try seek(f,filesize(f)-sizeOf(len)); blockread(f,len,sizeOf(len)); buf:=strAlloc(len+1); seek(f,filesize(f)-sizeOf(len)-len); blockread(f,buf^,len); (buf+len)^:=#0; str:=string(buf); showmessage(str); finally closefile(f); strDispose(buf); end; end; //コメントを消去 procedure TForm1.Button3Click(Sender: TObject); var f:file; len:integer; begin assignfile(f,'c:\a.bmp'); reset(f,1); try seek(f,filesize(f)-sizeOf(len)); blockread(f,len,sizeOf(len)); seek(f,filesize(f)-sizeOf(len)-len); Truncate(f); finally closefile(f); end; end; ☆☆☆ わからないときサンプル蔵 わかったときサンプル蔵 ☆☆☆ 98/03/13(金) 00:51 凛(MXB01744) Original document by 凛 氏 ID:(MXB01744)



ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum