React Native'de SVG Görüntüleri

Yayınlanan: 2023-02-10

Performanslı, platformlar arası mobil uygulamalar oluşturmak için React Native kullanmayı düşünüyorsanız, Ölçeklenebilir Vektör Grafikleri (SVG) görüntüleri kullanıp kullanamayacağınızı merak ediyor olabilirsiniz. Cevap Evet! Bu makalede, SVG görüntülerini işlemek için React Native'i nasıl kullanacağınızı ve bunları uygulamanızın varlıklarından yüklemek için popüler React Nativesvg -uri kitaplığını nasıl kullanacağınızı göstereceğiz.

İki boyutlu vektör grafikleri, Ölçeklenebilir Vektör Grafikleri (SVG) olarak bilinen XML tabanlı bir dil kullanılarak tanımlanabilir. Web'den farklı olarak, React Native uygulamasında s vogets için destek içermez. Birkaç React Native eklentisi, SVG'leri oluşturmanıza olanak tanır. Son olarak, SVG'leri tepki bileşenleri olarak onlarla etkileşime geçmek için sahne malzemelerini kullanarak nasıl özelleştireceğinizi öğreneceksiniz.

React Native'de Svg'yi Nasıl Görüntülerim?

React Native'de SVG'leri görüntülemenin birkaç farklı yolu vardır. En kolay yol, yerleşik Görüntü bileşenini kullanmaktır. Ayrıca tepki-native-svg kitaplığını da kullanabilirsiniz.

Ayrıca iOS ve Android ile uyumludur; tepki-native-svg.icons, tepki-yerel'de SVG ile başa çıkmanın en iyi yoludur. Fuarda çalışmasına ihtiyacınız varsa, alternatiflerden biri https://react-svgr.com/playground/ kullanmak ve SVG kökünü kullanmak yerine donanımların yayılmasını bir G öğesine yeniden yerleştirmektir. Başlamak için metro.config.js dosyasını Metro dosyanıza kopyalayın ve ardından bu biçime güncelleyin. CreditCard'ı '../assets/CreditCard;' konumundan içe aktarmak için CreditCard'ı bunun gibi bir jssx öğesi olarak dışa aktarın. '../assets/CreditCard;' adresinden içe aktarın '../assets/CreditCard'dan dışa aktarın. .svg dosyasını React bileşeninize aktarmak için tepki-native-svg-transformer paketi kullanılmalıdır. React native,.svg dosya biçimini doğrudan desteklemez, bu nedenle, çalışmasını sağlamak için önce birkaç adımı tamamlamanız gerekir. thesvg'nin act native e581eca59534'te nasıl kullanılacağına ilişkin tam bir açıklama ve örnek için https://kumar2396jayant.medium.com/how-to-use-svg-in-react-native-e581eca59534 adresini ziyaret edin. Blog yazısı.

https://svg2jsx.com/ adresini ziyaret edip, ardından tepki-native- svg seçeneğini seçip yükleyerek a.svg görüntüsünü JSX'e dönüştürmek mümkündür. Teşekkür ederim! AamerAamer 1597 rozetleri bronz bir renge sahiptir. 2022'de bu hatadan etkilenecek olanlar için bir çözüm önereceğim. Metro.config.js dosyasının bu varsayılan ayara ayarlandığından emin olun.

React Native'de Svg Nasıl Kullanılır

Bu sorunun bir cevabı yok çünkü React Native'de SVG'yi göstermenin en iyi yolu projeye göre değişiyor. Ancak, bunu gerçekleştirmek için kullanabileceğiniz bazı teknikler vardır; örneğin, tepki-native-svg'den Svg ve Circle bileşenlerini içe aktarmak, Svg bileşeninin genişlik ve yükseklik özelliklerini ayarlamak ve yollar ve ana hatlar oluşturmak için Yol bileşenini kullanmak.

React Svg ile Çalışır mı?

React Svg ile Çalışır mı?
Resim – wp

React'in özel uygulamasına bağlı olduğundan, bu sorunun kesin bir yanıtı yoktur. Ancak, genel olarak React, herhangi bir büyük sorun olmadan SVG görüntüleri ile çalışmalıdır.

