ภาพเคลื่อนไหวภาพ SVG โดยใช้ JavaScript

เผยแพร่แล้ว: 2023-02-22

ในการทำให้ ภาพ SVG เคลื่อนไหวโดยใช้ JavaScript ขั้นตอนแรกคือการเข้าถึงองค์ประกอบภาพ สามารถทำได้โดยใช้เมธอด getElementById() เมื่อเข้าถึงองค์ประกอบรูปภาพแล้ว ขั้นตอนต่อไปคือการตั้งค่าแอตทริบิวต์ที่ต้องการสำหรับภาพเคลื่อนไหว แอตทริบิวต์ทั่วไปที่มีการตั้งค่าคือแอตทริบิวต์ 'x' และ 'y' ซึ่งจะกำหนดตำแหน่งของรูปภาพ แอตทริบิวต์ทั่วไปอื่นๆ ได้แก่ แอตทริบิวต์ 'ความกว้าง' 'ความสูง' และ 'ความทึบ' เมื่อตั้งค่าแอตทริบิวต์ที่ต้องการทั้งหมดแล้ว ขั้นตอนสุดท้ายคือการเรียกใช้เมธอด 'animate()' ในองค์ประกอบรูปภาพ

GreenSock (G SAP) เป็นไลบรารีที่เราจะใช้ในบทช่วยสอนนี้เพื่อสร้างภาพเคลื่อนไหวง่ายๆ เราจะแสดงให้เห็นว่ามันง่ายเพียงใดในการรวมช่วงการเปลี่ยนภาพหลาย ๆ ครั้งเข้าด้วยกันเพื่อสร้างแอนิเมชั่นที่ซับซ้อน หากคุณต้องการเพิ่มซอฟต์แวร์การออกแบบกราฟิกในโครงการแอนิเมชันของคุณ ลองดูคอลเล็กชันซอฟต์แวร์ออกแบบกราฟิกฟรีที่ดีที่สุดของเรา MorphSVG (เปิดในแท็บใหม่) จะใช้เพื่อเปลี่ยนเส้นทางน้ำเดิมให้เป็นเส้นทางใหม่ นอกจากนี้ GSAP ยังช่วยให้เราสามารถเลื่อนแอนิเมชั่นได้โดยตั้งค่า 'yoyo' เป็น 'false' เราจะสร้างแอนิเมชันท้องฟ้ายามค่ำคืนสำหรับดวงจันทร์และดวงดาวด้วย ด้วยการใช้เทคนิคเดียวกับที่เราใช้ในการทำให้ดวงอาทิตย์เคลื่อนไหวในมุมที่มองไม่เห็น เราจะสามารถดึงดวงอาทิตย์เข้ามาอยู่ในโฟกัสได้

ในการคำนวณแอนิเมชั่นและการหน่วงเวลา เราใช้คณิตศาสตร์ง่ายๆ ตามตัวแปร 'day_night_cycle_time' ของเรา ดวงดาวเป็นสิ่งเดียวที่ยังคงอยู่ในแอนิเมชั่นของเราหลังจากที่พวกมันกระพริบตา เราได้ทำแอนิเมชั่นสำหรับวัฏจักรกลางวันถึงกลางคืนเสร็จแล้ว ภาพสามารถใช้เพื่อเพิ่มองค์ประกอบใหม่ให้กับภูมิทัศน์ของเราโดยใช้ SVG ต้องย้ายชั้นหิมะทั้งสองในแนวตั้งเพื่อให้เคลื่อนไหวได้ เลเยอร์จะเคลื่อนที่ด้วยความเร็วที่แตกต่างกันขึ้นอยู่กับระยะเวลา

เลือกเฟรมที่คุณต้องการสร้างภาพเคลื่อนไหว จากนั้นเปิดใช้งานการส่งออกภาพเคลื่อนไหว SVG โดยคลิกเปิดใช้งานการส่งออก SVG หากต้องการสร้างภาพเคลื่อนไหว เช่น ตำแหน่ง X, Y, S, X, Y และ Y ให้วาง โหนดภาพเคลื่อนไหว ในเฟรมนั้น คุณสามารถปรับแต่งแอนิเมชั่นของคุณในฟีเจอร์การแสดงตัวอย่างแบบสดในตัวได้จนกว่าคุณจะพอใจกับผลลัพธ์ที่ได้

