Konuyu görüntüle
IUCODERS FORUM > Programlama > Web & Grafik Tasarımı > lojik and
Yazar
fealin


avatar

Kayıt: 30.01.2006
28.10.2008-15:02 #52040
arkadaşlar elimde bir resim var bu resmin her byte'ını lojik and yapmam gerekiyor bunu yapabilecek bir resim editörü var mı? bilen varsa nasıl yapılıyor





there is no emotion; there is peace
there is no ignorance; there is knowledge
there is no passion; there is serenity
there is no chaos; there is harmony
there is no death: there is the force
Yazar
rambo


avatar

Kayıt: 16.10.2008
28.10.2008-15:05 #52041
ben olsam küçük bir kodla resim dosyasını binary olarak açtıktan sonra bütün byte'lara and işlemini uygulayıp kaydederdim.





rabbit rambo rulezzz


Yazar
kellad


avatar
istanbul
Kayıt: 21.01.2006
28.10.2008-15:09 #52042
rambo yazdi
 
ben olsam küçük bir kodla resim dosyasını binary olarak açtıktan sonra bütün byte'lara and işlemini uygulayıp kaydederdim.

+1 smile





Decompiling the code of universe.
Listening the cosmic background radiation.
Swimming in Inter Stellar Medium.
Yazar
fealin


avatar

Kayıt: 30.01.2006
28.10.2008-21:31 #52053
rambo yazdi
 
ben olsam küçük bir kodla resim dosyasını binary olarak açtıktan sonra bütün byte'lara and işlemini uygulayıp kaydederdim.


bu konuda deneyimini paylaşırsan sevinirim.





there is no emotion; there is peace
there is no ignorance; there is knowledge
there is no passion; there is serenity
there is no chaos; there is harmony
there is no death: there is the force
Yazar
haydar


avatar

Kayıt: 25.01.2006
28.10.2008-23:17 #52063
Evet küçük bir kod parçasıyla bunu halledebilirsin. Yalnız hangi image formatıyla çalıştığın ve hangi geliştirme ortamını kullandığın önemli. Farklı dosya formatlarında renk bilglileri farklı saklanıyor olabilir. Örneğin jpeg formatı sıkıştırılmış olduğundan byte bilgilerini okurken kullandığın programlama diline ait özel sınıflar kullanman gerekebilir.

Java ile geliştirme yaptığını ve JPEG dosyaları ile çalıştığını varsayarsak aşağıdaki kod parçası ile resmin pixellerinde değişiklik yapabilirsin. Aşağıdaki kod parçası ^ (exor) operatörü kullanarak her byte'ı 1 ile exor'layarak renk bilgisini tersine çeviriyor. Sen ihtiyacına göre & (and) veya | (or) kullanabilirsin.


String srcUrl = "C:/input.jpg";
String destUrl = "C:/output.jpg";
int mask = 0xFFFFFF;

//url'ile belirtilen resmi JPGEG olarak bufferedImage'e atama
FileInputStream fis = new FileInputStream(srcUrl);
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(fis);
BufferedImage img = decoder.decodeAsBufferedImage();

//resmi işleme
for(int i=0;i<img.getWidth();i++) {
	for(int j=0;j<img.getHeight();j++) {
		img.setRGB(i,j,img.getRGB(i,j) ^ mask ); 
	}
}
	        
//JPEG olarak kaydetme
File file;
file = new File(destUrl);
ImageIO.write(img, "jpg", file);



Ayrıca kullandığın resim editörüne ait filtre tanımlama seçeneği varsa o da işini görebilir, onu da araştırabilirsin,

İyi Çalışmalar.





Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb