public int[] sisip_teks(int[] gambar, byte[] data, int offset) {
        //melakukan pengecekan apakah data gambar lebih besar dari data pesan setelah ditambah 32 bit
        if (data.length + offset > gambar.length) {
            throw new IllegalArgumentException("File terlalu besar!");
        }
        //perulangan untuk perubahan bit di setiap byte nya pesan
        for (int i = 0; i < data.length; ++i) {

            //memindahkan panjang data ke variabel baru di setiap bitnya
            int add = data[i];
            //perulangan untuk mengganti 8bit si setiap byte nya
            for (int bit = 7; bit >= 0; --bit, ++offset) {
                //data ke-i di shift right zero oleh bit kemudian di geser 1 bit
                int b = (add >>> bit) & 1;

                //mengganti bit terakhir dari byte gambar
                gambar[offset] = (byte) ((gambar[offset] & 0xFE) | b); //nilai byte yang lama dan 254 atau bit yang akan di tambahkan
            }
        }


        return gambar;
    }