คุณสามารถตั้งค่าความทึบของ SVG ได้โดยเลือกองค์ประกอบที่สำคัญและแก้ไขตามนั้น สำหรับขั้นตอนเพิ่มเติม คุณควรถอดรหัสคีย์เฟรมและชื่อก่อนที่จะทำให้ SVG เคลื่อนไหว รักษาคุณสมบัติและแอนิเมชั่นไว้เหมือนเดิมโดยกำหนดให้กับองค์ประกอบ เมื่อแก้ไของค์ประกอบทั้งหมดแล้ว ให้บันทึกไฟล์สุดท้าย

คุณเคลื่อนไหว Svg ได้อย่างไร?

คุณเคลื่อนไหว Svg ได้อย่างไร?
เครดิต:ปานกลาง

มีหลายวิธีในการทำให้ SVG เคลื่อนไหว วิธีหนึ่งคือใช้คีย์เฟรม CSS เพื่อกำหนดการเคลื่อนไหว อีกวิธีคือใช้ SMIL และวิธีที่สามคือใช้ JavaScript

แอนิเมชันบนเว็บไม่เพียงแต่ช่วยปรับปรุงประสบการณ์ของผู้ใช้เท่านั้น แต่ยังให้ข้อเสนอแนะและแนวทางด้วยภาพอีกด้วย บทความนี้จะสอนวิธีสร้างแอนิเมชันที่มีน้ำหนักเบาและปรับขนาดได้โดยใช้ SVG และ CSS สามารถใช้งานได้หลายวิธี รวมถึงการโหลด การอัปโหลด การสลับเมนู การเล่นและหยุดวิดีโอชั่วคราว และการทำให้หน้า Landing Page สว่างขึ้น แอตทริบิวต์เหล่านี้เหมือนกับแอตทริบิวต์ CSS และตั้งค่าโดยตรงในไฟล์ SVG หากเราต้องการแสดงรูปร่างในพื้นหลัง รูปร่างนั้นจะต้องอยู่ด้านบนสุดของโค้ด SVG สิ่งสำคัญคือต้องตระหนักถึงสิ่งที่ตั้งค่าไว้ เพื่อให้คุณสามารถวางแผนล่วงหน้าสำหรับสิ่งที่ปรากฏในหน้าต่างการโหลดหน้าเว็บ คำขอ HTTP เดียวลดลงพร้อมประสิทธิภาพที่ดีขึ้นเมื่อ SVG เป็นแบบอินไลน์

สามารถเพิ่มสไตล์ CSS ได้โดยใช้แท็ก <style> ซึ่งซ้อนอยู่ภายในแท็ก >svg> ในหลักสูตรของเรา เราจะดูแอนิเมชันสองประเภทที่แตกต่างกันในแง่ของการควบคุมที่มีให้ แท่งต้องเปลี่ยนมาตราส่วนตามแกน Y ในสี่ตำแหน่งในไทม์ไลน์เพื่อให้มาตราส่วนเปลี่ยน ความยาวของภาพเคลื่อนไหวถูกกำหนดโดยหมายเลขแรก ในขณะที่การหน่วงเวลาถูกกำหนดโดยหมายเลขที่สอง มีการเพิ่มรหัสสำหรับ SVG และส่วนประกอบทั้งสามขององค์ประกอบเพื่อให้กำหนดเป้าหมายได้ง่ายขึ้นโดยใช้ Sass ในบทเรียนนี้ เราจะใช้ SVG เพื่อสร้างเมนูแฮมเบอร์เกอร์ เมื่อผู้ใช้วางเมาส์เหนือ สี่เหลี่ยมด้านบนและด้านล่างจะหมุนตามการกระทำของผู้ใช้

