画像結合ファイル。 – プログラミング – Home

通知
すべてクリア

[解決済] 画像結合ファイル。


はる
 はる
(@はる)
ゲスト
結合: 21年前
投稿: 34
Topic starter  

VC++6.0 Windows2000で開発しています。

複数のtga画像を結合して一つのファイルにしたいのですが、
画像結合の仕組みが良く分かりません。

tgaの画像データが格納されている構造体を、結合したいtga画像分配列を用意して、
その構造体の中身をdatファイル等に保存していき、展開するときは構造体一つ分のサイ
ズを取得してきてtgaの構造体に格納していけば宜しいのでしょうか?

画像結合に詳しい方がいらしたら返答をお願い致します。


引用未解決
トピックタグ
気分屋
 気分屋
(@気分屋)
ゲスト
結合: 19年前
投稿: 15
 

画像結合って書いてあるけど、説明を見る限りただのファイル結合だよね?

#include <stdio.h>

int main( void )
{
  FILE *fin, *fout;
  const char* read_path[] = { 1.tga, 2.tga, 3.tga };  // 読み込みファ
イルのパス
  const char* write_path = comp.dat;  // 書き込みファイルのパス
  char* buf;
  unsigned long size;
  int i;

  fout = fopen( write_path, wb );
  for( i = 0 ; i < 3 ; i++ ) {
    fin = fopen( read_path[i], rb );

    // ファイルサイズを取得
    fseek( fin, 0, SEEK_END );
    size = ftell( fin );
    fseek( fin, 0, SEEK_SET );

    // ファイル読み込み
    buf = new char[size];
    fread( buf, sizeof(char), size, fin );

    // ファイル書き込み
    fwrite( &size, sizeof(size), 1, fout );
    fwrite( buf, sizeof(char), size, fout );

    delete[] buf;
    fclose( fin );
  }
  fclose( fout );
}

エラーチェックを省略しているが、やりたいことは上記のことかな?


返信引用
はる
 はる
(@はる)
ゲスト
結合: 21年前
投稿: 34
Topic starter  

気分屋さん、返答ありがとうございました。

教えてくださったサンプルでファイルの結合ができました。
あとは作成されたdatファイルから元のtga画像になるように展開するだけですので頑張
ってみようと思います。
本当にありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました