Peki svg öğesinde genişlik ve yükseklik ayarlanmadığında javascript ile bir SVG dosyasının boyutunu nasıl edinirim? Svg bir dizedir, ancak gerekirse bir DOM yapılabilir.Genişlik/yükseklik öznitelikleri <svg> ayarlanmadığında svg grafik boyutunu alın
cevap
SVGElement nesnesinin getBBox() yöntemini kullanabilirsiniz. Elemanın ölçeklendirmesini hesaba katmadan piksel cinsinden genişlik ve yükseklik, x ve y sapmalarını belirtir. Sanırım, aradığınız şey budur.
DÜZENLEME:
Geçenlerde aynı zamanda Az bilinen
getBoundingClientRect()
eser öğrendim! Ayrıca şunları yapabilirsiniz: getBBox ve getBoundingClientRect arasında bir fark olduğunu unutmayın. getBBox başlangıç boyutlarını elde etmekte - getBoundingClientRect da dönüşümler saygı vb ölçeği ile yapılan
SVG'ler ölçeklenebilir vektör grafikleridir ve dolayısıyla herhangi bir keyfi yüksekliğe ve genişliğe sahip olabilirler. Sadece oran format ile sabitlenir.
sayesinde bir çok (i olarak biliyoruz, ama SVG Viever Parçacık i yapmak http://my.opera.com /SpShut/blog/show.dml/5803641) SVG dosyalarının küçük resimlerini görüntülemem gerekiyor (100x100 deyin) ve bir dosyada ne genişlik/yükseklik ne de viewBox öznitelikleri yoksa, * bazı boyutlarda * ve yalnızca 100x100 bölümünde görüntülenir. görünür. Boyutu almak ve width/height ve viewBox özelliklerini ayarlamak için dosyayı bir şekilde işlemek istiyorum. –
Bunun hakkında bir varsayım yapmanız gerekir. Başparmaklarınız 100x100 ise, neden SVG'yi 100x100'de göstermiyorsunuz? – jball
ayarlıyorum ve eğer file.svg, width & height & viewBox ise sadece 100x100 parçası varsa. Grafiklerin boyutunu belirlemek, özellikleri ayarlamak ve dosyayı diskte yeniden yazmak istiyorum, bu yüzden bir varsayım yapılmayacaktır. Bunun nasıl yapıldığına dağir fikri olan? –
- 1. Enum değerinin özel öznitelikleri alın
- 2. innerHTML unencodes < öznitelikleri
- 3. PHP'de POST isteğinin boyutunu alın
- 4. Dereceli grafik nasıl oluşturulur css & svg
- 5. svg grafik grubunu istenen boyuta (faktörle değil) göre nasıl ölçeklendirebilirim?
- 6. Fit <svg>
- 7. Inkscape SVG öğelerinin dönmesi için mutlak koordinatlar alın
- 8. ResultSet'in boyutunu SELECT COUNT (*) kullanarak alın (0)
- 9. Animate SVG <object>
- 10. Android: <declare-styleable> yöntem öznitelikleri
- 11. lt ile html'yi alın.
- 12. Grafik düğmesindeki özel düğüm şekilleri için SVG nasıl kullanılır?
- 13. AndroidPlot: Grafik alanımın boyutunu, XML alanımda değil, XML'de ayarlayabilir miyim
- 14. svg geçersiz değer için <path>
- 15. Viraj SVG `<g>` etrafında Curve
- 16. SVG <image> eleman işleme kalitesi
- 17. Köprü SVG <use> tags
- 18. Veri öznitelikleri ve yöntem öznitelikleri arasındaki farklar
- 19. svg anlamı nedir? Svg?
- 20. Bir öğenin kenar boşluğu boyutunu jquery ile alın
- 21. SVG
- 22. SVG
- 23. raylar çubuk grafik, ile pasta grafik, pasta grafik, yığılmış alan grafik, ve hat</p> <p>grafikler çizmek için bir raylar için ideal am
- 24. HTML5 <html> öznitelikleri xmlns, lang, xml: lang
- 25. X/Y öznitelikleri olmayan bir SVG öğesinin (yol vb.) X/y koordinatlarını nasıl alabilirim?
- 26. <td> tıklandığında Tablo <tr> alın
- 27. Yapılandırmada ayarlanmadığında oturum sağlayıcısında oturum zaman aşımı değeri nasıl alınır?
- 28. Bir izin ayarlanmadığında bulmak için `bul -perm 'öğesini kullanma
- 29. Dizi türünün Özel Öznitelikleri
- 30. LibSVM'deki Nominal Öznitelikleri
+1. –
'getBBox',' {[..], width: 0, height: 0} 'i döndürür, 'getBoundingClientRect' yapar. İkincisi sadece FireFox'ta çalışmıyor. – Gajus
GetBBox bir işlev olmadığından, öğenizi jQuery ($ (YourElement) gibi) ile sarmayın. – Cedric