เมื่อเราอ้างถึงแอนิเมชั่นนี้ เราหมายถึงแอนิเมชั่นข้อความเด้ง ในการสาธิตขั้นสุดท้าย แอนิเมชั่นข้อความหยักจะแสดงตัวอักษรแต่ละตัวในโลกที่เคลื่อนไหวเป็นคลื่น เมื่อส่วนหน้าของเว็บมีความซับซ้อนมากขึ้น คุณลักษณะของเบราว์เซอร์ก็มีความสำคัญมากขึ้น ภาพเคลื่อนไหว CSS ของเรานั้นง่ายมากด้วยเครื่องมือต่อไปนี้ LogRocket เป็นเครื่องมือที่สามารถตรวจสอบและติดตาม CPU หน่วยความจำ และทรัพยากรการประมวลผลอื่นๆ ของไคลเอ็นต์ทั้งหมดของคุณ ตลอดจนผู้ใช้ทั้งหมดของคุณในเวอร์ชันที่ใช้งานจริง

นอกเหนือจากการสร้างแอนิเมชั่นอย่างง่ายสำหรับงานศิลปะชิ้นใหญ่แล้ว คุณลักษณะนี้ยังมีประโยชน์สำหรับการสร้างแอนิเมชั่นที่ซับซ้อนซึ่งยากต่อการทำโดยใช้ JavaScript กลุ่มของรูปร่างเมื่อเวลาผ่านไปอาจดูซับซ้อนกว่ารูปร่างเดียว ถ้ารูปร่างทั้งหมดเคลื่อนไหวพร้อมกัน

การสร้างแอนิเมชั่นที่ซับซ้อนด้วย Svg

สามารถสร้างเอฟเฟ็กต์ภาพเคลื่อนไหวได้โดยใช้ความสามารถของ SVG ในการเปลี่ยนกราฟิกแบบเวกเตอร์เมื่อเวลาผ่านไป ตรวจสอบให้แน่ใจว่าคุณกำลังสร้างเนื้อหา SVG โดยใช้วิธีการต่อไปนี้ เมื่อคุณสร้างองค์ประกอบแอนิเมชัน SVG บางอย่างแล้ว เช่น animate() คุณสามารถทำให้คุณสมบัติขององค์ประกอบเหล่านั้นเคลื่อนไหวเมื่อเวลาผ่านไป คุณสามารถใช้ CSS เพื่อสร้าง เอฟเฟ็กต์ภาพเคลื่อนไหวที่ซับซ้อน ซึ่ง CSS ไม่สามารถให้ได้ ชิ้นส่วนเอกสารอธิบายการเปลี่ยนแปลงองค์ประกอบของเอกสารตามเวลา เมื่อเวลาผ่านไป คุณสามารถทำให้ขนาด สี หรือตำแหน่งขององค์ประกอบเคลื่อนไหวในไฟล์ SVG ได้ การสร้างคลาสสำหรับ SVG ทำให้ CSS สามารถเลือกรูปร่างแต่ละรูปร่างภายในรูปภาพได้ สิ่งนี้ทำให้ภาพเคลื่อนไหวของรูปทรงต่างๆ ในเวลาต่างๆ กัน ทำให้เกิดเอฟเฟกต์ที่ซับซ้อนมากขึ้น


Svg สามารถทำงานร่วมกับ Javascript ได้หรือไม่

เป็นรูปแบบกราฟิกที่สมบูรณ์และซับซ้อน รูปแบบเวกเตอร์มีขนาดเล็กกว่า JPEG, PNG และรูปแบบแรสเตอร์อื่นๆ มาก เว็บเบราว์เซอร์รองรับโดยไม่มีเงื่อนไขที่ไม่แน่นอน เป็นพลเมือง DOM ที่แท้จริง และทำงานร่วมกับ CSS และ Javascript ได้อย่างง่ายดาย

