Formu siyah-beyaza dönüştürme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
uğur alkan
Üye
Mesajlar: 227
Kayıt: 29 Ağu 2004 04:49
Konum: Istanbul

Formu siyah-beyaza dönüştürme

Mesaj gönderen uğur alkan »

Formu tıpkı windows un kapanışında olduğu gibi siyah beyaz bir resme nasıl dönüştebiliriz ?
Bazen sert rüzgarlar eser başını öne eğmekten asla korkma
serkan
Üye
Mesajlar: 666
Kayıt: 10 Tem 2003 12:08
Konum: bursa

Mesaj gönderen serkan »

bunun için sanırım hazır bir fonksiyon yoktur.sanırım formun o andaki kordinatlarını alıp jpg.olarak ekran görüntüsünü alıp onuda siyah beyaza çevirip gösterebilirsin.yada mümkünse ekran kartının gama ayarlarını delphiden ayarlayıp siyah beyaz bir görüntü oluşturabilirsin.o zaman komple windows siyah beyaz olur falan filan.bişeler bulbilirsen forma yazarsın bizde faydalanırız.
Kullanıcı avatarı
kadirkurtoglu
Üye
Mesajlar: 748
Kayıt: 22 May 2005 01:20
Konum: Uzakta Görünen Tepeden...

Mesaj gönderen kadirkurtoglu »

esasen windowsta birden siyah beyaz olmuyor kademe, kademe oluyor.

arka plan resminizi bir photo editörde kademe, kademe renk ayarlarını düşürüp kaydedin daha sonra Timer de interval 1000 aralığında kademe, kademe resimleri gösterbilirsiniz. resim dışında kalan öğeler içi ise resimlerin kademe renk ayarlarına göre renk ayarlarını değiştirebilirsiniz.

Kolay Gelsin...
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.

Mevlana

OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Zamanında Clipper ile DOS (80x25) ekranında renk paletindeki RGB yi ayrı ayrı azaltarak benzer bir şey yapmıştım

Kod: Tümünü seç

...
PROCEDURE EkrKoru
local i, renk, n, arred, argreen, arblue, c
if !ShowTimeFlag
  KEYSEC()
  tone(1500,1)
  private Rw:=ROW(), Cl:=COL(), osbl:=setblink(.f.)
  private ocol:=setcolor('w+*/b'), ocur:=setcursor(0)

  arred={}
  argreen={}
  arblue={}
  for c=1 to 15
    aadd(arred,_RED(c-1))
    aadd(argreen,_GREEN(c-1))
    aadd(arblue,_BLUE(c-1))
  next
  if 'MONO' $ GETMODE()
  else
  FOR i = 62 TO 25 STEP -9
    n := i / 63
    for c=1 to 15
      VGAPALETTE(c-1, n * arred[c], n * argreen[c], n * arblue[c])
    next
  next
  endif

  Saat_Bas()

  for c=1 to 15
    VGAPALETTE(c-1, arred[c], argreen[c], arblue[c])
  next

  setblink(osbl)
  setcolor(ocol)
  SETPOS(Rw,Cl)
  setcursor(ocur)
endif
KEYSEC(K_SH_F10,KapatSuresi*60,1,.T.)
RETURN
...
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

WinXP ilk çıktığında benim de hoşuma giden bir animasyondu bu. Onun için taa o zamanlar üzerinde çalıştığım kodu makale ve ipucu kısmına ekledim.

viewtopic.php?p=106429

- İnceleyin, geliştirin, kullanın 8)
Resim
Resim ....Resim
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

DOS ortamında toplam 16 rengi kontrol etmek daha kolaymış hocam :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Hocam pixel sayısı artınca her pixel'in de 24 bitlik derinliği olunca zor oluyor haklısın... :lol:
Resim
Resim ....Resim
Kullanıcı avatarı
kadirkurtoglu
Üye
Mesajlar: 748
Kayıt: 22 May 2005 01:20
Konum: Uzakta Görünen Tepeden...

Mesaj gönderen kadirkurtoglu »

ben yukarda yazdığım örneği test ettim. windows kapanışındaki animasyona yakın bir görüntü elde ettim.
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.

Mevlana

OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

@kadirkurtoglu

- Buradaki etkileyici unsur dinamizm. Yani bunun gerçekliği, formun son halindeki, kullanıcının üzerinde yazdığı veya yansıyan bilgilerle birlikte gerçekleşiyor olmasıdır.

- Animatif etki farklı, insanı etkilemesi daha farklı. :idea:
Resim
Resim ....Resim
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Arkadaşlar...

- Ref: viewtopic.php?p=106429 yani makale ve ipucu kısmında verdiğim kodu yeniden ele aldım ve geliştirip aynı başlıkta güncelledim.

- Şimdi GDI fonksiyonları ile hem daha hızlı bir AlphaBlend fonksiyonuna kavuşturdum hem de Formun tümünün resmini çekip uygulamaya koydurdum. Hani daha önceki bahsettiğim şeklin uygulamasını koydum.

- Grafik uygulama geliştiricileri için ideal bir örnek oldu.

- Afiyet olsun 8)
Resim
Resim ....Resim
Kullanıcı avatarı
uğur alkan
Üye
Mesajlar: 227
Kayıt: 29 Ağu 2004 04:49
Konum: Istanbul

Mesaj gönderen uğur alkan »

Herkese çok teşekkürler........ <<<
Bazen sert rüzgarlar eser başını öne eğmekten asla korkma
Cevapla