XML, sva olarak bilinen bir vektör grafik görüntü formatı oluşturmak için kullanılır. SVG'leri kullanan markalardan bazıları Twitter, YouTube, Udacity, Netflix ve diğerleridir. SVG'ler doğrudan kodunuza aktarılıp kullanılabildiğinden, bunları React bileşenleri olarak kullanabilirsiniz. HTML, görüntüyü ayrı bir dosya olarak yüklenmemişken işlemek için kullanılır. Bir SVG'yi bir React bileşenine dönüştürmek ve içe aktarmak için SVGR kitaplıkları kullanılır. Henüz Create React App kurulu değilse, diğer yaklaşımları kullanmanızı tavsiye ederim. Bu harika araç, SVG'leri React bileşenlerine dönüştürmek için kullanılır.

DOM'da bununla karşılaşıldığında, genellikle benzer bir şeye dönüştürülür. LogRocket Redux ara yazılım paketi, kullanıcı oturumlarına ek düzeyde görünürlük sağlamanın yanı sıra, kullanıcı profillerini yönetmeyi kolaylaştırır. LogRocket, Redux ile ilgili tüm eylemleri ve verileri depolamak için kullanılabilir. Ayrıca, CPU ve bellek kullanımı gibi ölçümler de dahil olmak üzere uygulamanızın performansını analiz etmek için kullanabilirsiniz. Ücretsiz izleme ile React uygulamalarında hata ayıklama yönteminizi geliştirin.

React Native'de Svg Görüntüleri

Ölçeklenebilir grafikler, React Native uygulamaları için mükemmel bir seçenektir. Hafif, ölçeklenebilir, özelleştirilebilir ve canlandırması kolaydır. Resim etiketini kullanarak SVG dosyalarını uygulamanıza hızlı bir şekilde aktarabilirsiniz. Ayrıca, tepki-native-svg, çeşitli platformlarda React Native'i destekleyerek onu mükemmel bir platformlar arası geliştirme platformu haline getirir.

React-native-svg Belgeleri

React-native-svg Belgeleri
Resim – githubusercontent

React-native-svg, iOS ve Android'de React Native için SVG desteği sağlar ve çok çeşitli yerleşik SVG şekilleri içerir. Dokümanlar, mevcut tüm özelliklere ve bunların nasıl kullanılacağına ilişkin kapsamlı bir genel bakış sağlar.

Bu kılavuzu izleyerek, React Native kitaplığı tepki-native-svg kullanarak Ölçeklenebilir Vektör Grafiklerinin (SVG) nasıl uygulanacağını göstereceğiz. React Native bileşeni, doğrudan SVG oluşturmayı desteklemez. React Native'i kullanmak için, sistem vektör grafiklerini desteklemediğinden, kayıt defterinden uygun kitaplıkları yüklemeniz gerekir. React-native-svg kitaplığını kullanarak bir React Native uygulamasından SVG'leri içe aktarın ve oluşturun. Svg ve Circle bileşenleri, >Svg> bileşeni ile birleştirilebilir. Bu bileşenlerde kullanılan aksesuarlar, yerel HTML öğesinde kullanılanlara benzer. SVG bileşenlerinin çoğu bu tip pervaneden oluşur.

React Native kullanıyorsanız, projenize yüklenmesi gerekir. SVG'nin URL'sini işaret etmek için SvgUri bileşeni genişliğini, yüksekliğini ve uri prop'unu içerir. Görüntüleri React'te işlerken, görüntünüzün URL'si, itssrc özelliği tarafından ona atanır. Flexbox düzenleri, SVG bileşenlerinizi ekranınızın tamamına yerleştirip yerleştirmenize olanak tanır. Projeniz gerektirdiği sürece, bu yöntemi uygulamanız için farklı SVG simgeleri oluşturmak için de kullanabilirsiniz. *SvgXml bileşeni, doğrudan XML kodundan bir SVG oluşturmanıza olanak tanır. React Native uygulamalarında SVG'leri işlemek için XML dizelerinin kullanılması, bunu yapmanın başka bir yöntemidir.

Expo React-native-svg

Expo React-native-svg
Image by – nicesnippet'ler

React Native SVG, size resim çizmek için kullanabileceğiniz bir dizi komut sağlar. React Native SVG'nin en yaygın kullanım durumu, uygulamanız için özel bir simge oluşturmaktır. Daireler, dikdörtgenler, çizgiler ve hatta metin dahil olmak üzere her türlü şekli oluşturmak için React Native SVG'yi kullanabilirsiniz. Ek olarak, animasyonlar oluşturmak için React Native SVG'yi kullanabilirsiniz.

SVG'deki vektörler, kalitelerini kaybetmeden herhangi bir boyuta ölçeklendirilebilir. Android'deki geliştirme ortamında her şey sorunsuz çalışıyor gibi görünüyor, ancak dosya yüklenirken serbest bırakma modunda yüklenemiyor. Kendi yerel modüllerinizi ayırmadan Expo'ya eklemeniz mümkün değildir. Ancak, React Native ve Expo'yu birleştirmek için alternatif bir yöntem var. 1-12 adımındaki ilk adım, Expo uygulamanıza iOS ve Android -native React Native SVG desteği eklemektir. 13. adımda.js dosyasından tepki-native-svg bileşeniyle bir işlev oluşturun. 14. adım, yeni SVG bileşeninizi App.js'nize aktarmak ve onu bir React Native bileşeni olarak kullanmaktır. Projeyi test etmeye başlamadan önce onu çalıştırmanız gerekir.

React-native-svg-uri

React-native-svg-uri, React Native uygulamalarınıza SVG görüntüleri eklemenizi sağlayan bir kitaplıktır. Kullanımı kolaydır ve uygulamanıza vektör görüntüleri eklemek için basit bir yol sunar.

React-native-svg Görüntüleme Kutusu

viewBox özniteliğinde, kullanıcı alanındaki konumu ve boyutları temel alınarak bir SVG görünüm alanı tanımlanır. viewBox özniteliği, kullanıcı alanında dört sayıyı temsil eden boşlukla ayrılmış dikdörtgen bir değeri temsil eder: min-x, min-y, genişlik ve yükseklik. Bu durumda, görünümün sınırları bu dikdörtgene eşlenir.

React Native Platform kullanıcıları, birincil uygulamaları olarak sva kullanmalıdır. Uygulamanıza her SVG eklediğinizde, >SVG> bileşenini eklediğinizden emin olun. ViewBox, bir SVG görünüm alanı için kullanıcı alanında bir konum ve boyutlar tanımlar. Düğümdeki fill niteliğini yapılandırarak başlayabilirsiniz. SVG kitaplığındaki en güçlü öğe, öğe yoludur. Birden fazla düz çizgiyi veya eğri çizgiyi birleştirerek karmaşık şekiller oluşturmak mümkündür. Sürekli çizgiler, yalnızca düz çizgilerden oluşan herhangi bir şekilden oluşabilir.

Düz çizgilerin olmaması, eğrilerin iyi bir şekilde simüle edilemeyeceği ve daha büyük boyutlara zayıf şekilde ölçeklenebileceği anlamına gelir. tepki-native-vector-icons paketinin createIconSetFrom yöntemi özel bir işlev gerçekleştirir. Bu yöntem, zaman alıcı ve zor olan tüm bileşeni yeniden hesaplamak yerine yerel bir çağrı gerektirir. icomoon veya fontawesome gibi programları kullanarak kendi yazı tipinizi oluşturabilirsiniz. Her simge bir ad içerdiğinden ve adlar dosya adından kaldırıldığından, gerekirse dosyaları içe aktardıktan sonra yeniden adlandırmak en iyisidir. Web'de HTML kullanabilirsiniz, ancak web uygulamasında kullanılan ve JSX'i içine koyamayacağınız anlamına gelen Foreign Object'i kullanamazsınız. İç içe Görünümler eklemek de sorunlu olabilir. Platformun panResponder davranışının çeşitli yönlerinden oldukça etkilenir.

Boyutlardan Pencere Yüksekliği İle Mükemmel Görünümü Elde Edin

Bir pencerenin yüksekliğini belirttiğinizde genişliğini de belirtmeniz gerekir. boyutlar var. Al (pencere).

React-native-svg-transformer