ทั้ง HTML และ SVG แสดงโดย Document Object Model (DOM) ซึ่งเป็นภาษามาร์กอัปประเภทหนึ่ง ความจริงที่ว่าพวกเขาสามารถจัดการได้ด้วย Javascript ทำให้ง่ายต่อการจัดการ ในหลักสูตรนี้ ฉันจะพูดถึงวิธีการทำงานกับ SVG ทั้งแบบอินไลน์และภายนอก ตัวอย่างโค้ดทั้งหมดสามารถดูได้ที่ด้านบนของโพสต์นี้ผ่านลิงก์ Github รหัสนี้ใช้สำหรับ SVG ทั้งภายนอกและภายในเมื่อเพิ่มองค์ประกอบ <script> เนื่องจาก SVG ไม่สามารถเข้าถึงเอกสาร HTML ที่ฝังอยู่ จึงไม่สามารถมองเห็น SVG ที่เหลือของหน้าได้ หากคุณรวมรหัส JS ใน CDATA การแยกวิเคราะห์ XML จะถือว่าเป็นส่วนหนึ่งของ XML

กระบวนการสร้างและลบองค์ประกอบใน HTML นั้นเหมือนกับในภาษาอื่นๆ เมื่อสร้างองค์ประกอบ ก่อนอื่นคุณต้องผ่านเมธอด createElementNS() ของเอกสารที่เหมาะสม ตลอดจนชื่อแท็กและเนมสเปซที่สร้างองค์ประกอบ สร้างโหนดข้อความใหม่โดยใช้เมธอด createTextNode() แล้วผนวกเข้ากับองค์ประกอบที่ต้องการลบออก ใช้งานได้เนื่องจากไม่สามารถคัดลอกและวางเอกสารจากที่เดียวกันได้

เป็นไปได้ที่จะใช้ SVG ในแอพพลิเคชั่นที่หลากหลาย สามารถใช้ JavaScript เพื่อจัดการกับ ภาพ SVG ทำให้มีความหลากหลายอย่างมาก สคริปต์ช่วยให้ใช้ SVG ได้ง่ายกว่ารูปแบบภาพอื่นๆ ก่อนทำแบบทดสอบ โปรดอ่านคำแนะนำอย่างละเอียดเพื่อให้แน่ใจว่าคำแนะนำนั้นชัดเจนและคุณปฏิบัติตามคำแนะนำนั้น

รูปภาพ Svg: วิธีการใช้ในเอกสาร Html ของคุณ

หากคุณต้องการให้ภาพ SVG ปรากฏในเอกสาร HTML โดยตรง ให้ใช้แท็ก *svg คุณสามารถทำได้โดยเปิดภาพ SVG ในโค้ด Visual Studio หรือใช้ IDE ที่คุณต้องการ แล้วคัดลอกโค้ดไปยังองค์ประกอบ body> ของเอกสาร HTML ของคุณ หากทุกอย่างเป็นไปด้วยดี เว็บไซต์ของคุณจะมีลักษณะเหมือนกับที่แสดงด้านล่างทุกประการ
เนื่องจากเป็นรูปแบบรูปภาพที่ใช้ XML ทำให้ SVG ปรับขนาดได้ง่ายและไม่ลดลงเมื่อเวลาผ่านไป สามารถใช้ CSS และ/หรือ JavaScript เพื่อจัดการและทำให้ SVG เคลื่อนไหวได้อย่างง่ายดาย เป็นผลให้สามารถใช้ SVG ในการออกแบบเว็บไซต์ที่ตอบสนอง (และลดเวลาในการโหลดหน้าเว็บ)
ในส่วนหัวของหน้า ให้ใส่ jQuery SVG CSS และ JavaScript หรืออีกทางหนึ่ง คุณสามารถใช้โค้ดเวอร์ชันย่อขนาด… .js.html.js.html.js.html.js.html.js.html.js.html.js.html.js.html
ทั้ง HTML และ CSS รองรับเบราว์เซอร์ยอดนิยมทั้งหมด รวมถึง Google Chrome, Firefox, IE และ Opera นอกจากนี้ โปรแกรมแก้ไขข้อความพื้นฐานและโปรแกรมแก้ไขกราฟิกระดับไฮเอนด์ เช่น CorelDRAW ยังรองรับไฟล์ SVG

คุณสามารถเคลื่อนไหวด้วย Javascript ได้ไหม

ได้ คุณสามารถเคลื่อนไหวด้วย JavaScript ความจริงแล้ว JavaScript เป็นหนึ่งในภาษายอดนิยมสำหรับสร้างเว็บแอนิเมชัน มีไลบรารีและเฟรมเวิร์กมากมายที่ช่วยให้สร้างแอนิเมชันที่ซับซ้อนด้วย JavaScript ได้อย่างง่ายดาย

ในบทช่วยสอนนี้ เราจะพูดถึงวิธีการใช้ JavaScript เพื่อสร้างตัวละครที่เคลื่อนไหวได้ ใน JavaScript สามารถย้ายองค์ประกอบ DOM จำนวนหนึ่งไปรอบๆ หน้าได้ นอกจากนี้ยังสามารถตั้งค่าลูกศรบนและซ้ายเพื่อให้วางวัตถุรอบ ๆ หน้าจอได้หลายวิธี เมธอด getElementById() จะส่งคืนวัตถุ DOM แล้วกำหนดให้กับตัวแปรส่วนกลางในกรณีนี้ moveRight() สำหรับ imgobj ใช้ setTimeout() เพื่อกำหนดตำแหน่งของวัตถุ จะปรากฏบนหน้าจอทันทีที่เลื่อนตัวชี้เมาส์ออกจากลิงก์ เมื่อเมาส์ของผู้ใช้เลื่อนไปที่ลิงก์ (รูปภาพ) ตัวจัดการเหตุการณ์ onMouseOver จะถูกเรียกใช้ และเมื่อเมาส์ของผู้ใช้เลื่อนไปที่ลิงก์ (รูปภาพ) ตัวจัดการเหตุการณ์ onMouseOut จะถูกเรียกใช้

เป็นวิธีที่ยอดเยี่ยมในการเพิ่มรูปลักษณ์ให้กับหน้าเว็บหรือแอปพลิเคชัน การเปลี่ยนแปลงสไตล์ขององค์ประกอบบนหน้าสามารถทำให้เกิดการเคลื่อนไหวได้ การเปลี่ยน CSS และภาพเคลื่อนไหวเป็นวิธีที่มีประสิทธิภาพในการสร้างภาพเคลื่อนไหว หากภาพเคลื่อนไหวของคุณซับซ้อน คุณอาจต้องใช้ JavaScript
การเปลี่ยน CSS และแอนิเมชั่นเป็นวิธีที่ยอดเยี่ยมในการเพิ่มสีสันให้กับเว็บเพจหรือแอปพลิเคชันของคุณ และเป็นวิธีที่ง่ายที่สุดและมีประสิทธิภาพมากที่สุด

แอนิเมชัน Css กับแอนิเมชัน Javascript

แม้ว่าโดยทั่วไปแล้วแอนิเมชั่น CSS จะเหนือกว่าแอนิเมชั่นที่ใช้ JavaScript แต่ก็มีประโยชน์ในบางกรณี พวกมันมีประโยชน์อย่างยิ่งในการสร้างเอฟเฟ็กต์แอนิเมชั่นที่ซับซ้อน

เส้นทาง Javascript Animate Svg

JavaScript สามารถใช้เพื่อทำให้ทั้งองค์ประกอบ HTML และองค์ประกอบ SVG เคลื่อนไหวได้ ในการทำให้องค์ประกอบ SVG เคลื่อนไหว ก่อนอื่นคุณต้องเข้าถึงองค์ประกอบโดยใช้ JavaScript จากนั้นจึงตั้งค่าพารามิเตอร์ของภาพเคลื่อนไหวโดยใช้ CSS หรือ JavaScript

