Emacs'ta piksel veya vektör tabanlı UI öğelerini nasıl çizebilirim?


11

Bununla, terminal emülatörlerinin tek aralıklı karakter ızgarasıyla sınırlı olmayan, ancak ekrandaki rastgele piksel konumlarında rastgele şekiller olabilen UI öğelerini (örneğin metin alanları ve animasyonlu düğmeler) kastediyorum. Bunun mümkün olup olmadığını ve nasıl mümkün olup olmadığını ve gelecek için planlanıp planlanmadığını merak ediyorum.


2
Evet, açılış ekranı bu gerçeği açıkça gösteriyor. Sorunuzu bunun nasıl yapılabileceğiyle ilgili olarak yeniden yazarım . Haliyle, basit bir evet / hayır cevabı bu soruyu 'cevaplayacaktır'.
Sean Allred

3
Sadece çizmek istiyorsanız, evet, görebilirsiniz. svg-clock"Basit" bir örnek için GNU ELPA'daki pakete bakın . Ancak diğer unsurların üstüne çizmek istiyorsanız , cevap ne yazık ki "hayır" dır, ancak birileri bunu yapan bir yama yazacak olsaydı birçok insan mutlu olurdu.
Stefan

1
@SeanAllred keyfi şekli, evet; gelişigüzel piksel konumu, no.
Malabarba

@Malabarba Whoops - evet, haklısın. Yine de ekran kenar boşlukları ve metin yüzleriyle hile yapabilirsiniz - oldukça hassas olabilirsiniz. Ancak Draw image.png(400x600+16+30)bir köşeye göre belirli bir koordinatta ölçekli bir resim çizmeyi söyleyemeyeceğinizi söylemekte haklısınız .
Sean Allred

Yanıtlar:


8

Metin alanları ve düğmeler (Özelleştir arabelleklerinde olduğu gibi) aslında Emacs'ın karakterleri hizaladığı ızgaraya tabidir.

Ne yapabilirsiniz do SVG (vektör) veya XPM (bitmap) türünde bir resmi görüntülemek için Emacs anlatıyor. Bunlar bir dosyadan okunmak üzere sınırlı olmadığından, bir dize oluşturabilir ve görüntüye dönüştürebilirsiniz. Görüntünün pencerenin çoğunu kapladığı ve serbestçe çizildiği (bkz. Svg-thing , slime-volley , svg-clock , kendi svg-2048 ) daha az iğrenç kullanım örnekleri ve daha az iğrenç kullanım örnekleri gördüm UI öğelerine benzer ( AUCTEX , gnus'un modeline simgesi, grafik versiyonu M-x tetris, svg-modeline'deki simgelere bakın). Emacs'ın tuval benzeri bir görüntü türüne sahip olmadığını düşünmek için hala biraz ayak işi var, ancak bu görüntüleri değiştirmek ve fare gibi model veya kenar boşluğu ve bağlama tuşları gibi diğer UI öğelerinin display özelliği olarak kullanmak mümkündür. onlara.


1

Raster grafikler çizmek için EPaint'i deneyebilirsiniz . Serbest çizim ve temel geometrik şekilleri desteklediği görülmektedir.

EPaint deposundan demo

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.