วิธีใช้ Svg ในเชิงมุม
เผยแพร่แล้ว: 2023-02-15การใช้ SVG ใน Angular เป็นกระบวนการง่ายๆ ก่อนอื่น คุณต้องดาวน์โหลดและติดตั้งไลบรารี Angular-SVG จากนั้น คุณสามารถเพิ่มโค้ดต่อไปนี้ในโครงการเชิงมุมของคุณ: … สิ่งนี้จะสร้างองค์ประกอบ SVG ในโครงการเชิงมุมของคุณ จากนั้นคุณสามารถเพิ่มโค้ด SVG ของคุณเองภายในองค์ประกอบได้
Angular-svg-icon ซึ่งเป็นบริการและส่วนประกอบของ Angular 14 เปิดใช้งานการสร้างไฟล์ SVG แบบอินไลน์ มี CSS และโค้ดให้จัดรูปแบบได้ง่าย สามารถโหลด SVG ที่จัดทำดัชนีได้ด้วย URL และแคชโดยใช้การลงทะเบียนไอคอนของบริการนี้ ต้องนำเข้าโมดูลอย่างชัดเจนโดยใช้ forRoot() หากต้องการใช้ฟังก์ชันเริ่มต้น forRoot() Angular-svg-icon ซึ่งเป็นองค์ประกอบเชิงมุมช่วยให้คุณอินไลน์ SVG ได้อย่างง่ายดายโดยดำเนินการตามวิธี AngularJS ต่อไป เพื่อให้ทำงานได้ คุณต้องลบความสูงและความกว้างของไฟล์ออกก่อน หาก แหล่งที่มา SVG เป็นแบบอินไลน์ กราฟิกสามารถจัดรูปแบบได้อย่างง่ายดายโดยใช้ CSS
ตราบใดที่ไม่ได้เข้ารหัส URI ข้อมูล SVG สามารถใช้ใน CSS ได้ แต่จะไม่รองรับในเบราว์เซอร์ที่ใช้ Webkit หากคุณเข้ารหัส SVG โดยใช้ encodeURIComponent() มันจะทำงานได้ทุกที่ เพื่อให้ถูกต้อง ต้องมีแอตทริบิวต์ xmlns ประเภทนี้: xmlns=' http: //www.w3.org/2000/svg' หากไม่มีสิ่งนั้นจะถูกเพิ่มโดยอัตโนมัติ
เราสามารถใช้ Svg ในเชิงมุมได้หรือไม่?
ในฐานะเทมเพลต คุณสามารถใช้ไฟล์ SVG ในแอปพลิเคชันเชิงมุมได้ เมื่อใช้ SVG เป็นเทมเพลต คำสั่งและการรวมจะง่ายพอๆ กับการใช้เทมเพลต HTML เทคโนโลยีนี้สามารถใช้เพื่อสร้างกราฟิกเชิงโต้ตอบได้ตามต้องการ
ทั้ง HTML และ Angular ใช้เทมเพลตเชิงมุมเพื่อจัดการ sva การรวมองค์ประกอบทั้งสองเข้าด้วยกันจะทำให้การรวมการควบคุมแบบโต้ตอบและสถานะเข้ากับแอปบนอุปกรณ์เคลื่อนที่และเว็บเป็นเรื่องง่ายสำหรับคุณ พลังของเฟรมเวิร์กเชิงมุมสามารถขยายได้โดยใช้เทมเพลตที่ใช้ SVG ในปัจจุบัน เว็บไซต์จำนวนมากใช้การปรับเปลี่ยน SVG** ซึ่งพบได้ทั่วไปในหน้าเว็บในปัจจุบัน ในโพสต์นี้ ฉันจะแสดงวิธีการวางซ้อนภาพไดอะแกรมเครือข่ายไว้ด้านบนโดยใช้รูปภาพ ในการสาธิตนี้ ฉันจะแสดงวิธีนำเข้าไฟล์ an.svg เป็นภาพ SVG อย่างง่ายบน Figma เนื่องจากไดอะแกรมที่ฉันใช้ในโปรเจ็กต์นี้เป็นของบริษัทเก่าของฉัน ฉันจะใช้ไดอะแกรมอื่นเพื่อแสดงแนวคิด
ข้อสังเกตของเราจากทรี Dom ด้านบนคือคุณไม่จำเป็นต้องคุ้นเคยกับ SVG เพื่อทำความเข้าใจ วันนี้เราจะแสดงวิธีใช้ภาพนี้ในเชิงมุม ขั้นตอนแรกคือการสร้างองค์ประกอบเชิงมุมที่สามารถใช้เป็นเทมเพลตได้ ด้วยเหตุนี้ ส่วนประกอบและเทมเพลตจึงได้รับการอธิบายไว้ด้านล่าง:
ทำไมคุณควรพิจารณาใช้ Png หรือ Jpg แทน Svg
ในขณะที่ยังคงใช้กันอย่างแพร่หลาย การใช้ SVG นั้นคุ้มค่าหากคุณต้องการทำให้กราฟิกของคุณดึงดูดสายตามากขึ้น พิจารณาว่ารูปแบบที่เรียบง่ายเช่น PNG หรือ JPG เป็นตัวเลือกที่ดีกว่าหรือไม่ คุณสามารถประหยัดแบนด์วิธและทำให้เพจของคุณไม่ติดมันได้โดยใช้กราฟิกแบบอินไลน์ ซึ่งดูดีบนอุปกรณ์ทั้งหมด
ฉันจะใช้ไอคอน Svg ใน Angular 12 ได้อย่างไร
ไอคอน SVG เป็นวิธีที่ยอดเยี่ยมในการเพิ่มระดับรายละเอียดและขัดเกลาให้กับแอปพลิเคชัน Angular 12 ของคุณ มีวิธีใช้งานที่แตกต่างกันสองสามวิธี แต่วิธีที่ง่ายที่สุดคือใส่เป็นภาพพื้นหลังใน CSS ของคุณ นี่คือตัวอย่างรวดเร็ว: .icon { background-image: url('path/to/icon.svg'); } วิธีนี้จะใช้ได้กับไอคอนทั่วไปส่วนใหญ่ แต่ถ้าคุณต้องการควบคุมไอคอนมากขึ้น (เช่น ถ้าคุณต้องการเปลี่ยนสีของไอคอน) คุณจะต้องใช้วิธีอื่น
เว็บแอปพลิเคชันที่ใช้ไอคอน SVG มีแนวโน้มที่จะแสดงไอคอนในแอปพลิเคชันของตน สามารถปรับขนาดได้ทุกขนาดโดยไม่สูญเสียคุณภาพ และสามารถเปลี่ยนเป็นสีใดก็ได้ ข้อเสียคือการแสดงนั้นยากเนื่องจากใช้รหัส XML ในการแสดง การใช้ SVG กับแอป Angular เป็นเรื่องง่ายด้วยเครื่องมือง่ายๆ คุณสามารถใช้ SvgIconRegistryService เพื่อโหลดไอคอนสำหรับแอปของคุณโดยใช้ SvgIconRegistryService หากคุณมีไอคอนที่ใช้บ่อย คุณไม่จำเป็นต้องโคลนไฟล์ AppComponent เพื่อโหลด เมื่อแอปของคุณบูทสแตรป คุณจะได้รับไอคอนเหล่านี้ทันทีที่โหลด ขึ้นอยู่กับคุณว่าคุณต้องการโหลด ข้อมูล SVG หรือไฟล์ข้อมูล XML
ส่วนประกอบ Svg เชิงมุม
คอมโพเนนต์ SVG เชิงมุมเป็นคอมโพเนนต์ประเภทหนึ่งที่ช่วยให้คุณฝังภาพกราฟิกเวกเตอร์แบบปรับขนาดได้ (SVG) ลงในแอปพลิเคชันเชิงมุมของคุณ มีหลายวิธีในการสร้าง ส่วนประกอบ Angular SVG แต่หนึ่งในวิธีที่ง่ายที่สุดคือการใช้ Angular CLI
แทนที่จะอ้างอิงการโคลนจริงของ SVG ของคุณ ให้ใช้องค์ประกอบ HTML 'สัญลักษณ์' และ 'ใช้' คำอธิบายโดยละเอียดของบทความนี้ว่าเหตุใดจึงเป็นแนวทางปฏิบัติที่ดีที่สุดจึงควรค่าแก่การอ่าน แม้ว่าการใช้ DOM เงาแบบปิดอาจเป็นประโยชน์ แต่ก็มีข้อเสียอยู่บ้าง คุณไม่สามารถเข้าถึงหรือจัดการ viewBox ของ SVG ได้หากคุณใช้ JavaScript เราสามารถตั้งค่าการเติมและโครงร่างของ SVG ได้โดยใช้คุณสมบัติต่างๆ เช่น การสืบทอดในความกว้างและความสูงของรูปภาพ เช่นเดียวกับปัจจุบันสีในการเติมและความสูงของรูปภาพ การตั้งค่าความทึบของสีรองเป็นเท็จจะทำให้ SVG เป็นสองสีโดยอัตโนมัติ คุณต้องตระหนักว่าคุณไม่สามารถลิงก์ไฟล์กับไฟล์ an.sva ได้
ค่าของแฮชแท็กและชื่อ ID ของคุณ จะต้องเพิ่มต่อท้ายชื่อไฟล์หลังจากขยายแล้ว หากคุณมี ไฟล์ SVG หลายไฟล์ ในไฟล์เดียว คุณสามารถบันทึกไฟล์ทั้งหมดในคำขอ http เป็นไฟล์ svega หรือที่เรียกว่าสไปรต์ ในไฟล์ คุณต้องใช้รหัสเฉพาะสำหรับแต่ละ SVG ก่อนใช้ตัวเลือก 'SVG' ตรวจสอบให้แน่ใจว่าตั้งค่าความกว้างและความสูงเป็นค่าสืบทอด
Svg ใช้เชิงมุมจากสินทรัพย์
เชิงมุมสามารถใช้ไฟล์ svg จากเนื้อหาโดยรวมไฟล์ในโฟลเดอร์เนื้อหาและอ้างอิงในส่วนประกอบ
เราจะใช้องค์ประกอบแบบอักษรไอคอนวัสดุเป็นจุดเน้นของบทช่วยสอนของเรา คอมโพเนนต์นี้จะรองรับไอคอน SVG ที่กำหนดเองด้วย รหัสสามารถพบได้ใน repo GitHub คุณจะต้องมีความรู้พื้นฐานเกี่ยวกับ Angular v4.2 + เพื่อทำโพสต์นี้ให้สมบูรณ์ บทช่วยสอนนี้เขียนขึ้นโดยใช้ Angular 5.2 plus และ Angular Material 10.1 ในบทช่วยสอนนี้ เราจะใช้ไอคอนอารมณ์ (ซึ่งคล้ายกับสัญลักษณ์ของใบหน้ายิ้ม): เพื่อสร้างใบหน้า ในเว็บไซต์ Material Design คุณจะพบรายการไอคอน Material ที่ครอบคลุม
ขณะนี้คุณสามารถใช้คุณสมบัติ mat-icon เพื่อแสดง SVG ในขั้นตอนต่อไปนี้ คุณสามารถเพิ่มป้ายกำกับไอคอนให้กับคุณสมบัติการป้อนข้อมูลของแท็บ app.html ได้โดยการเปิดและใส่ป้ายกำกับไอคอน โปรดไปที่ tosrc/app/app.html สิ่งที่เรามีอยู่จนถึงตอนนี้? คุณสามารถดูไอคอนที่กำหนดเองพร้อมสไตล์วัสดุได้โดยไปที่เบราว์เซอร์ของแอปพลิเคชัน MatIconRegistry สามารถย้ายไปยังคลาสบริการเพื่อให้สะอาดและบำรุงรักษาได้มากขึ้น
เมื่อใดที่คุณไม่ควรใช้ Svg
เนื่องจาก SVG เป็นโปรแกรมที่ใช้เวกเตอร์ จึงไม่สามารถแสดงภาพที่มีรายละเอียดและพื้นผิวจำนวนมากได้ วิธีที่ดีที่สุดในการใช้ SVG คือการใช้โลโก้ ไอคอน และกราฟิกแบนๆ อื่นๆ ที่ใช้สีและรูปร่างที่เรียบง่ายกว่า นอกจากนี้ แม้ว่าเบราว์เซอร์สมัยใหม่จำนวนมากจะรองรับ SVG แต่เบราว์เซอร์รุ่นเก่าอาจไม่สามารถทำได้อย่างเหมาะสม
ไฟล์ Svg นั้นยอดเยี่ยมสำหรับการออกแบบเว็บ!
เนื่องจากปรับขนาดได้และแก้ไขได้ง่าย การเลือกไฟล์ SVG สำหรับการออกแบบเว็บจึงมีความสำคัญ นอกจากนี้ เว็บไซต์ของคุณจะมองเห็นได้มากขึ้นในเครื่องมือค้นหาเนื่องจากเป็นมิตรกับ SEO เนื่องจากโค้ด SVG โหลดเร็วกว่าโค้ดรูปภาพ เว็บไซต์ของคุณจะโหลดเร็วกว่า
ไอคอน Svg
ไอคอน SVG เป็นแบบเวกเตอร์ หมายความว่าสามารถปรับขนาดเป็นขนาดใดก็ได้โดยไม่สูญเสียคุณภาพ สามารถใช้บนเว็บไซต์ ในแอพ และบนสื่อดิจิทัลอื่นๆ
การใช้ไวยากรณ์ eXtensible Markup Language (XML) SVG (Scalable Vector Graphics) เป็นรูปแบบภาพเวกเตอร์ที่สามารถวาดได้ บล็อกโค้ด XML ที่ให้บริการโดยตรงและแสดงผลในเบราว์เซอร์จะเรียกว่า SVG รูปภาพสามารถทำหน้าที่เป็นตาสำหรับรายละเอียด ทำให้ประมวลผลข้อมูลได้เร็วกว่าคำพูด เริ่มแรกไฟล์ภาพ SVG มีให้บริการบนเว็บในช่วงเวลาเดียวกับที่ Tamagotchis, iMacs และ Palm Pilots เข้ามาในบ้านของเรา เว็บเบราว์เซอร์ส่วนใหญ่ไม่มีแผนที่จะรองรับรูปแบบ SVG และไม่ทราบ จนกระทั่งในปี 2560 มาตรฐานเว็บ SVG เริ่มแสดงผลในลักษณะที่ยอมรับได้ เนื่องจากเป็นเวกเตอร์ ทั้ง SVG และแบบอักษรบนเว็บของไอคอนจึงสามารถลดขนาดลงได้โดยไม่มีปัญหา
เมื่อพูดถึงตัวเลือกการออกแบบ ไอคอนที่สร้างไว้ล่วงหน้าจะมีข้อจำกัดมากกว่า หากคุณต้องการความเก่งกาจมากขึ้น ไฟล์ a.VQ เป็นตัวเลือกที่ดีที่สุด ไอคอน SVG สามารถสร้างด้วยมือหรือใช้เครื่องมือ สามารถวาดไอคอนบนกระดานวาดภาพเสมือนจริงได้โดยใช้โปรแกรมภาพเวกเตอร์ หลังจากนั้น คุณส่งออกไฟล์ .svg ของคุณ หรือคุณสามารถรับไอคอน SVG สำเร็จรูปได้จากรายการ Evernote นี้ ขนาดของรูปร่างถูกกำหนดโดยความกว้างและความสูง ในขณะที่ตำแหน่งถูกกำหนดโดย x และ y ชื่อคลาสยังสามารถตั้งค่าเป็นองค์ประกอบ <svg> หรือ <rect> รวมถึงสไตล์ในไฟล์ CSS สไตล์ชีตแยกกัน คุณสามารถเปลี่ยนสีพื้นหลังสำหรับไอคอนเหล่านี้ใน Ycode no-code builder ได้โดยตรงโดยใช้ตัวเลือกสีไอคอน Ycode
ด้วยเหตุนี้ จึงแนะนำให้ใช้กราฟิกแบบเวกเตอร์โดยใช้ SVG สี การเปลี่ยนภาพ และแอนิเมชั่นสามารถแก้ไขได้อย่างละเอียดยิ่งขึ้นด้วยการควบคุมข้อความที่ดียิ่งขึ้น สามารถปรับแต่งกราฟิกแบบเวกเตอร์ได้อย่างง่ายดายหากคุณต้องการใช้กราฟิกแบบเวกเตอร์
วิธีสร้างไอคอนที่ดูเป็นมืออาชีพโดยใช้ Svgs
เนื่องจากไฟล์ svg ดูเป็นมืออาชีพมากกว่า ฉันจึงเลือกเป็นไอคอน อย่างไรก็ตาม ตราบใดที่คุณเลือกที่จะ usevgs คุณก็มีตัวเลือกในการทำเช่นนั้น