Output - npedotnet/npe-image-library GitHub Wiki

Output

  • Only TGA output support

Output to a byte array

import java.io.IOException;

import net.npe.image.PixelImage;
import net.npe.image.util.ImageType;
import net.npe.image.util.ImageWriter;

public class Test {

  public static void main(String [] args) {

    PixelImage image = ...;

    try {
      byte [] result = ImageWriter.write(ImageType.TGA, image);
    }
    catch(IOException e) {
      e.printStackTrace();
    }

  }

}

Output as a TGA file

import java.io.FileOutputStream;
import java.io.IOException;

import net.npe.image.PixelImage;
import net.npe.image.util.ImageType;
import net.npe.image.util.ImageWriter;

public class Test {

  public static void main(String [] args) {

    PixelImage image = ...;

    try {
      byte [] result = ImageWriter.write(ImageType.TGA, image);
      FileOutputStream fos = new FileOutputStream("test.tga");
      fos.write(result);
      fos.close();
    }
    catch(IOException e) {
      e.printStackTrace();
    }

  }

}

Convert PNG to TGA with ImageIO

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import javax.imageio.ImageIO;

import net.npe.image.PixelFormat;
import net.npe.image.PixelImage;
import net.npe.image.util.ImageType;
import net.npe.image.util.ImageWriter;

public class Test {

  public static void main(String [] args) {

    try {
      BufferedImage bufferedImage = ImageIO.read(new File("test.png"));
      int width = bufferedImage.getWidth();
      int height = bufferedImage.getHeight();
      int [] pixels = bufferedImage.getRGB(0, 0, width, height, null, 0, width);

      PixelImage image = new PixelImage(pixels, width, height, PixelFormat.ARGB);

      byte [] result = ImageWriter.write(ImageType.TGA, image);
      FileOutputStream fos = new FileOutputStream("test.tga");
      fos.write(result);
      fos.close();
    }
    catch(IOException e) {
      e.printStackTrace();
    }

  }

}

Output as a TGA file on Android

import java.io.FileOutputStream;
import java.io.IOException;

import android.app.Activity;
import android.os.Bundle;

import net.npe.image.PixelImage;
import net.npe.image.util.ImageType;
import net.npe.image.util.ImageWriter;

public class TestActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    PixelImage image = ...;

    try {
      byte [] result = ImageWriter.write(ImageType.TGA, image);
      FileOutputStream fos = this.openFileOutput("test.tga", MODE_PRIVATE);
      fos.write(result);
      fos.close();
    }
    catch(IOException e) {
      e.printStackTrace();
    }

  }

}

Convert PNG to TGA on Android

import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.IOException;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;

import net.npe.image.PixelFormat;
import net.npe.image.PixelImage;
import net.npe.image.util.ImageType;
import net.npe.image.util.ImageWriter;

public class TestActivity extends Activity {

  @Override
  public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    try {
      InputStream is = getAssets().open("images/test.png");
      Bitmap bitmap = BitmapFactory.decodeStream(is);
      is.close();

      int width = bitmap.getWidth();
      int height = bitmap.getHeight();
      int [] pixels = new int[width*height];
      bitmap.getPixels(pixels, 0, width, 0, 0, width, height);

      PixelImage image = new PixelImage(pixels, width, height, PixelFormat.ARGB);

      byte [] result = ImageWriter.write(ImageType.TGA, image);
      FileOutputStream fos = this.openFileOutput("test.tga", MODE_PRIVATE);
      fos.write(result);
      fos.close();
    }
    catch(IOException e) {
      e.printStackTrace();
    }

  }

}