บน CodePen Louis Hoebregts (@Mamboleoo) ได้สร้างความท้าทาย “ เคลื่อนไหวอะไรก็ได้ ตามเส้นทาง SVG” รูปแบบภาพเวกเตอร์ (SVG) ซึ่งไม่มีพิกเซลสี แต่มีฟังก์ชันทางคณิตศาสตร์สามารถแสดงบนหน้าจอได้ ในบทความนี้ เราจะดูที่ฟังก์ชัน getPointAtLength() และวิธีใช้เพื่อสร้างกรณีการใช้งานที่สร้างสรรค์ตามเส้นทาง SVG ในแต่ละเฟรมของแอนิเมชั่นนี้ เราจะสร้างองค์ประกอบวงกลมใหม่และย้ายมันไปตามเส้นทาง ฟังก์ชัน createParticle จะเปิดใช้งานในแต่ละเฟรมเพื่อสร้างอนุภาคใหม่และจางหายไป ฉันยังใช้ชุดจังหวะ-แดชออฟเซ็ตของฟิวส์เพื่อทำให้แอนิเมชันสมจริงยิ่งขึ้น พิกัดของจุดตามเส้นทาง SVG สามารถเรียกค้นและใช้ได้แล้ว ดังนั้นเราจึงสามารถลองแยกพิกัดเหล่านั้นจากที่อื่นได้ ภาพเคลื่อนไหวของเวกเตอร์แต่ละตัวจะมีความล่าช้าที่คำนวณตามเส้นทางจากตำแหน่งที่ตั้งอยู่ ส่งผลให้เกิดการไหลของอนุภาคที่ดี ฉันอยากรู้ว่าคุณค้นพบอะไรเมื่อลองใช้เทคนิคนี้ และฉันก็ดีใจที่ได้เห็นสิ่งที่คุณคิดได้

การสร้างเส้นประด้วย Javascript ภายนอก

JavaScript สามารถเข้าถึงได้ผ่าน *br> หากต้องการทำให้เส้นทางนี้เคลื่อนไหวราวกับว่ากำลังวาดอย่างช้าๆ และราบรื่นบนหน้าจอ คุณต้องใช้แอตทริบิวต์ stroke-dasharray ซึ่งเท่ากับความยาวเส้นทาง กล่าวอีกนัยหนึ่ง ความยาวของเส้นประแต่ละเส้นและช่องว่างในเส้นโค้งจะเท่ากับความยาวของเส้นทางทั้งหมด
Path *br เป็นคำย่อ อาร์เรย์ของจังหวะ: 100 100; *br> หากคุณต้องการใช้ JavaScript คลิกที่นี่ เส้นประแสดงถึงความยาวของเส้นทาง
ในการคำนวณ startDashOffset ให้ป้อน dashLength / 2; มิฉะนั้น startLength คือ 2 var endDashOffset = dashLength เริ่มต้นที่
หาก gapLength เป็นศูนย์ startDashOffset จะเป็นศูนย์ ถ้า gapLength เป็นหนึ่ง endDashOffset จะเป็นศูนย์
var dashArray เป็นตัวแทนของอาร์เรย์ var dash สำหรับ (var i = start DashOffset; i = end DashOffset; i++) *br> DashArray. ดัน (ใหม่). เมธอด date() ส่งคืนอาร์เรย์ของประเภทวันที่ที่มี dateLength * dashLength
สามารถเลือก svg ได้ ต่อไปนี้คือลิงก์ไปยังแอปพลิเคชัน Python Array.attr(“เส้นขีด-dashharray”, dashArray);
ด้วยเหตุนี้ เส้นประบนหน้าจอจะเคลื่อนไหวในลักษณะเดียวกับที่วาดไว้

ห้องสมุด Svg Animation Js

ไลบรารีแอนิเมชัน SVG เป็นเครื่องมือที่ช่วยให้นักพัฒนาสร้างแอนิเมชันโดยใช้ Scalable Vector Graphics (SVG) ไลบรารีมีชุดฟังก์ชันที่ช่วยให้สร้างแอนิเมชันได้ง่าย และยังมีชุดเครื่องมือที่ช่วยให้นักพัฒนาปรับแต่งแอนิเมชันได้อย่างละเอียด

แม้ว่าข้อเท็จจริงที่ว่าแอนิเมชัน SVG อาจดูยุ่งยากเล็กน้อย แต่ไลบรารีเหล่านี้ทำให้การสร้างเว็บไซต์แอนิเมชันเป็นเรื่องง่ายมากสำหรับทุกคน ในโพสต์นี้ ฉันจะแนะนำไลบรารีแอนิเมชัน SVG ของ Javascript สิบไลบรารีที่สามารถใช้สร้างแอนิเมชันที่น่าประทับใจอย่างแท้จริง คุณสามารถสร้างสคริปต์แบบกำหนดเองที่วาด SVG ในแบบที่คุณต้องการโดยใช้แอนิเมชันที่มีอยู่มากมาย ด้วยความช่วยเหลือของสคริปต์ JS อเนกประสงค์ เช่น SVG คุณสามารถสร้างภาพนามธรรมที่ทันสมัยและมีสไตล์พร้อมภาพเคลื่อนไหว เป้าหมายของโครงการ Svg.js คือมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้โดยไม่จำเป็นต้องพึ่งพาใดๆ Animate Plus มีประสิทธิภาพระดับสูงและมีน้ำหนักเบา (3KB zip) ทำให้เหมาะสำหรับอุปกรณ์พกพา

