Altbilgi içeriğine atla
Iron Academy Logo
C# Uygulaması
C# Uygulaması

Diğer Kategoriler

FIGlet ile Kelime Sanatı Yaratma - Spectre Console Serisi

Tim Corey
3m 47s

Spectre Console, konsol uygulamalarını zengin metin, paneller, tablolar, ilerleme çubukları ve hatta ASCII kelime sanatı ile geliştirmek için tasarlanmış bir .NET kütüphanesidir. Düz siyah-beyaz çıktı ile sınırlı kalmak yerine, gösterdiğiniz verilere renk, hizalama ve görsel yapı ekleyebilirsiniz. En göz alıcı özelliklerinden biri Spectre Console Figlet'tir; bu özellik, klasik Figlet yazı tipi formatını kullanarak büyük metin banner'larını oluşturmanıza olanak tanır.

Bu makalede, Tim Corey'nin "Creating Word Art with Figlet - Spectre Console Series" videosu üzerinden bu özelliğe daha derinlemesine bakacağız.

Spectre Console'da Figlet'i Tanıtma

0:00'da, Tim izleyicilere "Spectre Console'un C# konsol uygulamalarınızı görsel olarak çekici, bilgilendirici uygulamalara dönüştürmenize izin verdiğini" hatırlatır. Kütüphaneyi, tam özellikli komut satırı araçları oluşturmaya yönelik bir yol olarak tanımlar, paneller, tablolar, ilerleme göstergeleri ve diğer hizmetlerle dolu, ANSI kodlarını manuel olarak kendiniz yazmak yerine.

0:16'da, "Bu derste, Figlet adlı bir sistem kullanarak ASCII kelime sanatı oluşturacağız." der. Figlet, metni banner tarzı ASCII sanatına dönüştürmenin bir yolu olarak onlarca yıldır mevcut bir sistemdir, genellikle .flf uzantılı bir figlet yazı tipi dosyası kullanarak. Spectre Console, varsayılan olarak yerleşik bir Figlet yazı tipine sahiptir, ancak diğerlerini de yükleyebilir. Kütüphane, bu yeteneği bir FigletText adlı bir sınıfta kapsar (bazen Spectre Figlet Text nesnesi olarak adlandırılır), yeni bir örnek oluşturabilir ve ardından stil verebilirsiniz.

Tim 0:22'de bu örneğin kaynak kodunun video açıklamasına bağlantılı olduğunu ve izleyicilerin indirip takip edebileceğini belirtir.

İlk Örnek: Satır İçi Spectre Console Figlet Metni

0:38'de, Tim "kolay satır içi yol" olarak adlandırdığı şeyle başlar. Burada, Spectre Console Figlet Metin nesnesini tek bir ifadede oluşturup işlersiniz:

AnsiConsole.Write(
    new FigletText("Hello")
        .Centered()
        .Color(Color.Red)
);
AnsiConsole.Write(
    new FigletText("Hello")
        .Centered()
        .Color(Color.Red)
);

0:46'da, Tim "Hello" string parametresiyle yeni bir FigletText örneği oluşturduğunu açıklar. Bu parametre, işlenecek metindir.

0:53'te, doğrudan nesne üzerinde stil metotlarını zincirler. İlk olarak 1:00'de .Centered() ile ASCII banner'ını mevcut sütunların ortasında hizalar ve ayarlar. Daha sonra 1:02'de .Color(Color.Red) ile belirtilen bir rengi uygular — bu durumda kırmızı vurgu rengi olarak.

Tim 1:12'de bu kodu çalıştırdığında, konsol yerleşik Figlet yazı tipi formatında kalın, kırmızı ASCII "HELLO" görüntüler. Bu, konsol uygulamanıza büyük bir başlık veya başlık eklemenin hızlı bir yoludur.

Spectre Console Word Art Figlet 1 related to İlk Örnek: Satır İçi Spectre Console Figlet Metni

İkinci Örnek: Bir FigletText Nesnesini Yeniden Kullanma

1:22'de, Tim ikinci bir deseni gösterir: Figlet metnini satır içi oluşturmak yerine, önce bir değişken oluşturursunuz. Bu, özellik ayarlamalarını veya saklamalarını, stilleri değiştirmeyi veya aynı nesneyi yeniden kullanmayı kolaylaştırır.

var figlet = new FigletText("World");
figlet.Centered();
figlet.Color(Color.Red);
AnsiConsole.Write(figlet);
var figlet = new FigletText("World");
figlet.Centered();
figlet.Color(Color.Red);
AnsiConsole.Write(figlet);

1:28'de, "World" string ile yeni bir örnek oluşturur. 1:41'de, .Centered() çağrısı yapar ve merkezler. 1:44'te, yine rengi ayarlıyor — neden olmasın diye diye şaka yaparak kırmızı yapmayı öneriyor — ve 1:59'da AnsiConsole.Write(figlet); ile nesneyi konsola yazar.

2:04'te çalıştırıldığında, bu "WORLD" önceki "HELLO" nun altında, büyük ASCII sanatı ile gösterilir. Bu, iki ayrı bloğu yazdığını çünkü Write iki kez çağrıldığını gösteriyor.

Write İşlevinin Figlet ile Nasıl Çalıştığını Anlamak

Tim, 2:10'da Spectre Console'un Figlet metnini nasıl işlediğini açıklamak için önemli bir ayrıntıya ara veriyor. Normalde, AnsiConsole.Write, WriteLine gibi bir satır sonu eklemez. Ancak FigletText veya Panel gibi bazı render edilebilir nesnelerle, Spectre Console blokları otomatik olarak bir satır sonuyla sonlandırarak doğru görüntülenmesini sağlar.

