Snap Svg: ไลบรารีโอเพ่นซอร์สสำหรับสร้างกราฟิกแบบเวกเตอร์บนเว็บ
เผยแพร่แล้ว: 2022-12-13Snap.svg เป็นไลบรารี JavaScript แบบโอเพ่นซอร์สสำหรับสร้างกราฟิกแบบเวกเตอร์บนเว็บ มันถูกสร้างขึ้นบน Snap ไลบรารี svg และใช้ API เดียวกัน ไลบรารี Snap.svg มี API ที่มีประสิทธิภาพสำหรับการสร้างและจัดการกราฟิกแบบเวกเตอร์ ห้องสมุดใช้งานง่ายและมีขนาดเล็ก นอกจากนี้ยังมีการจัดทำเป็นเอกสารอย่างดีและมีชุมชนผู้ใช้จำนวนมาก ไลบรารี Snap.svg เป็นตัวเลือกที่ยอดเยี่ยมสำหรับการสร้างกราฟิกแบบเวกเตอร์บนเว็บ ใช้งานง่าย มีรอยขนาดเล็ก และมีเอกสารครบถ้วน
เป็นไลบรารี Javascript ที่ให้คุณสร้าง เคลื่อนไหว และโต้ตอบกับกราฟิก SVG สามารถใช้กับเบราว์เซอร์สมัยใหม่ใดก็ได้ (IE9+, Chrome, Safari, Firefox และ Opera) สามารถโหลด SVG ที่แสดงอยู่แล้วบนเพจ หรือโหลดได้ตามต้องการจากแหล่งข้อมูลระยะไกล ก่อนอื่นเราต้องกำหนดจุดกึ่งกลางขององค์ประกอบใดๆ โดยใช้กล่องขอบของมัน (getBBox()) จากนั้นใช้สไตล์และการแปลงเมทริกซ์กับองค์ประกอบนั้น เราใช้ path.path เพื่อทำให้มองไม่เห็นเส้นโค้งกำลังสองโดยเติมค่าว่าง:ไม่มี และ path.path เพื่อติดตามสามเหลี่ยมขณะที่มันกระโดด เนื่องจากเราสนใจเฉพาะรูปร่างของมันเท่านั้น ความจริงที่ว่ามันอยู่ในตำแหน่งใดตำแหน่งหนึ่งจึงไม่เกี่ยวข้องกัน ในการทำให้องค์ประกอบเคลื่อนไหวตามเส้นทางบน snap.svg คุณต้องใช้เส้นทาง เราตั้งเวลาเพื่อให้เราสามารถวางไม้กระดานและกระโดดในขณะที่แอนิเมชั่นน้ำหนักกำลังทำงาน หากคุณต้องการให้แอนิเมชันของคุณเล่นซ้ำแล้วซ้ำอีก คุณจะต้องทำสิ่งเพิ่มเติมเล็กน้อย แต่ก็คล้ายกับที่เราเคยเห็นมาก
ฉันจะสร้างภาพเคลื่อนไหว Svg ได้อย่างไร
คุณสามารถสร้าง ภาพเคลื่อนไหว SVG ได้ โดยเลือกเฟรมที่คุณต้องการให้เคลื่อนไหว จากนั้นคลิกปุ่มเปิดใช้การส่งออก SVG คุณสามารถใช้โหนดในเฟรมนั้นเพื่อทำให้ตำแหน่ง X, ตำแหน่ง Y, สเกล, การหมุน และความนุ่มนวลเคลื่อนไหวได้ คุณสามารถใช้การแสดงตัวอย่างแบบสดในตัวเพื่อปรับภาพเคลื่อนไหวของคุณจนกว่าคุณจะพอใจ
เป้าหมายของบทช่วยสอนนี้คือแนะนำขั้นตอนพื้นฐานของการเพิ่มประสิทธิภาพและแอนิเมชันโดยใช้ CSS เราได้รวมเฉพาะ Bootstrap 4.0.0 ไว้เป็นวิธีการมุ่งเน้นไปที่ภาพเคลื่อนไหว หากใช้บูตสแตรป คุณควรให้ SVG เป็นคลาส img-fluid เพื่อให้แน่ใจว่าปรับขนาดอย่างเหมาะสมบนอุปกรณ์มือถือ ด้วยการเพิ่มคลาสให้กับ SVG คุณสามารถเลือกรูปร่างแต่ละรูปร่างภายในรูปภาพได้ เมื่อเราขอเอฟเฟกต์จากตัวละครที่เคลื่อนไหว เราต้องระบุชื่อและคีย์เฟรมเพื่อให้ CSS เข้าใจว่าเราต้องการให้ทำอะไร เนื่องจากรูปสี่เหลี่ยมจางหายไปสองสามวินาที ภาพเคลื่อนไหวข้อความ จึงจำเป็นต้องดำเนินการทันที ลูกบาศก์เบซิเยร์ได้รับการปรับเพื่อรองรับความเร็วที่ลูกบาศก์เบซิเยร์เคลื่อนที่ ภาพตรงกลางของเราปรากฏที่ 40% ในภาพเคลื่อนไหว ด้วยเหตุนี้ เราจึงนำชุดระยะชัก-เส้นประกลับเป็นศูนย์ เพื่อให้เส้นประครอบคลุมเส้นทางทั้งหมด
3 ขั้นตอนในการสร้าง Svg แบบเคลื่อนไหวใน Html
การสร้าง SVG แบบเคลื่อนไหวใน HTML อาจดูเหมือนยาก แต่เมื่อคุณเข้าใจวิธีการทำงานแล้ว คุณก็สามารถทำได้ ขั้นตอนแรกในการทำให้ องค์ประกอบ SVG เคลื่อนไหวคือการระบุองค์ประกอบเหล่านั้น จากนั้น คุณต้องตั้งค่าความทึบขององค์ประกอบเหล่านี้เพื่อให้มองเห็นได้ในขณะที่ภาพเคลื่อนไหวกำลังเล่น แต่จะซ่อนไว้เมื่อเสร็จสิ้น สุดท้าย คุณจะต้องสร้างคีย์เฟรมและกำหนดคุณสมบัติให้กับแต่ละองค์ประกอบเพื่อให้ภาพเคลื่อนไหวเกิดขึ้น เมื่อเสร็จแล้ว คุณสามารถบันทึกไฟล์ของคุณได้
Svgs มีแอนิเมชั่นได้ไหม
ในการสร้างเอฟเฟ็กต์ภาพเคลื่อนไหวโดยใช้ SVG กราฟิกแบบเวกเตอร์สามารถเปลี่ยนแปลงได้เมื่อเวลาผ่านไป เป็นไปได้ที่จะทำให้เนื้อหา SVG เคลื่อนไหวด้วยวิธีต่อไปนี้ [] คือชุดขององค์ประกอบภาพเคลื่อนไหว SVG การใช้ ส่วนย่อยของเอกสาร SVG ทำให้สามารถอธิบายการเปลี่ยนแปลงที่เกิดขึ้นกับองค์ประกอบของเอกสารเมื่อเวลาผ่านไป
ภาษามาร์กอัป XML ของกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) สามารถใช้เพื่ออธิบายภาพสองมิติได้ คุณลักษณะใหม่ใน Animate ช่วยให้คุณสามารถส่งออกไฟล์ SVG โดยไม่จำเป็นต้องสร้างรหัสหรือคำจำกัดความใดๆ เนื่องจากความสามารถในการส่งออกนี้ คุณภาพของ SVG ที่นำเข้าไปยัง Character Animator จะได้รับการปรับปรุง การส่งออก SVG จัดการกับสัญลักษณ์หลายตัวได้อย่างราบรื่น โดยไม่สูญเสียเนื้อหาใดๆ ในแง่ของอาร์ตเวิร์ก Animate เกือบจะเหมือนกับ Stage ฟีเจอร์นี้มาแทนที่ฟีเจอร์ส่งออก FXG ซึ่งถูกลบออกจาก Animate (13.0) แม้ว่าแอนิเมชั่นบางตัวจะรองรับ SVG แต่คุณสมบัติบางอย่างก็ไม่รองรับ การส่งออกเนื้อหาที่สร้างผ่านคุณสมบัติเหล่านี้จะเป็นค่าเริ่มต้นเป็นคุณสมบัติที่รองรับหรือลบออกจากผู้ส่งออก
ในบทความนี้ เราจะแสดงวิธีสร้างแอนิเมชั่น SVG ที่ตอบสนองซึ่งถูกเรียกโดยการกระทำที่ผู้ใช้สร้างขึ้น คุณจะสร้างภาพลวงตาของการโต้ตอบแบบเรียลไทม์ระหว่างผู้ใช้และเว็บไซต์ด้วยการทำเช่นนั้น จำเป็นต้องมี แอนิเมชั่นพื้นฐาน เพื่อเริ่มต้น จากนั้นเราจะสร้างการโต้ตอบโดยอนุญาตให้ผู้ใช้ป้อนข้อมูลลงในภาพเคลื่อนไหว สุดท้ายนี้ เราจะแสดงวิธีเปลี่ยนขนาดของภาพเคลื่อนไหวเป็นความละเอียดต่างๆ ในวิดีโอนี้ เราจะแสดงวิธีสร้างแอนิเมชัน SVG ที่ตอบสนองซึ่งมีทั้งแบบโต้ตอบและปรับขนาดได้
วิธีสร้างภาพเคลื่อนไหว Svg
ภาพเคลื่อนไหว SVG เป็นภาพเคลื่อนไหวกราฟิกประเภทหนึ่งที่สร้างขึ้นโดยใช้ภาษาสคริปต์ ECMAScript ภาพเคลื่อนไหวเชิงบรรยาย สามารถส่งออกเป็นไฟล์ SVG ซึ่งจะดูและแก้ไขด้วยโปรแกรมแก้ไขรูปภาพเช่น Inkscape หลังจากนำเข้าแล้ว
ตัวอย่าง Snap Svg
Snap.svg เป็นไลบรารี JavaScript สำหรับการทำงานกับเอกสาร Scalable Vector Graphics (SVG) มี API สำหรับจัดการเอกสารเป็นวัตถุ และได้รับการออกแบบให้ทำงานร่วมกับมาตรฐานเว็บที่มีอยู่ เช่น CSS และ HTML
การใช้ไลบรารี svg ใน JavaScript เป็นวิธีเดียวในการทำกราฟิกแบบเวกเตอร์ ในการทำให้แอนิเมชั่นเคลื่อนไหว คุณเพียงแค่ระบุแอตทริบิวต์ที่จะเปลี่ยนแปลง (จากค่าปัจจุบัน) และตั้งเวลาในการสร้าง โปรแกรมกราฟิกเวกเตอร์อื่น ๆ เช่น Inkscape สามารถนำเข้าได้เช่นกัน Snap มีหลายวิธีในการนำเข้าและโต้ตอบกับกราฟิกแบบเวกเตอร์ภายนอก ในการทำเช่นนั้น ต้องใช้ฟังก์ชัน snap load และ callback เพื่อจัดการกับผลลัพธ์ของการนำเข้ากราฟิกภายนอก svg เป็นทรัพยากรบนเว็บที่มีเครื่องมือและเทคนิคต่างๆ สำหรับการโต้ตอบกับ SVG คุณสามารถเพิ่มการโต้ตอบที่ยอดเยี่ยมได้อย่างรวดเร็วและง่ายดายหากคุณทำตามคำแนะนำนี้หรือคำแนะนำอื่นๆ ฉันหวังว่าคุณจะสนุกกับตัวอย่างโค้ดเหล่านี้และค้นพบวิธีสร้าง กราฟิก Svg แบบโต้ตอบที่ยอดเยี่ยม สำหรับเว็บ
ภาพเคลื่อนไหว Svg
ภาพเคลื่อนไหว SVG กำลังเป็นที่นิยมมากขึ้นเรื่อย ๆ เนื่องจากเป็นวิธีที่ยอดเยี่ยมในการเพิ่มชีวิตชีวาให้กับหน้าเว็บของคุณ สร้างได้ง่ายและสามารถใช้เพื่อทำให้กราฟิกแบบเวกเตอร์หรือภาพบิตแมปเคลื่อนไหวได้
รูปแบบกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG) คือรูปแบบภาพที่ใช้ XML เช่นเดียวกับ HTML องค์ประกอบกราฟิกสามารถกำหนดเป็นรูปทรงเรขาคณิตต่างๆ และรวมกันเพื่อสร้างกราฟิกสองมิติ ในบทความนี้ ฉันจะแสดงวิธีใช้ SVG และเทคนิคแอนิเมชันเพื่อแปลงงานเว็บส่วนหน้าของคุณ ใน SVG แอตทริบิวต์ Stroke-Dasharray และ Stroke-Dashoffset เป็นสองคุณลักษณะที่ใช้บ่อยที่สุด ผลที่ได้คือลักษณะเหล่านี้สามารถรวมกันเพื่อสร้างภาพลวงตาว่าเส้นทางกำลังถูกวาดอย่างช้าๆ นอกจากนี้ยังสามารถสร้างกราฟิกที่ซับซ้อนมากขึ้นได้ด้วยคำสั่งการวาด เช่น ส่วนโค้งและเส้นโค้งเบซิเยร์กำลังสอง คุณสามารถใช้แอนิเมชั่นและเอฟเฟ็กต์ SVG ที่หลากหลายกับเส้นทางของคุณด้วย แอตทริบิวต์แอนิเมชั่น Stroke-Dasharray และ Stroke-Dashoffset
สามารถทดสอบแอตทริบิวต์ทั้งสองได้โดยใช้เครื่องมือที่มีประโยชน์นี้ คุณสามารถใช้ JavaScript ได้ง่ายกว่าเดิม เนื่องจากเทคนิคแอนิเมชันที่เราอธิบายไว้นั้นแม่นยำยิ่งขึ้น เพื่อให้ได้ผลลัพธ์ที่น่าทึ่ง คุณต้องใช้ไลบรารี่ที่สามารถทำอะไรได้มากกว่านั้นแต่ยังคงใช้งานได้อย่างน่าชื่นชม Snap.svg อนุญาตให้คุณใช้ JavaScript เพื่อวาดและทำให้รูปภาพเคลื่อนไหวโดยใช้ไลบรารี SimpleScript และช่วยให้คุณสร้างภาพเคลื่อนไหวโดยใช้ตัวแปรอย่างง่าย Anime.js ซึ่งเป็นอีกไลบรารีหนึ่ง ให้คุณสร้าง พาธ SVG โดยใช้โค้ดเพียงไม่กี่บรรทัด
Svg Animation: อนาคตของการมีส่วนร่วมของผู้ใช้
หากเราใช้แอนิเมชั่นที่เปิดใช้งาน SVG ผู้ใช้ของเราจะสามารถมีส่วนร่วมในประสบการณ์แบบไดนามิกและโต้ตอบได้ เมื่อ ส่วนย่อยของเอกสาร SVG อธิบายการเปลี่ยนแปลงตามเวลาในองค์ประกอบใดองค์ประกอบหนึ่ง จะเรียกว่าการแก้ไขตามเวลาด้วย เป็นผลให้เราสามารถผลิตแอนิเมชั่นที่ทั้งง่ายและมีประสิทธิภาพในการสร้างแอนิเมชั่น Airbnb มีหน้าที่ดูแลรักษาและพัฒนากรอบแอนิเมชั่น Lottie ในการสร้างแอนิเมชั่นคุณภาพสูงนั้นได้รับการออกแบบในลักษณะที่คุณสามารถทำได้อย่างรวดเร็วและง่ายดาย เนื่องจากความเป็นโมดูลาร์และการใช้งานที่ง่าย Lottie จึงเป็นตัวเลือกที่ยอดเยี่ยมสำหรับการสร้างแอนิเมชั่นที่ทั้งเรียบง่ายและบำรุงรักษาได้