วาด Svg โดยใช้ Javascript

มีสองสามวิธีในการวาด svg โดยใช้จาวาสคริปต์ วิธีที่พบบ่อยที่สุดคือการใช้ไลบรารี เช่น d3.js วิธีอื่นๆ ได้แก่ การใช้ svg api โดยตรงหรือใช้ไลบรารี เช่น snap.svg

ทำไมคุณควรใช้ Svg

การสร้างเอกสารแบบอินเทอร์แอกทีฟที่มีแอนิเมชันด้วย JavaScript เป็นวิธีที่ยอดเยี่ยมในการเพิ่มการโต้ตอบ ความยืดหยุ่น และความง่ายในการใช้งาน ไม่ขึ้นอยู่กับความละเอียดและสามารถเคลื่อนไหวและจัดการได้ง่ายโดยใช้ CSS หรือ JavaScript ด้วยเหตุนี้ การออกแบบ SVG จึงสามารถตอบสนองได้ ทำให้โหลดหน้าเว็บลดลง

แอนิเมชั่นรูปร่าง Svg

ภาพเคลื่อนไหวรูปร่าง SVG เป็นวิธีที่ยอดเยี่ยมในการเพิ่มความน่าสนใจและการเคลื่อนไหวให้กับหน้าเว็บและแอปพลิเคชันของคุณ ด้วยการทำให้รูปร่างเคลื่อนไหวในรูปภาพ SVG ของคุณ คุณจะสามารถสร้างงานออกแบบที่น่าดึงดูดและสะดุดตา ซึ่งจะดึงดูดความสนใจของผู้ใช้และทำให้พวกเขากลับมาอีก

กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) เป็นรูปแบบภาพที่ใช้ XML เช่นเดียวกับ HTML โดยจะระบุองค์ประกอบของรูปทรงเรขาคณิตที่คุ้นเคยต่างๆ ที่สามารถรวมกันเพื่อสร้างกราฟิกสองมิติ ในบทความนี้ ฉันจะแสดงวิธีใช้ SVG และ เทคนิคแอนิเมชัน เพื่อปรับปรุงการพัฒนาส่วนหน้าของเว็บของคุณ แอตทริบิวต์ทั้งสองนี้ใช้สำหรับการวาดเส้นทางใน SVG นอกเหนือจาก Stroke-Dasharray และ Stroke-Dashoffset การเพิ่มลักษณะเหล่านี้ลงในเส้นทางจะทำให้มีลักษณะค่อยๆ วาดขึ้น นอกจากส่วนโค้งและเส้นโค้งเบซิเยร์กำลังสองแล้ว คำสั่งการวาดอื่นๆ เช่น ที่แสดงรายการข้างต้น สามารถใช้เพื่อสร้างกราฟิกที่ซับซ้อนมากขึ้นได้ SVG และเอฟเฟ็กต์ต่างๆ สามารถนำไปใช้กับเส้นทางของคุณได้โดยใช้ strokes-dasharray และ strokes-dashoffset ซึ่งเป็นแอตทริบิวต์ที่มีประสิทธิภาพสองอย่าง

