โฮมเพจ » การเข้ารหัส » ดูกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG)

    ดูกราฟิกแบบเวกเตอร์ที่ปรับขนาดได้ (SVG)

    กราฟิกแบบเวกเตอร์มีการใช้อย่างกว้างขวางในสื่อสิ่งพิมพ์ ในเว็บไซต์เรายังสามารถเพิ่มกราฟิกแบบเวกเตอร์กับ SVG หรือ กราฟิกแบบเวกเตอร์ที่ปรับขนาดได้. อ้างจากข้อมูลจำเพาะอย่างเป็นทางการที่ W3.org, SVG อธิบายว่า:

    ภาษาสำหรับอธิบายกราฟิกสองมิติใน XML SVG อนุญาตให้วัตถุßgraphicสามประเภท: รูปร่างกราฟิกแบบเวกเตอร์ (เช่นเส้นทางที่ประกอบด้วยเส้นตรงและเส้นโค้ง) รูปภาพและข้อความ.

    จริงๆแล้วมันมีมาตั้งแต่ปี 1999 และเมื่อวันที่ 16 สิงหาคม 2011 ก็กลายเป็นคำแนะนำของ W3C ถึงกระนั้น SVG ยังถูกใช้งานน้อยมากในขณะที่มีข้อได้เปรียบมากมายในการใช้ Vector แทนที่จะเป็นบิตแมปเพื่อแสดงกราฟิกหรือรูปภาพบนเว็บไซต์.

    ข้อดี SVG

    ในแง่ของการให้บริการกราฟิกบนเว็บไซต์ SVG มีข้อได้เปรียบเหนือบิตแมปบางประการ ได้แก่ :

    ความละเอียดอิสระ

    บิตแมป / กราฟิกแรสเตอร์ขึ้นอยู่กับความละเอียดซึ่งสร้างขึ้นตามพิกเซล กราฟิกที่แสดงจะมีลักษณะเป็นพิกเซลเมื่อปรับขนาดที่ระดับการซูมที่แน่นอน นั่นไม่ได้เกิดขึ้นกับกราฟิกแบบเวกเตอร์ซึ่งเป็นความละเอียดที่เป็นอิสระในธรรมชาติเนื่องจากกราฟิกจะแสดงด้วยสมการทางคณิตศาสตร์ที่ทำให้มัน ปรับขนาดได้ที่ระดับการซูมใด ๆ ในขณะที่รักษาคุณภาพ, แม้กระทั่งที่ Retina Display.

    การลดคำขอ HTTP

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

    การออกแบบและการเขียนสคริปต์

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

    สามารถเป็นภาพเคลื่อนไหวและแก้ไขได้

    วัตถุ SVG สามารถเคลื่อนไหวได้เมื่อใช้องค์ประกอบภาพเคลื่อนไหวหรือผ่านไลบรารี JavaScript เช่น jQuery วัตถุ SVG ยังสามารถแก้ไขได้ด้วยโปรแกรมแก้ไขข้อความหรือซอฟต์แวร์กราฟิกเช่น Inkscape (ซึ่งฟรี) หรือ Adobe Illustrator.

    ขนาดไฟล์เล็กลง

    SVG มีขนาดไฟล์ที่เล็กกว่าเมื่อเทียบกับบิตแมปซึ่งมีการนำเสนอกราฟิกที่คล้ายกัน.

    การวาดรูปร่างพื้นฐานด้วย SVG

    ตามสเป็คเราสามารถวาดรูปทรงพื้นฐานบางอย่างเช่น สี่เหลี่ยมผืนผ้า, วงกลม, เส้น, วงรี, รูปหลายเหลี่ยมและรูปหลายเหลี่ยม ด้วย SVG และเพื่อให้เบราว์เซอร์สามารถแสดงผลกราฟิก SVG องค์ประกอบกราฟิกเหล่านั้นทั้งหมดจะต้องถูกแทรกไว้ภายใน ... แท็ก ลองดูตัวอย่างด้านล่างสำหรับรายละเอียดเพิ่มเติม:

    เส้น

    วาด เส้น ใน SVG เราสามารถใช้ ธาตุ. องค์ประกอบนี้ใช้ในการวาดเส้นตรงหนึ่งเส้นดังนั้นมันจะมีเพียงสองจุดเท่านั้น, เริ่มต้น และ ปลาย.

        

    ดังที่คุณเห็นด้านบนพิกัดจุดเริ่มต้นของเส้นจะแสดงด้วยสองแอตทริบิวต์แรก x1 และ x2, ในขณะที่พิกัดจุดสิ้นสุดของบรรทัดแสดงด้วย y1 และ y2.

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

     

    ในที่สุดมันก็ทำเช่นเดียวกัน.

    • ดูการสาธิต “เส้น”

    เส้น

    มันเกือบจะคล้ายกับ , แต่ด้วย องค์ประกอบที่เราสามารถวาดหลายบรรทัดแทนที่จะเป็นหนึ่งเดียว นี่คือตัวอย่าง:

        

    องค์ประกอบมี จุด คุณลักษณะที่เก็บพิกัดทั้งหมดที่เกิดขึ้นกับเส้น.

    • ดูการสาธิต “เส้น”

    สี่เหลี่ยมผืนผ้า

    การวาดรูปสี่เหลี่ยมผืนผ้าก็ง่ายเช่นกัน ธาตุ. เราจะต้องระบุความกว้างและความสูงเช่น:

        

    • ดูการสาธิต “สี่เหลี่ยมผืนผ้า”

    วงกลม

    เรายังสามารถวาดวงกลมด้วย ธาตุ. ในตัวอย่างต่อไปนี้เราจะสร้างวงกลมด้วย 100 รัศมีที่กำหนดด้วย R แอตทริบิวต์:

        

    สองแอตทริบิวต์แรก, cx และ cy กำลังกำหนดพิกัดศูนย์กลางของวงกลม ในตัวอย่างข้างต้นเราได้ตั้งค่า 102 ทั้งสำหรับ x และ Y ประสานงานหากไม่ได้ระบุคุณลักษณะเหล่านี้, 0 จะถูกนำมาเป็นค่าเริ่มต้น.

    • ดูการสาธิต “วงกลม”

    วงรี

    เราสามารถวาดวงรีด้วย . มันค่อนข้างคล้ายกับวงกลม แต่คราวนี้เราสามารถควบคุมมันได้โดยเฉพาะ x รัศมีเส้นและ Y เส้นรัศมีด้วย RX และ Ry แอตทริบิวต์;

        

    • ดูการสาธิต “วงรี”

    รูปหลายเหลี่ยม

    กับ องค์ประกอบเราสามารถวาดรูปร่างหลาย ๆ ด้านเช่นสามเหลี่ยมหกเหลี่ยมและแม้แต่สี่เหลี่ยมผืนผ้า นี่คือตัวอย่าง:

        

    • ดูการสาธิต “รูปหลายเหลี่ยม”

    การใช้ Vector Graphic Editor

    อย่างที่คุณเห็นการวาดวัตถุอย่างง่ายด้วย SVG ใน HTML นั้นค่อนข้างง่าย อย่างไรก็ตามเมื่อวัตถุมีความซับซ้อนมากขึ้นการฝึกฝนนั้นก็ไม่เหมาะอีกต่อไปและจะทำให้คุณปวดหัว.

    โชคดีที่เราได้กล่าวถึงข้างต้นเราสามารถใช้โปรแกรมแก้ไขกราฟิกแบบเวกเตอร์เช่น Adobe Illustrator หรือ Inkscape เพื่อทำงาน หากคุณคุ้นเคยกับซอฟต์แวร์เหล่านี้จะเป็นการง่ายกว่ามากในการวาดวัตถุด้วย GUI ของพวกเขาแทนที่จะเขียนรหัสกราฟิกด้วยตัวคุณเองในแท็ก HTML.

    หากคุณกำลังทำงานกับ Inkscape, คุณสามารถบันทึกกราฟิกแบบเวกเตอร์ของคุณเป็น SVG ธรรมดาแล้วเปิดในโปรแกรมแก้ไขข้อความ ตอนนี้คุณควรหารหัส SVG ในไฟล์ คัดลอกรหัสทั้งหมดและวางไว้ในเอกสาร HTML ของคุณ.

    หรือคุณสามารถฝัง .SVG ไฟล์ผ่านหนึ่งในองค์ประกอบเหล่านี้ ฝัง, iframe และ วัตถุ, เช่น;

      

    ผลลัพธ์จะเหมือนกันในที่สุด.

    ในตัวอย่างนี้ฉันใช้ Apple iPod เครื่องนี้จาก OpenClipArt.org.

    • ดูการสาธิต “iPod”

    รองรับเบราว์เซอร์

    เกี่ยวกับการสนับสนุนเบราว์เซอร์ SVG ได้รับการสนับสนุนเป็นอย่างดีในเบราว์เซอร์หลักทั้งหมดยกเว้นใน IE8 และก่อนหน้านี้ แต่เรื่องนี้สามารถแก้ไขได้ด้วยไลบรารี JavaScript นี้ชื่อ Raphael.js เพื่อให้ง่ายขึ้นเราจะใช้เครื่องมือนี้ ReadySetRaphael.com เพื่อแปลงรหัส SVG ของเราเป็นรูปแบบที่รองรับ Raphael นี่คือวิธี.

    ก่อนอื่นดาวน์โหลดและรวมถึง Raphaël.js ห้องสมุดไปยังเอกสาร HTML ของคุณ จากนั้นอัปโหลด .SVG ไฟล์ไปยังเว็บไซต์คัดลอกและวางรหัสที่สร้างขึ้นภายในโหลดต่อไปนี้ ฟังก์ชัน;

     window.onload = function () // the รหัส Raphael ไปที่นี่ 

    ข้างใน ร่างกาย แท็กใส่ต่อไปนี้ div กับ RSR แอตทริบิวต์ id;

     

    เพียงเท่านี้คุณก็ทำเสร็จแล้ว ลองดูตัวอย่างจากลิงค์ด้านล่าง.

    • ดูการสาธิต “ราฟาเอล”

    ความคิดสุดท้าย

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

    และเช่นเคยหากคุณเป็นคนที่ชอบผจญภัยที่นี่เราได้เพิ่มการอ้างอิงและการสนทนาเพิ่มเติมเพื่อเจาะลึกลงไปในเรื่องนี้.

    • แนะนำโรงเรียน SVG - W3
    • ความละเอียดอิสระกับ SVG - นิตยสารยอดเยี่ยม
    • ทำไมคุณไม่ใช้ SVG - NetTuts

    ขอบคุณสำหรับการอ่านและเราหวังว่าคุณจะสนุกกับโพสต์นี้.

    • ดูการสาธิต
    • แหล่งดาวน์โหลด