Lekce 11 (2. prosince 2021)

Knihovna AWH (pokračování)

Stažení

Testovací obrázky

Vytvoření prázdného obrázku

public class Prazdny {
    public static void main(String[] args) {
        awh.Image obr = awh.Image.createEmpty(50, 50, awh.Color.GREEN);
        obr.saveToFile("zeleny.png");
    }
}

javac -cp awh.jar Prazdny.java
java -cp .;awh.jar Prazdny  // Windows
java -cp .:awh.jar Prazdny  // Unix

Převod obrázků

public class Prevod {
    public static void main(String[] args) {
        awh.Image obr = awh.Image.loadFromFile(args[0]);
        System.out.printf("Velikost %s: %dx%d\n",
                args[0],
                obr.getWidth(),
                obr.getHeight()
        );

        obr.saveToFile(args[1]);
    }
}
javac -cp awh.jar Prevod.java
java -cp .;awh.jar Prevod obrazek1.jpg vystup.png  // Windows
java -cp .:awh.jar Prevod obrazek1.jpg vystup.png  // Unix

Vytvoření dvojobrázku

public class Dvojobrazek {
    public static void main(String[] args) {
        int sirka = 300;
        int vyska = 150;

        awh.Image levy = awh.Image.loadFromFile(args[0]);
        awh.Image pravy = awh.Image.loadFromFile(args[1]);

        levy.rescale(sirka, vyska);
        pravy.rescale(sirka, vyska);

        awh.Image vysledek = awh.Image.createEmpty(sirka * 2, vyska, awh.Color.BLACK);
        vysledek.pasteFrom(levy, 0, 0);
        vysledek.pasteFrom(pravy, sirka, 0);

        vysledek.saveToFile(args[2]);
    }
}

Práce s jednotlivými pixely a barvou

public class Modrani {
    public static void main(String[] args) {
        awh.Image obr = awh.Image.loadFromFile(args[0]);
        int sirka = obr.getWidth();
        int vyska = obr.getHeight();

        for (int y = 0; y < vyska; y++) {
            for (int x = 0; x < sirka; x++) {
                awh.Color puvodni = obr.getPixel(x, y);
                awh.Color nova = awh.Color.fromRgb(
                        0,
                        0,
                        puvodni.getBlue()
                );
                obr.setPixel(x, y, nova);
            }
        }

        obr.saveToFile(args[1]);
    }
}

Licence Creative Commons
Alej.alisma.cz, jejímž autorem je Vojtěch Horký, podléhá licenci
Creative Commons Uveďte autora-Zachovejte licenci 4.0 International.