React Native SVG dönüştürücü, SVG dosyalarınızı React Native bileşenlerine dönüştürmenin bir yolunu sağlayan bir kitaplıktır. Kullanımı kolaydır ve başlamayı kolaylaştıran basit, bildirime dayalı bir API sağlar.

React-native-svg-transformer kitaplığını kullanarak bir Web uygulamasında yaptığınız gibi, React Native projenizdeki.svg dosyalarını içe aktarabilirsiniz. Bu kod eşleştirme yöntemi, React Native ve Web'in aynı kodu paylaşmasına izin verir. TypeScript, bu TypeScript'i içeren bildirim.d dosyasını gerektirir. svgrrc dosyası mevcut değilse projenizin kök klasöründe (varsa) oluşturabilirsiniz. Başka bir deyişle, replaceAttrValues ​​satırını the.svg dosyasının fill niteliğiyle eşleşen bir onaltılık kodla girin, ardından the.svg dosyasındaki yol etiketinin verilen değerin kodunu (örneğin, #000) doldurduğundan emin olun. Resminiz bu adımda bir bileşen olarak kullanılacaktır. Şaka kelimesiyle birlikte kullanılır. Jest'i import.svg görüntüleri olan React Native bileşenlerinizi test etmek üzere kullanmak için, görüntüyle alay eden bu yapılandırmayı oluşturmalısınız.

Svgr – Svg'yi React Bileşenlerine Kolayca Dönüştürmek İçin React Yerel Kitaplığı

Statik bir SVG'yi React bileşenine dönüştürmek için kullanılabilen bir React Native kitaplığıdır. React formatı gibi başka bir formata dönüştürülmeden önce bir SVG girilmelidir. SVG dosyasının içeriğini React-SVGR'ye yapıştırırken yerel onay kutusunun ayarlanıp ayarlanmadığını kontrol edin. Çıktımızı kopyalayıp projemize yapıştırmak için kullanabiliriz.

React-native-svg Çemberi

React Native SVG daire bileşeni, uygulamanızda basit ve zarif şekiller oluşturmanın harika bir yoludur. Kullanımı kolay ve çok yönlüdür, her boyutta ve renkte daireler oluşturmanıza olanak tanır.

Dizi boyunca, React Native'in çeşitli yönlerini ele alacağız. HTML5'in çalışması için bir React Native uygulamasına ihtiyacımız olacak. Bu paketin, uygulama ile uyumlu olması için sürümüne bağlı olarak çeşitli şekillerde değiştirilmesi gerekecektir. Kendi SVG'lerimizi çizebilme yeteneği heyecan verici bir özelliktir, ancak önce kullanabileceğimiz simgelerle bir SVG oluşturmalıyız. Tüy simgelerinin tümü React bileşenleridir. Kullanmak istediğimiz bir SVG dosyamız olsaydı ne olurdu? Kristerkari bizi tepki-yerel-svg-transformer ile tanıştırıyor.

Daha sonra SVG dönüşümünü işlemek için metro yapılandırmamızı değiştireceğiz. Renkli olmasını istiyorsak ve SVG'ye bağlı olarak özelleştirilebilirse bazı argümanlar sağlamalıyız. Bu yazıda, üç farklı yöntem kullanarak SVG'lerin React Native'e nasıl dahil edileceğini inceleyeceğiz. Aşağıya bir yorum bırakırsanız veya yazarın diğer web sitesi bağlantılarından herhangi birine bağlantı verirseniz çok seviniriz. Stephen Cavender, site yayından kaldırıldıktan sonra artık siteye gönderi gönderemeyecek ve gönderileri gizlenecek. Yine de kontrol panellerinden yayınlayabilirler.

React-native-svg Filtresi

React-native-svg-filter, resimlerinize svg filtreleri uygulamanıza izin veren bir kitaplıktır. Kullanımı kolaydır ve filtre oluşturmak ve uygulamak için basit bir arayüz sağlar.

Bu videoda Jaka Tertinek, React Native'de görüntülerin nasıl işleneceğini açıklıyor. iOS'ta olduğundan daha karmaşık bir süreç var (buraya sürükleyip bırakabilirsiniz). Tüm dosyalar Xcode ve IDE tarafından işlenir (dosyalar Xcode'a kaydedilir ve dosyalar IDE'ye kaydedilir). Her şey ayarlandıktan sonra, yine de basit ve kullanımı kolay olacaktır. import.svg dosyalarınızı dönüştürmek için SVGR gibi bir kitaplık kullanırken, react-native-svg-transformer, bir Web uygulamasında yaptığınız gibi, doğrudan React Native projelerine .svg dosyalarını aktarmanıza olanak tanır. Görüntüler, sva kullanılarak React bileşenlerine dönüştürülebilir. İşlem aşağıdaki adımları içerir.

React Native Ölçeklenebilir Vektör Grafiği

React Native Scalable Vector Graphics (SVG), web üzerindeki vektör grafikleri için XML tabanlı bir standart sağlar. Tüm modern tarayıcılar tarafından desteklenir ve herhangi bir ekran boyutuna ölçeklenen duyarlı tasarımlar oluşturmak için kullanılabilir.

Svg Formatı, React Native İçin Mükemmel

Verilerinizi doğru bir şekilde görüntülemek ve herhangi bir cihazda en iyi şekilde görünmek için en iyi formatı kullanmalısınız. SVG formatı , ölçeği nedeniyle küçültülemeyeceği için React Native için idealdir. Uygulamanıza grafikler ve simgeler ekleyerek bunları görüntüleyebileceksiniz. Ayrıca, tepki-native-svg, animasyonları ve etkileşimi kullanmaya ek olarak SVG'lerle animasyonlar ve etkileşim oluşturmanıza olanak tanır. Dinamik yapısı nedeniyle, dinamik ve etkileşimli grafikleri ve simgeleri görüntülemek için idealdir. Sonsuz ölçekleme yeteneği ve etkileşimli ve animasyon grafiklerini desteklemesi nedeniyle svg, React Native için en iyi formattır.

Yerel Svg Dönüştürücü

"Yerli svg dönüştürücü" diye bir şey yoktur. SVG bir vektör grafik formatıdır, dolayısıyla vektör grafiklere uygulanabilen herhangi bir dönüşüm bir SVG dosyasına da uygulanabilir. Ancak, çoğu vektör grafik düzenleyicide yerleşik olarak bulunan belirli bir SVG dönüştürme özelliği yoktur.

tepki-native-svg-transformer'ı kullanırsanız, bir Web uygulamasında yaptığınız gibi,.svg dosyalarını içe aktarabilirsiniz. Sonuç olarak, React Native ve Web oluşturmak için kullanılan kod paylaşılabilir. TypeScript kullanıyorsanız, bu bir bildirime eklenebilir. Zaten bir d.ts dosyanız yoksa, bir tane oluşturabilirsiniz (başka bir yerde bulunduğundan emin olun). makevgrrc'ye dosya (projenizin kök klasöründe bulunamaz). replaceAttrValues ​​için props.fill ile bir onaltılık kodla eşleşen bir satır oluşturun, ardından.svg file fill özniteliğinde oluşturduğunuz yol etiketini replaceAttrValues ​​alanına kopyalayın (bu durumda #000). Daha sonra resminizi bir bileşen olarak kullanabilirsiniz. Bu, jest fiiliyle birlikte kullanılmıştır. svg'den içe aktarılan React Native bileşenlerinin görüntü bütünlüğünü test etmek için bu sahte görüntü yapılandırmasını eklemeniz gerekir.

Svgr Nedir?

SVGR evrensel aracı, SVG'nin React bileşenlerine dönüştürülmesini sağlar.

React Native Expo'da Svg'yi Nasıl Kullanırım?

Bir SVG girildiğinde, JPEG formatı gibi React ile çalışan yeni bir formata dönüştürülebilir. Dışa aktarılan SVG dosyasının içeriği, yerel düğme seçilerek React-SVGR'ye aktarılabilir. Çıktısını oluşturduktan sonra projemize kopyalayıp yapıştırabileceğiz.

React Native'de Svg Rengi Nasıl Değiştirilir?

React'te bir SVG'nin rengini değiştirirken dolgu ve kontur niteliklerini ayarlamayın. Bir bileşeni içe aktarırken, bileşen olarak SVG'yi kullanın. *My Logo dolgusu ve konturu *sarı[/ok] gibi bileşen için dolgu ve kontur propları ayarlanmalıdır.