2:20'de uzunluğun, konsol pencerenizin genişliğine veya yazı tipi dosyasına bağlı olarak metin kaymasına neden olabileceğini, ancak bunun satır sonu davranışıyla ayrı bir sorun olduğunu açıklar. Bu, komut sistemleri veya birden fazla başlık, tablo veya ilerleme çubuğu yazan betikler geliştiren kullanıcılar için faydalı bir bağlamdır: Yazmanın düz metinlerde olduğu gibi hareket edeceğine güvenemezsiniz.

Stil Seçenekleri: Renkler ve Daha Fazlası

2:53'te Tim, belirli bir renk olarak kırmızı ile sınırlı olmadığınızı belirtir. Kütüphanenin desteklediği yeşil, beyaz, sarı veya diğer herhangi bir rengi kullanabilirsiniz:

figlet.Color(Color.Yellow);
figlet.Color(Color.Yellow);

3:00'te, Tim ayrıca "kendi kendine yanıp sönmesini" sağlayabileceğinizi ve diğer stilleri uygulayabileceğinizi not eder, ancak bu kısa derste her seçeneğe değinmez. Ana sonuç, FigletText nesnesinin ayarlayabileceğiniz veya çalışma zamanında değiştirebileceğiniz (Color gibi) ortak özellikler sunduğu bilgisidir.

Spectre Console Word Art Figlet 2 related to Stil Seçenekleri: Renkler ve Daha Fazlası

Bu, konsol uygulamanızın içinde markalı başlıklar, istemler veya veri bölümü başlıkları oluşturmak için farklı metinleri ve renkleri ne kadar kolay seçebileceğinizi gösterir.

Figlet Yazı Tipleri ve Dosyaları

Tim bu örneği basit tutsa da, altta yatan sistem her karakteri işlemek için bir figlet yazı tipi formatı (.flf dosyaları) kullanır. Spectre Console, yazı tipi için varsayılan bir değer ("Standart" olarak adlandırılır) içerir; ancak ASCII sanatınızın görünümünü tamamen değiştirmek için FigletText yapıcısını farklı bir figlet yazı tipi dosyasına yönlendirebilirsiniz.

Bu, özel bir yazı tipinin yolunu açmayı, bunu projenize eklemeyi ve tamamen farklı bir stil bannerı döndürmeyi mümkün kılar. Bu, Tim'in kısa videosunda gösterilmiyor, ancak onun gösterdiği aynı API'nin bir parçası.

Pratik Kullanımlar Konsol Uygulamalarında

Tim, 3:12'de izleyicilere uygulamalarına ilginç başlıklar eklemek amacıyla Figlet'ten yararlanılabileceğini hatırlatarak bitirir. Spectre Console'un diğer özellikleriyle - verileri görüntülemek için tablolar, uzun süreli görevler için ilerleme çubukları ve bilgileri gruplamak için paneller gibi - birleştirildiğinde, FigletText, cilalı bir komut sistemi oluşturmanıza yardımcı olabilir.

Örneğin, Figlet metnini şunlar için kullanabilirsiniz:

  • Bir araç veya betiğin başlangıcında büyük bir başlık veya sürüm numarası göster.

  • Alınan verilerin tablolarının üzerinde bölüm başlıkları gösterin.

  • Bir uyarıyı veya başarı mesajını vurgulamak için bir vurgu rengi sağlayın.

  • Çok aşamalı bir istem veya hizmette farklı eylemleri ayırın.

FigletText bir render edilebilir nesne olduğu için, onu bir değişkende saklayabilir, özelliklerini (renk, hizalama, metin dizgisi) ayarlayabilir veya değiştirebilir ve ardından birden çok kez yazabilirsiniz.

Özetle

Ders hızlı olsa da, Spectre Console'un Figlet desteğini kullanarak konsol çıktınıza anında stil ekleme yöntemini gösterir.

Daha fazla ayrıntı isterseniz, Tim kaynak koduna ve Spectre Console belgelerine yönlendiren bağlantıyı ziyaret etmenizi tavsiye eder. Orada farklı stilleri denemek isterseniz ek Figlet yazı tiplerini de indirebilirsiniz.

Tim Corey'nin Videosundan Anahtar Noktalar

  • Spectre Console Figlet, ASCII pankartlarını bir FigletText nesnesi kullanarak işlemenize izin verir.

  • Bunu satıriçi veya yeni bir örnek olarak oluşturabilir, özelliklerini ayarlayabilir ve ardından yazabilirsiniz.

  • Varsayılan olarak yerleşik bir Figlet yazı tipi kullanır ancak özel .flf yazı tipi dosyalarını yükleyebilir.

  • .Centered() ve .Color(Color.Red) uygulayabileceğiniz stil örnekleridir.

  • AnsiConsole.Write, Figlet metni için otomatik olarak bir satır sonu ekler.

  • Bu özellik, konsol uygulamalarında başlıklar, başlıklar veya bölüm araları için mükemmeldir.

Tim Corey'nin videosunu izleyerek, Spectre Console'un Figlet desteğini anında kullanmaya başlayabilir ve kendi komut satırı araçlarınızı geliştirerek zenginleştirebilirsiniz. İster alınan verileri görüntülüyor, ister istemler yazıyor, ister bir betike stil ekliyor olun; FigletText, konsolunuza minimal kod ile cesur ve renkli bir avantaj sağlar.

Hero Worlddot related to FIGlet ile Kelime Sanatı Yaratma - Spectre Console Serisi
Hero Affiliate related to FIGlet ile Kelime Sanatı Yaratma - Spectre Console Serisi

Sevdiğiniz Şeyleri Paylaşarak Daha Fazla Kazanın

.NET, C#, Java, Python veya Node.js üzerinde çalışan geliştiriciler için içerik oluşturuyor musunuz? Uzmanlığınızı ek gelire dönüştürün!

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara