Flash & içeriğinde, tarayıcının veya içinde bulunulan esnek öğenin boyutu ne olursa olsun güzel bir şekilde uyarlanan grafikler gördüm. RaphaelJS ile gerçekten çok iyi bir eğitim almıyorum ama bunu yapabilir misiniz? nasıl?% 100 genişlikteki RaphaelJS'de grafikler hazırlıyor musunuz?
cevap
Raphaeljs'de, boyutunu güncellemek için Raphael nesnesinde .setSize öğesini çağırabilirsiniz. Tarayıcı penceresi boyutunda çalışma zamanı değişikliklerine uyum sağlamak için bir pencere yeniden boyutlandırma etkinliğine yanıt verebilirsiniz. JQuery kullanarak, yapabileceği:
// initialize Raphael object var w = $(window).width(), h = $(window).height(); var paper = Raphael($("#my_element").get(0), w,h); $(window).resize(function(){ w = $(window).width(); h = $(window).height(); paper.setSize(w,h); redraw_element(); // code to handle re-drawing, if necessary });
Normalde% 100 genişliğini ayarlamak ve SVG'nin içindeki bir ViewBox tanımlayabilir. Ancak, Raphael JS, SVG öğelerinize doğrudan bir genişlik ve yükseklik ayarladı, bu da bu tekniği yok etti.
Bosh'un cevabı harika ama benim için en boy oranını bozuyordu. Doğru şekilde çalışmasını sağlamak için birkaç şeyi düzeltmek zorunda kaldı. Ayrıca, maksimum boyutu korumak için bazı mantık dahil.
// Variables
var width;
var height;
var maxWidth = 940;
var maxHeight = 600;
var widthPer;
function setSize() {
// Setup width
width = window.innerWidth;
if (width > maxWidth) width = maxWidth;
// Setup height
widthPer = width/maxWidth;
height = widthPer * maxHeight;
}
var paper = Raphael(document.getElementById("infographic"), 940, 600);
paper.setViewBox(0, 0, 940, 600, true);
window.onresize = function(event) {
setSize();
paper.setSize(width,height);
redraw_element();
}
Bu paper.setSize` ölçeklendirmeden benim SVG'yi kırpar `kullanmak size duyarlı SVG
var w = 500, h=500;
var paper = Raphael(w,h);
paper.setViewBox(0,0,w,h,true);
paper.setSize('100%', '100%');
Bu benim için çalıştı. Pencereyi daha küçük yaptığımda SVG küçültülmüş, ancak daha büyük ölçekli değildi; büyüklüğü ilk genişlik ve yükseklikte kapatılmıştır. Ayrıca, sadece genişlik için '% 100' belirttim. –
Düzenleme:% 100 yükseklik gereklidir, aksi takdirde yükseklik ölçek olarak değişmez. CSS'de 'height: auto 'eşdeğeri var. –
- 1. CSS - Giriş 100% genişlikteki üst üste binme div
- 2. Farklı genişlikteki RecyclerView
- 3. C# Grafikler n Grafikler
- 4. Grafikler
- 5. basit grafikler
- 6. birden grafikler pdf R
- 7. Genişlikteki dinamik değişiklik ile Bezier Yolu
- 8. Flash parametreleri denetleyiciyi URL'ye hazırlıyor ve oynatılacak dosyaları bulamıyor
- 9. D3 - pasta grafikler
- 10. Chrome Geliştirme Araçları% 100 CPU
- 11. width: 100% vs max-width: 100%
- 12. dk. Yükseklik:% 100; Yükseklik: 100%; çalışmıyor
- 13. Kombine grafikler (alan ve çubuk grafikler) Morris kullanılarak mümkün mü?
- 14. Android'de grafikler ve grafikler çizmenin bir yolu var mı?
- 15. Birleşik Grafikler. Hızlı 2.2
- 16. Java'da Excel Grafikler Oluşturun
- 17. Grafikler temsil clojure
- 18. Katmanlı grafikler d3.js
- 19. Google Grafikler Tarih Biçimleri
- 20. Programımı% 100
- 21. Mümkün olan en küçük genişlikteki tüm yükseklik içeriği
- 22. Değişkenlere karşı değişebilir olmayan grafikler
- 23. wpf 2d yüksek performanslı grafikler
- 24. Dahili grafikler henüz başlatılmadı: javafx
- 25. Grafikler çerçevesini kullanma. Swift 2.0
- 26. D3.js kullanılarak polar grafikler
- 27. Dikey yığılmış Google Çubuğu Grafikler
- 28. python 3B görselleştirme ve grafikler
- 29. Grafikler MYSQL'den jquery FLOT'a dön
- 30. Stokları yahoo finansından stok grafikler
alacak; Sadece kırpmak yerine nasıl ölçeklerim? – supertrue