Quartz ve Core Graphics ile fotoğraf efektleri oluşturma, fotoğrafçılık tutkunlarına sesleniyor! Bu eğitimde, temel grafik kavramlarını öğrenecek ve kendi fotoğraf efektlerinizi tasarlamak için gerekli olan Quartz ve Core Graphics araçlarını kullanmayı öğreneceksiniz Şimdi katılın ve fotoğraf sanatınızı bir adım öteye taşıyın!

iOS uygulamalarında fotoğraf düzenleme işlemi oldukça popüler hale geldi. Ancak, basit ve sıradan düzenleme işlemleri artık yeterli değil. Yaratıcı fikirler, fotoğrafın anlamını vurgulayan özelleştirilmiş efektler ve animasyonlu tasarımlar, uygulamaları farklılaştırır ve kullanıcılara sıradanlıktan uzak bir deneyim sunar. Quartz ve Core Graphics kütüphaneleri, iOS uygulama geliştiricileri tarafından fotoğraf düzenleme işlemlerinde kullanılan iki ana çalışma aracıdır. Bu makalede, Quartz ve Core Graphics kütüphaneleri kullanarak iOS uygulamalarında fotoğraf efektleri oluşturma işlemlerine odaklanacağız.
Quartz ve Core Graphics kütüphaneleri, çizim ve grafik teknolojileri için bir çerçeve ve alt küme olarak kullanılabilir. Bu kütüphaneler sayesinde, bir fotoğrafın renklendirmesinden, skalalamasına kadar birçok işlemi gerçekleştirebilirsiniz. Resminize mavi tonlama yaparak siyah beyaz haline getirme, gradient efektini kullanarak renkleri belirginleştirme, kalemle çizme, gölge efekti, resim birleştirme ve arkaplan rengini eklemek gibi birçok farklı efekt için bu kütüphaneler kullanılabilir.
Quartz Nedir?
Quartz, Apple’ın çizim ve grafik teknolojileri için bir kütüphane olarak hizmet veren bir çerçevedir. Quartz, macOS ve iOS platformlarında kullanılan ve grafik nesnelerinin, metinlerin, animasyonların ve çizgilerin oluşturulmasına, düzenlenmesine ve işlenmesine izin veren bir grafik çerçevesidir. Bu kütüphane, geliştiricilerin yüksek kaliteli grafik öğeleri oluşturmasına yardımcı olmak için birçok araç ve özellik sağlar.
Quartz, aynı zamanda Apple’ın Core Graphics teknolojisinde de kullanılmaktadır. Quartz ve Core Graphics, grafik nesneleri, grafik araçları ve işlemler için bir dizi araç ve API sağlamaktadır. Core Graphics, Quartz’un alt kümesi olarak düşünülebilir ve resimlerin, renklerin ve yolların oluşturulmasında yardımcı olan bir kütüphanedir. Quartz ve Core Graphics, zengin ve etkileyici grafik öğeleri oluşturmak için birçok özelleştirme seçeneği sunar.
Core Graphics Nedir?
Core Graphics, Apple'ın Swift dilinde bulunan bir grafik çerçevesidir. Bu çerçeve, Quartz'un bir alt kümesidir ve çizim işlemlerinde temel bir rol oynar. Genel olarak, temel çizim işlemleri, bitmap işlemleri ve PNG/JPEG gibi özelliklerin oluşturulması için kullanılır.
Bu kütüphanedeki özellikler, uygulama geliştiricilerinin iOS platformunda fotoğraf efektleri eklemesine olanak tanır. Çerçevedeki sonuçlar, yüksek performans ve mükemmel kalite sunarak uygulamalarınızı daha güçlü hale getirir.
- Çizim işlemleri: Core Graphics, doğru işlemleri yapmak için işlem alanlarını ve işlem araçlarını içeren çizim araçları sağlar.
- Bitmap işlemleri: Core Graphics, resim dosyalarının çizimi için çizim araçları sağlar.
- Özellik oluşturma: Core Graphics, Swift dilinde bir JPG/PNG özellik oluşturma aracı sağlar.
Core Graphics, grafiklerin bulanıklaştırılması, çizgilerin inceltilmesi, gradientlerin kullanılması, dairesel bir kenar oluşturma ve çok daha fazlasını yapmak için kullanılabilir. Bu, uygulama geliştiricilerinin kullanabilecekleri basit ve güçlü bir araçtır.
Özet olarak, Swift geliştiricilerinin, işlem hızı ve çizim kalitesi açısından yüksek beklentileri olan uygulama kullanıcıları için, Core Graphics, kaliteli ve performanslı bir görüntü sunan bir çerçevedir.
Mavi Tonlama
İlk olarak, Quartz ve Core Graphics kullanarak fotoğrafı mavi tonlamaya ihtiyacımız var. Bunun için öncelikle renk ölçeği oluşturulmalıdır. Bunu yapmak için CGColorSpaceCreateDeviceRGB() kullanabilirsiniz.
Daha sonra, fotoğrafın boyutuna uygun bir imageRef oluşturmak için CGImageCreate fonksiyonu kullanılabilir. Bu imageRef'i alırken ortalama nokta bulunur, bulunan noktanın rengi CMY (Cyan-Magenta-Yellow) renklerine dönüştürülür ve yeniden Quartz ile bir context oluşturulur.
Bu noktadan itibaren, bulunan nokta ağırlıklandırılır ve bir threshold ile karşılaştırılır. Bu threshold'un üzerindeki noktalar mavi renktedir ve beyaz bir noktaya dönüştürülür. Karar verilen bir threshold değeri seçmek için CGImageGetBytesPerRow() ve CGImageGetBitsPerPixel() kullanılabilir.
Kısacası, Quartz ve Core Graphics kullanarak renkli bir fotoğrafa mavi tonlama uygulayarak siyah beyaz hale getirebilirsiniz.
Daire İçindeki Efekt
Bu yöntemde, resmin içindeki bir daire bölgesine efekt uygulayarak ilginç bir görüntü elde edebilirsiniz. Bunun için öncelikle bir resim almanız ve Quartz kütüphanesi ile çizim yapmanız gerekmektedir. Ardından, Core Graphics kütüphanesi ile istediğiniz efekti uygulayabilirsiniz.
İlk olarak, resmi Quartz kütüphanesi kullanarak çiziyoruz. Daha sonra, Core Graphics kütüphanesi ile bir daire belirleyip, bu dairenin içindeki bölgeye efekt uyguluyoruz. Bunun için şu adımlar izlenebilir:
- Quartz kütüphanesi kullanarak resmi alın
- Core Graphics kütüphanesi ile bir daire çizin
- Daire içindeki bölgeyi seçin
- Belirlediğiniz efekti uygulayın. Örneğin, renk tonlama yapabilirsiniz.
Bu yöntem, özellikle fotoğraf uygulamalarında kullanılabilir. Örneğin, bir selfie çekildiğinde, yüz çevresindeki saçları bulanıklaştırmak ve yüz bölgesini aydınlatmak için kullanılabilir. Ya da belirli bir objenin etrafına kısmi bulanıklık vermek istiyorsanız, bu yöntemi uygulayabilirsiniz.
Quartz ve Core Graphics kütüphaneleri oldukça güçlü araçlar olduğu için, farklı efektler tasarlamak için de kullanılabilirler. Ancak, efektlerde sınırlı kalmamak ve daha farklı görseller oluşturmak istiyorsanız, biraz hayal gücü ile birlikte Photoshop gibi araçları kullanmak yararlı olabilir.
Kırpma
Bir resmi kırpma işlemi, o resimdeki herhangi bir bölgeyi seçip diğerlerini kesmenize olanak tanır. Bu işlemi gerçekleştirmek için UIImage bir sınıf kullanılır. Kullanmak için ilk olarak orijinal resmi UIImage sınıfına yüklemeniz gerekir. Daha sonra, resmin bir KPPhotoClipView sınıfı tarafından temsil edilen bir sürümü oluşturulur. Kırpma işlemi için özellikle kullanılan bu sınıf, basit bir UIView'den miras alır ve dokunmatik etkinliği dinleyerek, resmi kırpmanın gerçekleşmesini sağlar.
Kırpma işlemi, kullanıcının seçtiği bir alanda bir kare oluşturmak için kullanışlı bir yöntemdir. Bu alanda belirli bir parçasını kesmek isterseniz, bu yöntemle kolayca ve hızlı bir şekilde yapabilirsiniz. Kırpma işleminden sonra, yeni çıkan resim kalitesini etkileyebilecek potansiyel bir bulanıklık oluşabilir, bu nedenle resmi yeniden boyutlandırmanız gerekebilir.
Kırpma işlemi, kullanıcılara daha performanslı bir deneyim sunabilir. Çünkü kullanıcılar, kırpma işlemini kolayca gerçekleştirip, arzu ettikleri özellikle belirli kısımları alarak daha hızlı işlem yapabilirler. Bu yöntem, fotoğraf düzenleme uygulamaları için önemli bir özelliktir.
- Kırpma işlemi, orijinal resim dosyasına zarar vermeden sadece belirli bir bölgeyi kesmekti.
- Yeni çıkan resim boyutu potansiyel olarak orijinal resimden farklı olabilir, bu nedenle yeniden boyutlandırma gerekebilir.
- Kullanıcılar, kırpma işlemi sayesinde arzu ettikleri belirli kısımları alarak daha hızlı işlem yapabilirler.
Kalemle Çizim
Quartz ve Core Graphics, iOS uygulamalarında fotoğraf efektleri oluşturmak için kullanabileceğiniz çok yönlü kütüphanelerdir. Kalemle çizim, bu kütüphaneler aracılığıyla uygulayabileceğiniz bir diğer popüler özelliktir.
Kalemle çizim özelliği, uygulama kullanıcılarına resimlerini özelleştirme fırsatı verirken uygulamanın da kullanılabilirliğini arttırabilir. Özellikle çizim ve boyama uygulamalarında sıkça kullanılır.
Quartz ve Core Graphics kullanarak kalemle çizim özelliğini uygulamak oldukça kolaydır. İşlem basit bir çizim nesnesinin oluşturulması ve nesneye çizim işlevinin atanması ile başlar. Bu özellik sayesinde, uygulama kullanıcıları farklı renk, kalınlık ve stil seçenekleriyle resimlerini kişiselleştirebilir.
İşlemi kolaylaştırmak için, çizim seçeneklerinin bir listesini ve kullanıcının seçimlerini kaydedebileceğiniz bir tablo oluşturabilirsiniz.
Seçenek | Açıklama |
---|---|
Kalem Renkleri | Kullanıcının çizimlerinde kullanabileceği renk seçenekleri |
Kalem Kalınlığı | Çizimlerde kullanılacak kalem kalınlığı seçenekleri |
Çizgi Stilleri | Çizimlerde kullanılacak farklı çizgi stilleri seçenekleri |
Quartz ve Core Graphics, kalemle çizim özelliğinin yanı sıra farklı fotoğraf efektleri uygulama imkanı sunar. Bu özellikler sayesinde uygulamanızın özgünlüğü artarken kullanıcılarınızın da daha keyifli bir deneyim yaşamasına olanak sağlayabilirsiniz.
Gradient Efekt Uygulama
Gradient efekti, fotoğraflarınıza canlılık kazandıran ve görsel olarak daha çekici hale getiren bir efektidir. Quartz ve Core Graphics kütüphaneleri kullanarak bu efekti fotoğraflarınıza uygulayabilirsiniz. Gradient, renklerin yavaş yavaş geçiş yaptığı bir renk skalasıdır ve fotoğrafınıza görsel olarak etkileyici bir dokunuş sağlayabilir.
Gradient efektini uygulamak için öncelikle Quartz ve Core Graphics kütüphanelerini kullanarak bir context oluşturmanız gerekir. Daha sonra gradient renklerini açıklamak ve gradient efektini uygulamak için gerekli olan kodları yazabilirsiniz. Ayrıca, gradient efektini uygularken dikkat etmeniz gereken en önemli nokta, fotoğrafın renk tonlarına uygun bir gradient skalası oluşturmaktır. Bu sayede fotoğrafınızda daha doğal bir görünüm elde edebilirsiniz.
Bazı örnek kodlarla, iOS uygulamanızda nasıl gradient efekti uygulayabileceğinizi açıklayabiliriz:
Kod | İşlevi |
---|---|
CAGradientLayer *gradientLayer = [CAGradientLayer layer]; | Gradient layer oluşturma |
gradientLayer.colors = [NSArray arrayWithObjects: | Gradient renklerini tanımlama |
[UIColor colorWithRed:1.0 green:1.0 blue:0.0 alpha:1.0].CGColor, | Gradient renklerini belirleme |
[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:1.0].CGColor,nil]; | Gradient renklerini belirleme |
gradientLayer.frame = photoImageView.bounds; | Gradient layer boyutunu belirleme |
[photoImageView.layer insertSublayer:gradientLayer atIndex:0]; | Gradient layerı fotoğrafa ekleme |
Bu kodlar, bir UIImageView içindeki bir fotoğraf üzerine sarıdan siyaha doğru bir gradient efekti uygular. Bu anlamda, siz de fotoğraflarınıza Colorful ve etkileyici gradient efektleri ekleyebilirsiniz.
Kontrast Başarısını Arttır
Kontrast, bir resmin renklerinin farklılığıdır. Baştan söyleyelim, fotoğrafınızda yeterli kontrast yoksa, görüntü şiddetle can sıkıcı olabilir. Fakat endişelenmeyin, kontrast seviyesini arttırmak oldukça kolay. Birkaç adımda daha canlı ve etkileyici bir fotoğrafın sahibi olabilirsiniz.
İlk olarak, Core Graphics yardımıyla resminize bir işleme yapacağız. Resmi işlem yapmadan önce, UIImage'ın Core Graphics öğesine dönüştürülmesi gerekiyor. Bu yöntemi aşağıdaki kodu kullanarak gerçekleştirebilirsiniz:
UIImage *image = [UIImage imageNamed:@"resim.jpeg"];CGImageRef imageRef = [image CGImage];
Artık resmimize işleme yapmaya hazırız. Kontrast işlemini gerçekleştirmek için, Core Image framework'ünü kullanacağız. Aşağıdaki kod bloğunu kullanarak, bir CIFilter oluşturun:
CIImage *inputImage = [[CIImage alloc] initWithCGImage:imageRef];CIFilter *exposureAdjustment = [CIFilter filterWithName:@"CIExposureAdjust"];[exposureAdjustment setValue:inputImage forKey:kCIInputImageKey];[exposureAdjustment setValue:[NSNumber numberWithFloat:1.0] forKey:@"inputEV"];CIImage *outputImage = [exposureAdjustment outputImage];CIContext *context = [CIContext contextWithOptions:nil];CGImageRef cgimg = [context createCGImage:outputImage fromRect:outputImage.extent];UIImage *processedImage = [UIImage imageWithCGImage:cgimg];
Bu kod bloğu, imageRef'yi Core Image'ın kullanacağı CIImage'a dönüştürür. exposureAdjustment adlı CIFilter, resme bir kontrast ayarı ekler. CIContext objesi, işlenmiş resmi oluşturmak için kullanılır. Kod bloğunun çıktısı yeni, kontrastı arttırılmış bir resim olan processedImage'dir.
Artık, işlenmiş resmi ekranda göstermek için aşağıdaki kodu kullanabilirsiniz:
UIImageView *imageView = [[UIImageView alloc] initWithImage:processedImage];[self.view addSubview:imageView]
Bu arada, kontrastın birçok değişkeni vardır. Yüksek kontrast, resimdekilerin çok daha net ve keskin görünmesini sağlar. Düşük kontrast bir görüntüyü daha soluk ve yumuşatılmış hale getirir. Bu nedenle, pencereler açıp kapayarak ve kontrast seviyeleri üzerinde oynayarak doğru seviyeyi bulmak için zaman ayırmak önemlidir.
Bir resmi işleme tabi tutmadan önce, her zaman bir yedeği olduğundan emin olun. İşleme yapmak, fotoğrafın orijinal halinden çok farklı görünmesine neden olabilir. Bu yüzden, işlem sürecinde değişiklikleri kontrol etmek önemlidir.
Resimleri Birleştirme
Bir iOS uygulamasında birden fazla fotoğrafı yan yana eklemek istediğinizde, Quartz ve Core Graphics kullanarak görselleri birleştirebilirsiniz. Bu, kullanıcılara birden fazla fotoğrafı tek bir yerde görüntüleme imkanı verir ve uygulama kullanıcı deneyimini artırır.
İlk önce, her bir görseli uygun boyuta getirin. Ardından, bu görselleri tek bir görsel oluşturmak için birleştirin. Bunun için, Core Graphics bileşenleriyle basit bir örnek oluşturabilirsiniz. Örneğin, 2 adet 600x400 boyutunda fotoğrafın yan yana eklendiği bir fotoğraf oluşturmak istediğinizi varsayalım:
![]() | ![]() |
Dikkat edin, her bir fotoğraf, `
Ancak bazen, fotoğrafların farklı boyutları da olabilir. Bu durumda, fotoğrafları birleştirirken dikkatli olmanız gerekir. İlk önce, doğru boyutlarına getirmeniz gerekir. Daha sonra, birleştirme işlemine başlayabilirsiniz.
Fotoğrafları birleştirmek için, aşağıdaki kodu kullanabilirsiniz:
```swiftlet birlesikBoyut = CGSize(width: photo1.size.width + photo2.size.width, height: max(photo1.size.height, photo2.size.height))
UIGraphicsBeginImageContext(birlesikBoyut)
photo1.draw(in: CGRect(x: 0, y: 0, width: foto1.size.width, height: birlesikBoyut.height))photo2.draw(in: CGRect(x: photo1.size.width, y: 0, width: foto2.size.width, height: birlesikBoyut.height))
let birlesikFoto = UIGraphicsGetImageFromCurrentImageContext()UIGraphicsEndImageContext()```
Bu kod parçası, iki fotoğrafı yan yana eklemeyi sağlar. (x: 0, y: 0) koordinatlarından başlayarak ilk fotoğrafın çizilmesini sağlayın. İkinci fotoğrafın eklenmesi için, x koordinatını ilk fotoğrafın genişliğine ayarlayın. Daha sonra, bu iki fotoğrafı birleştirmek için UIGraphicsGetImageFromCurrentImageContext () yöntemini kullanın.
Bir kez daha vurgulamak gerekirse, her iki fotoğrafın boyutlarını dikkatlice ayarlamanız gerekir. Aksi takdirde, bir fotoğrafı diğerinden daha büyük veya daha küçük olacak şekilde doldurma gibi hatalarla karşılaşabilirsiniz. Bu nedenle, fotoğrafları birleştirmeden önce her bir resmin boyutları hakkında bilgi sahibi olmanız gerekir.
Arkaplan Renklendirme
Arkaplan renklendirme, fotoğraflarınızı canlı bir hale getirmenin harika bir yolu olabilir. Quartz ve Core Graphics kullanarak bu yöntemi uygulamak oldukça kolaydır.
İlk adım olarak, UIImage sınıfıyla bir görüntü yüklemeniz gerekiyor. Daha sonra, CGContextRef türü olan bir grafik konteksti oluşturmanız gerekecek. Bu adımda, CGContextSetFillColorWithColor fonksiyonunu kullanarak arka plan renginizi belirleyebilirsiniz.
Örneğin, bir koyu mavi arka plan rengi ayarlamak istiyorsanız, aşağıdaki gibi bir kod kullanabilirsiniz:
Code | Açıklama |
---|---|
UIColor *bgColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.5 alpha:1.0]; | Koyu Mavi Renk Kodu |
CGContextSetFillColorWithColor(context, bgColor.CGColor); | Arkplan Rengi Setleme Fonksiyonu |
Bu kod, belirlediğiniz rengin RGB değerlerine göre bir UIColor nesnesi oluşturur ve bu nesnenin CGColor özelliğini kullanarak, grafik kontekstinde arka plan rengini ayarlar.
Aşağıdaki örnek kod bloku, UIImageView sınıfı kullanarak bir resim görüntüleyen bir iOS uygulamasında, Quartz ve Core Graphics kullanarak koyu mavi bir arkaplan rengi uygulamayı gösteriyor:
- UIImage *image = [UIImage imageNamed:@"example.png"];
- UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
- imageView.frame = CGRectMake(0.0, 0.0, image.size.width, image.size.height);
- [self.view addSubview:imageView];
- // Grafik Konteksti Oluşturma
- UIGraphicsBeginImageContext(imageView.frame.size);
- CGContextRef context = UIGraphicsGetCurrentContext();
- // Arkaplan Rengi Ayarlama
- UIColor *bgColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.5 alpha:1.0];
- CGContextSetFillColorWithColor(context, bgColor.CGColor);
- CGContextFillRect(context, imageView.frame);
- // Yeni Görüntü Oluşturma
- UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
- // Yeni Görüntüyü Görüntüleme
- imageView.image = newImage;
Bu kodda, UIImageView sınıfı kullanarak bir resim görüntülenir ve grafik konteksti oluşturulur. CGContextSetFillColorWithColor fonksiyonu kullanılarak arka plan rengi ayarlanır ve CGContextFillRect fonksiyonu kullanarak resimin tamamına arka plan rengi uygulanır. Son olarak, yeni bir görüntü oluşturulur ve UIImageView nesnesine atılır.
Bu şekilde, Quartz ve Core Graphics yardımıyla bir arkaplan rengi uygulayarak fotoğraflarınıza canlılık katmanın yöntemini öğrenebilirsiniz.
Renk Düzeltme
Renk düzeltme, fotoğrafın renk kalitesini iyileştirmek veya değiştirmek için kullanılan bir yöntemdir. Bu yöntem, Quartz ve Core Graphics kütüphaneleri ile birlikte kullanılabilmektedir. İşlem sırasında, renkleri değiştirmek için kullanılan birkaç farklı teknik bulunmaktadır.
Birinci teknik, resimdeki renk tonlarını ayarlama işlemidir. Bu işlemde, renk seviyeleri ayarlanarak resmin daha canlı olmasını sağlanır. İkinci teknik ise, renk sıcaklığını değiştirme işlemidir. Bu yöntem, resmin genel atmosferini değiştirerek farklı hisler yaratılmasına olanak sağlar.
Renk düzeltme işlemi sırasında, renkleri nasıl ayarlamanız gerektiğine karar vermeniz gerekmektedir. Bu nedenle, resmi çerçevelerken ve işlem sonrasında belirli bir renk paleti kullanmak faydalı olabilir. Renk paleti belirlemenin yanı sıra, renkleri ayarlama işlemi yapmadan önce resmin ışık koşullarına da dikkat etmek gerekmektedir.
Renk düzeltme işlemi için kullanabileceğiniz bir diğer teknik ise, tonlama işlemidir. Bu yöntem, belirli bir renk tonunu vurgulayarak resmin daha uyumlu bir görüntü elde etmesini sağlar. Aydınlık veya karanlık alanlardaki tonlama, canlılığı ve derinliği arttırmak için kullanılabilir. Renk düzeltme işlemi ile fotoğrafın orijinal rengini veya istediğiniz herhangi bir renk tonunu seçebilirsiniz.
Gölge Uygulama
Gölge uygulama, bir fotoğrafın veya nesnenin gölgesini oluşturmak için kullanabileceğiniz bir tekniktir. Quartz ve Core Graphics ile bu gölge efektini uygulamanın basit bir yolu vardır.
Adım 1: | Bitmap resmi oluşturun. |
Adım 2: | Gölge yaratan bir context oluşturun. Bu context, gölgenin oluşturulacağı resim boyutunda olmalıdır. |
Adım 3: | Gölgenin boyutunu ve şeklini tanımlayın. Bu adımda, CGContextSetShadow fonksiyonunu kullanarak gölge rengini, boyutunu ve şeklini belirleyebilirsiniz. |
Adım 4: | Gölgeli resmin boyutunu belirleyin. Bu adımda, Bitmap resmin boyutuna göre gölgeli resmin boyutu belirlenir. |
Adım 5: | Gölgeli resmi oluşturun. Gölge yaratan context ile gölgeli resim oluşturulur. |
Adım 6: | Gölgeli resmi Bitmap resim ile birleştirin. CGContextDrawImage fonksiyonunu kullanarak gölgeli resmi Bitmap resim ile birleştirebilirsiniz. |
Gölgeli efekt, bir resmin boyutunu büyük ölçüde artırabilir. Bu nedenle, gölge rengini ve boyutunu belirlerken dikkatli olmak önemlidir. Doğru yapıldığında, gölge efekti resme derinlik ve boyut katarken estetik açıdan da hoş bir görüntü elde edilmesine yardımcı olur.