เป็นเครื่องมือง่ายๆ ที่ใช้ในการทดสอบกับแอตทริบิวต์ทั้งสอง ด้วย JavaScript คุณสามารถทำให้เทคนิคแอนิเมชันที่ใช้ในบทความก่อนหน้านี้ง่ายขึ้น ห้องสมุด Vivus เป็นตัวเลือกที่ยอดเยี่ยมสำหรับผู้ที่มองหาห้องสมุดที่ทำอะไรได้มากกว่านั้นแต่ยังคงได้ผลลัพธ์ที่น่าทึ่ง Snap.svg ทำให้การวาดภาพ SVG เป็นเรื่องง่ายโดยใช้ JavaScript และส่งผลให้คุณสร้างภาพเคลื่อนไหวได้โดยตรงโดยใช้เมธอด the.animate(*) anime.js ไลบรารีที่คล้ายกับ anime.js ช่วยให้คุณสร้างองค์ประกอบ div โดยทำตามเส้นทาง SVG ด้วยโค้ดไม่กี่บรรทัด

ตัวอย่าง Svg Javascript

มีหลายวิธีในการใช้ JavaScript กับ SVG ตัวอย่างเช่น คุณสามารถใช้ JavaScript เพื่อสร้างแผนที่แบบโต้ตอบที่เน้นประเทศต่างๆ เมื่อคุณวางเมาส์เหนือประเทศเหล่านั้น คุณยังสามารถใช้ JavaScript เพื่อสร้างกราฟิกเคลื่อนไหวหรือควบคุมการเล่นไฟล์เสียงและวิดีโอ

กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ใช้เพื่ออธิบายกราฟิกเหล่านี้ Extensible Markup Language (XML) เป็นรูปแบบภาพที่ใช้ในการเขียนกราฟิกแบบเวกเตอร์ ใน CSS และ HTML คุณสามารถใช้รูปภาพ SVG ได้หลายวิธี ในบทช่วยสอนนี้ เราจะพูดถึงหกวิธีที่แตกต่างกัน นี่คือกระบวนการสร้าง sva ​​เป็นภาพพื้นหลัง CSS ซึ่งคล้ายกับการเพิ่มรูปภาพในเอกสาร HTML ด้วยแท็ก >img> ในกรณีนี้ เราใช้ CSS แทน HTML เพื่อปรับแต่งเพิ่มเติม

นอกจากนี้ยังสามารถใช้องค์ประกอบ >object> ของ HTML เพื่อเพิ่มรูปภาพไปยังเว็บเพจได้ ในเบราว์เซอร์ทั้งหมด สามารถใช้คุณสมบัติ <object> เพื่อแสดงกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) อีกวิธีหนึ่งในการใช้รูปภาพใน HTML และ CSS โดยใช้ไวยากรณ์นี้คือการใช้องค์ประกอบ HTML เนื่องจากเบราว์เซอร์สมัยใหม่ส่วนใหญ่ไม่รองรับปลั๊กอินของเบราว์เซอร์ การพึ่งพาส่วนขยายดังกล่าวจึงไม่ใช่ความคิดที่ดี

Svg ใน Javascript: คุณใช้ได้ไหม คุณฝังมันได้อย่างไร?

นอกจากเครื่องมือออนไลน์แล้ว คุณยังสามารถใช้เครื่องมือเหล่านี้เพื่อฝัง SVG บนไซต์ของคุณได้อีกด้วย ตัวอย่างเช่น Services.js มาพร้อมกับตัวเลือกการฝัง SVG จำนวนหนึ่ง
เราสามารถใช้ SVG ใน JavaScript ได้หรือไม่
แน่นอน ฉันเชื่ออย่างนั้น นอกจากการกำหนดรูปแบบ/การเขียนสคริปต์แล้ว แต่ละองค์ประกอบในรูปภาพ SVG ยังสามารถจัดรูปแบบโดยใช้ CSS หรือเขียนสคริปต์โดยใช้ JavaScript
คุณจะฝังไฟล์ sva ได้อย่างไร?
คุณสามารถแทรกรูปภาพ SVG ลงในเอกสาร HTML ได้โดยตรงโดยใช้แท็ก *svg ด้วยการคัดลอกโค้ดและวางลงในองค์ประกอบ body> ของเอกสาร HTML คุณสามารถใช้ประโยชน์จากภาพ SVG ในโค้ด VS หรือ IDE ที่คุณต้องการ หากทุกอย่างเป็นไปตามแผน คุณควรมีหน้าเว็บที่มีลักษณะเหมือนกับที่แสดงด้านล่างทุกประการ