Sprite Çıkarıcı
Drop files here or click (max 12 MB)
Bu Sprite Çıkarıcıyı Neden Kullanmalısınız?
- Şeffaflık ve yapılandırılabilir eşiklere dayalı otomatik sprite tespiti
- Her sprite etrafındaki şeffaf kenarların isteğe bağlı budanmasıyla temiz kırpma
- Dolgu, hizalama (merkez/alt) ve isteğe bağlı tek tip çıktı boyutu kontrolü
- PNG dışa aktarımlar için şeffaflığı (alfa kanalı) korur – döşeme haritaları ve karakterler için ideal
- İndirmeden önce hızlı inceleme için tespit edilen tüm sprite'ların görsel galerisi
- Dosya adlarınızı ve sprite sıranızı sabit tutan JSZip kullanılarak istemci tarafında ZIP dışa aktarımı
- Scratch-dostu: tek bir sprite sayfasını hızla birden fazla kostüm veya varlığa dönüştürün
- Motorlar arasında varlıkları yeniden kullanmak için mükemmel (Scratch, Godot, Unity 2D, Phaser, vb.)
🛠️ Bir Sprite Sayfasından Sprite'lar Nasıl Çıkarılır for sprite-extractor
1. Görüntünüzü bırakın
Bir sprite sayfasını veya görüntüyü bırakma alanına sürükleyip bırakın veya dosya seçmek için tıklayın. En iyi sonuçlar için şeffaf arka planlı PNG veya sprite'lar ile arka plan arasında yüksek kontrast kullanın.
2. Otomatik tespiti çalıştırın
Araç, görüntünüzün hafif bir temsilini bir tespit uç noktasına gönderir ve bu, şeffaflık ve minimum boyuta dayalı olarak her sprite için sınırlayıcı kutular hesaplar. Kutular, neyin dışa aktarılacağını hızlıca görebilmeniz için görüntünüzün üzerine yerleştirilir.
3. Çıkarma seçeneklerini ayarlayın
Dolgu, şeffaf arka plan vs. düz renk, şeffaf kenarların budanması, hizalama (merkez veya alt) ve isteğe bağlı tek tip çıktı genişliği/yüksekliğini ayarlayın. Araç, her sprite tuvalini buna göre yeniden oluşturur.
4. Sprite'ları önizleyin
Oluşturulan sprite'ların galerisinde gezinin. Her önizleme, istemci tarafında bir ekran dışı tuval kullanılarak oluşturulur ve kullanıcı arayüzü seçeneklerine bağlı olarak yeniden adlandırılabilir veya atılabilir.
5. PNG'leri veya bir ZIP'i indirin
Tek tek PNG sprite'ları dışa aktarın veya mevcut tüm önizlemeleri içeren tek bir ZIP dosyası indirin. ZIP, JSZip kullanılarak istemci tarafında oluşturulur ve dosya adları <code>sprite_0000.png</code>, <code>sprite_0001.png</code> vb. gibi sıralı bir desen izler.
Teknik Özellikler
Tespit & Sınırlayıcı Kutular
Tespit aşaması, özel bir arka uç uç noktasında çalışır ve istemcinin nihai sprite'ları oluşturmak için kullandığı temiz sınırlayıcı kutuları döndürür.
| Yön | Davranış | Notlar |
|---|---|---|
| Tespit uç noktası | POST /api/sprite-extractor/inspect | Bir veri URL'si ve algılama seçeneklerini kabul eder, sprite kutuları dizisi döndürür. |
| Algılama girdileri | tolerans, alphaEşiği, minGenişlik, minYükseklik | Küçük gürültüleri görmezden gelmek veya yalnızca anlamlı sprite'ları yakalamak için bu parametreleri kullanıcı arayüzünde ayarlayın. |
| Kutu şekli | Eksen hizalı dikdörtgenler | Her <code>SpriteBox</code>, kaynak görüntü koordinatlarında <code>x</code>, <code>y</code>, <code>genişlik</code>, <code>yükseklik</code> değerlerini tutar. |
| Şeffaflık işleme | Alfa duyarlı | Şeffaf pikseller kırpma/trimleme kararlarına katkıda bulunur ancak çıktıda korunabilir. |
| Hata yönetimi | Zarif yedeklemeler | Algılama başarısız olursa, araç okunabilir bir hata gösterir ve kullanıcı arayüzünü bozmaz. |
Kırpma, Trimleme & Hizalama
Kutular belirlendikten sonra, tüm sprite işleme HTML canvas kullanılarak tarayıcıda yapılır.
| Adım | Uygulama | Detaylar |
|---|---|---|
| İlk kırpma | drawImage(img, box.x, box.y, w, h, 0, 0, w, h) | Her sprite önce orijinal görüntüden geçici bir canvasa kırpılır. |
| Şeffaf trimleme | getImageData ile alfa kanalını tarama | Trimleme etkinleştirildiğinde, araç minimum şeffaf olmayan sınırlayıcı kutu hesaplamak için pikselleri tarar. |
| Dolgu | yapılandırılabilir 0–256 px | Motorlardaki kenar bozukluklarını azaltmak için trimlenmiş veya kırpılmış sprite çevresine dolgu uygulanır. |
| Hizalama | merkez / alt | Sprite'lar ortalanabilir veya alta hizalanabilir (bir taban çizgisinde duran karakterler için kullanışlıdır). |
| Tek tip çıktı boyutu | isteğe bağlı spriteGenişliği / spriteYüksekliği | Etkinleştirildiğinde, tüm sprite'lar animasyonları standartlaştırmak için sabit boyutlu bir canvasa işlenir. |
| Arka plan | şeffaf veya düz renk | Tam şeffaflığı koruyun veya canvas'ı seçilen bir arka plan RGBA rengiyle doldurun. |
Performans & Sınırlar
Tarayıcıda etkileşimli kullanım için tasarlanmıştır.
| Parametre | Tipik Davranış | Notlar |
|---|---|---|
| Maksimum giriş boyutu | ~10 MB görsel | Daha büyük dosyalar çalışabilir ancak yükleme/algılama daha yavaş olacaktır. |
| Sprite sayısı | en fazla ~400 sprite | Çok yüksek sayılar mümkündür, ancak önizleme oluşturma ve ZIP yapımı daha uzun sürecektir. |
| Dışa aktarma formatı | ZIP içinde PNG (Blob) | ZIP, tamamen istemci tarafında JSZip kullanılarak oluşturulur. |
| Canvas işlemleri | Sprite başına kırpma ve çizim | Tarayıcının 2D canvas API'sine dayanır; performans çözünürlük ve sayı ile ölçeklenir. |
Komut Satırı Alternatifleri
Devasa sprite sayfaları veya otomatikleştirilmiş iş akışları için ImageMagick gibi CLI araçlarını betikle birleştirebilirsiniz.
Linux / 🍎 macOS
ImageMagick ile düzgün ızgara kırpma
convert spritesheet.png -crop 64x64 +repage sprite_%04d.pngDüzenli 64×64 ızgarayı ayrı PNG dosyalarına keser.
Tüm sprite'ları zip yap
zip sprites.zip sprite_*.pngOluşturulan tüm sprite'ları tek bir arşivde paketler.
Windows (PowerShell + ImageMagick)
Izgara tabanlı kırpma
magick spritesheet.png -crop 64x64 +repage sprite_%%04d.pngWindows'ta <code>magick</code> CLI kullanılarak yukarıdakiyle aynı.
Pratik Kullanım Alanları
2D Oyun Geliştirme
- Godot, Unity 2D, Phaser veya Construct için bir sprite sayfasından karakter animasyon karelerini çıkarın.
- Bir taslak tasarımdan UI öğelerini (düğmeler, simgeler, can çubukları) ayırın.
- Seviye editörleri için tileset'leri ayrı karelere ayırın.
// Godot örneği: birden fazla kare yükleme\nvar frames = []\nfor i in range(0, 8):\n frames.append(load(\"res://sprites/hero_walk_\" + str(i).pad_zeroes(2) + \".png\"))Scratch & Sınıf Projeleri
- Tek bir sprite sayfasını bir Scratch karakteri için birden fazla kostüme dönüştürün.
- Programlama atölyeleri için temalı varlık paketleri (hayvanlar, gezegenler, simgeler) hazırlayın.
- Öğrencilerin bir çizim aracında sprite sayfaları tasarlayıp Scratch için çıkarmalarına izin verin.
// Basit animasyon için Scratch tarzı sahte kod\nwhen green flag clicked\nforever\n next costume\n wait 0.1 secondsPiksel Sanatı & Varlık Kütüphaneleri
- Eski piksel sanatı sayfalarını, aranabilir bir bireysel sprite kütüphanesine bölün.
- Büyük ticari veya açık kaynak paketlerden yalnızca ihtiyacınız olan varlıkları çıkarın.
- Farklı kaynaklardan gelen sprite'lar arasında dolgu ve hizalamayı normalleştirin.
❓ Frequently Asked Questions
❓Sprite tespiti tamamen otomatik mi?
📏Çıkarıcı orijinal görselimi değiştirir mi?
🎯Dolgu ve hizalamayı kontrol edebilir miyim?
🔒Görsellerim sunucuda saklanıyor mu?
🧊Dışa aktarılan sprite'larda şeffaflık korunacak mı?
Pro Tips
Motorunuzda ölçeklendirme veya döndürme yaparken kenar taşmasını önlemek için her sprite'ın etrafında küçük bir dolgu (2–4 px) kullanın.
Sprite'ları tutarlı bir şekilde adlandırın (örneğin, <code>kahraman_kos_0001.png</code>, <code>kahraman_kos_0002.png</code>) animasyon içe aktarmalarını ve komut dosyası yazmayı basitleştirmek için.
Sınıf ortamlarında, öğrencilerin anında sonuç görmesi için çok basit sprite sayfalarıyla (az sayıda büyük sprite, net arka plan) başlayın.
Dışa aktarılan ZIP'ı projenizin kaynak dosyalarının yanında saklayın, böylece animasyonları daha sonra kolayca yeniden oluşturabilir veya değiştirebilirsiniz.
Additional Resources
Other Tools
- CSS Güzelleştirici
- HTML Güzelleştirici
- JavaScript Güzelleştirici
- PHP Güzelleştirici
- Renk Seçici
- Base64 Çözücü
- Base64 Kodlayıcı
- C# Biçimlendirici
- CSV Biçimlendirici
- Dockerfile Formatter
- Elm Biçimlendirici
- ENV Biçimlendirici
- Go Biçimlendirici
- GraphQL Biçimlendirici
- HCL Biçimlendirici
- INI Biçimlendirici
- JSON Biçimlendirici
- Latex Biçimlendirici
- Markdown Biçimlendirici
- ObjectiveC Biçimlendirici
- Php Formatter
- Proto Biçimlendirici
- Python Biçimlendirici
- Ruby Biçimlendirici
- Rust Biçimlendirici
- Scala Biçimlendirici
- Shell Script Biçimlendirici
- SQL Biçimlendirici
- SVG Biçimlendirici
- Swift Biçimlendirici
- TOML Biçimlendirici
- Typescript Formatter
- XML Biçimlendirici
- YAML Biçimlendirici
- Yarn Biçimlendirici
- CSS Küçültücü
- Html Minifier
- Javascript Minifier
- JSON Küçültücü
- XML Küçültücü
- HTTP Başlıkları Görüntüleyici
- PDF'den Metne
- Regex Test Edici
- SERP Sıra Kontrolü
- Whois Sorgulama