Skip to content

Instantly share code, notes, and snippets.

View Computeiful's full-sized avatar
🗺️
Working from everywhere

Ragdoll Computeiful

🗺️
Working from everywhere
  • London
View GitHub Profile
@Computeiful
Computeiful / Image.java
Created February 14, 2021 23:50
Represent an RGB image as a float array
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class Image {
public static Image read(String name) throws IOException {
return new Image(ImageIO.read(new File(name)));
}
@Computeiful
Computeiful / JPEG.java
Created July 1, 2020 20:46
Compress a BufferedImage to JPEG in memory
public static BufferedImage comp(BufferedImage image, float comp) throws IOException {
ImageWriter jpgWriter = ImageIO.getImageWritersByFormatName("jpg").next();
ImageWriteParam jpgWriteParam = jpgWriter.getDefaultWriteParam();
jpgWriteParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
jpgWriteParam.setCompressionQuality(comp);
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ImageOutputStream stream = ImageIO.createImageOutputStream(outputStream);
jpgWriter.setOutput(stream);
jpgWriter.write(null, new IIOImage(image, null, null), jpgWriteParam);