เครื่องมือสร้างรูปทรง SVG
ระบบออกแบบส่วนใหญ่ต้องการชุดรูปทรงเพียงไม่กี่ชนิดเท่านั้น ได้แก่ วงกลมสำหรับอวาตาร จานที่ใช้แสดงสถานะ สี่เหลี่ยมสามเหลี่ยมสำหรับไอคอนเกม ดาวสำหรับคะแนนประเมิน และหกเหลี่ยมสำหรับเครื่องหมายประจำตัว เครื่องสร้างรูปทรงนี้สามารถสร้างรูปทรงมาตรฐานทั้งเจ็ดชนิด (วงกลม จาน สี่เหลี่ยมสามเหลี่ยม ดาว หกเหลี่ยม ห้าเหลี่ยม และหัวใจ) ด้วยพารามิเตอร์ทางเรขาคณิตที่ถูกกำหนดอย่างแม่นยำ, โดยจุดของดาวอยู่ที่รัศมีภายในที่เหมาะสม หกเหลี่ยมและห้าเหลี่ยมวางแนวปลายชี้ขึ้น และหัวใจอยู่ตรงกลางพื้นผิวการแสดงผล, และให้ผลลัพธ์ในรูปแบบ <svg> พร้อมใช้งานสำหรับการวางผิง
วิธีสร้างรูปทรง
-
1
เลือกรูปทรง
วงกลม รูปสี่เหลี่ยม รูปสามเหลี่ยม ดาว รูปห้าเหลี่ยม รูปหกเหลี่ยม หรือรูปหัวใจ
-
2
ขนาดของเซตและความหนาของเส้น
ขนาดของแคนเวสในหน่วยพิกเซล ความกว้างของเส้นกราฟิกควบคุมความหนาของเส้นรอบรูป; หากตั้งเป็น 0 จะไม่มีเส้นรอบรูป
-
3
เลือกสีสำหรับการเติมและเส้น
สีเฮกซ่ารูปใดๆ ก็ได้ ให้ตั้งค่าการเติมสีเป็น `none` สำหรับรูปร่างที่เป็นโพรง
-
4
สำหรับดาว ให้ตั้งค่าจุด
สตาร์พริมิตีรองรับจำนวนจุดได้ตั้งแต่ 3 ถึง 12 จุด โดยจำนวน 5 จุดถือเป็นแบบคลาสสิก ส่วน 7 จุดจะให้ลักษณะคล้ายเครื่องหมายนายอำเภอ
-
5
คัดลอกไฟล์ SVG
Markup ใช้โพรไมทีฟ SVG ที่ตรงกัน (`<circle>`, `<rect>`, `<polygon>`, `<path>`) เพื่อลดปริมาณไบต์ให้น้อยที่สุด
รูปร่างและเรขาคณิตในภาพรวม
| รูปทรง | โพรติทีฟ SVG | พารามิเตอร์ที่สำคัญ |
|---|---|---|
| วงกลม | <circle> |
รัศมี, การเติมสี, เส้นวาด |
| รูปสี่เหลี่ยม | <rect> |
ความกว้าง, ความสูง, ความยาวเส้น (ไม่มีค่า rx ในที่นี้) |
| สามเหลี่ยม | <polygon> (3 จุด) |
เรขาคณิตสามเหลี่ยมด้านเท่ากัน มีปลายชี้ขึ้น |
| ดาว | <polygon> (N × 2) |
จุด (3–12) |
| เพนตากอน | <polygon> (5 คะแนน) |
จัดเรียงในแนวที่ชี้ขึ้น |
| รูปหกเหลี่ยม | <polygon> (6 จุด) |
จัดเรียงให้ปลายตรงขึ้น (หมุน 30° เพื่อให้พื้นผิวเรียบ) |
| หัวใจ | <path> แบบเบซิเยร์ส |
จัดวางอยู่ตรงกลางผืนผ้าใบ และมีลักษณะสมมาตร |
ตัวอย่างผลลัพธ์: ดาวห้าดวง
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 200 200">
<polygon points="100,2 118.65,73.57 191.98,73.57 132.66,117.86 151.31,189.43 100,145.14 48.69,189.43 67.34,117.86 8.02,73.57 81.35,73.57"
fill="#6366f1" stroke="#312e81" stroke-width="2"/>
</svg>
รัศมีด้านในถูกกำหนดไว้ที่ 40% ของรัศมีด้านนอก ซึ่งสอดคล้องกับสัดส่วนแบบคลาสสิกที่ใช้ในดาวธงและดาวถ้วย
กรณีการใช้งาน
- แอวาตารและหน้ากาก, ใช้วงกลมเป็นเส้นทางคลิปสำหรับรูปโปรไฟล์
- ชิปสถานะ, มีรูปร่างสี่เหลี่ยม (กลมโดยใช้ CSS border-radius หรือ rx เวอร์ชันใหม่กว่า) เพื่อใช้เป็นตัวบ่งชี้สถานะอย่างง่าย
- อินเทอร์เฟซการให้คะแนน, แสดงด้วยดาวที่เต็ม ครึ่งเต็ม และเส้นกรอบ ตามมาตราส่วน 0–5
- เครื่องหมายและตราประจำ, รูปหกเหลี่ยมที่มีข้อความหรือสัญลักษณ์อยู่ด้านใน
- ปุ่มแสดงความรู้สึก, หัวใจสำหรับกด “ชอบ”, รายการความปรารถนา และการบันทึก
ทำไมตัวพื้นฐานของ SVG จึงใช้เส้นทางทั่วไป
ใช้ <circle> หรือ <polygon> แทน <path> ซึ่งเป็นรุ่นที่เทียบเท่ากัน
- มีขนาดเล็กกว่าในหน่วยไบต์สำหรับรูปทรงทั่วไป (10–30 ไบต์)
- การสร้างเอเนมที่ง่ายขึ้น, แอตทริบิวต์อย่าง
r,cx,cyและpointsสามารถใช้ในการสร้างเอเนมแบบ Tween โดยตรงผ่าน CSS หรือ GSAP – อ่านได้ชัดเจนยิ่งขึ้นในส่วนของข้อมูลตรวจสอบและค่าความแตกต่าง (Diff)
สำหรับรูปทรงที่ซับซ้อน เช่น วงกลมขนาดเล็ก ไอคอน หรือโลโก้ เส้นทางจะเป็นตัวเลือกที่เหมาะสมกว่า เนื่องจากสามารถแสดงเส้นโค้งและส่วนของเส้นที่ประกอบกันได้ภายในองค์ประกอบเดียว
ความสามารถในการเข้าถึง
SVG ทั้งหมดที่สร้างขึ้นจะมีลักษณะเป็นเพียงองค์ประกอบตกแต่งโดยค่าเริ่มต้น หากรูปทรงมีความหมายเฉพาะ (วงกลมสีแดง = ข้อผิดพลาด, เครื่องหมายกากบาทสีเขียว = สำเร็จ) ให้วางรูปทรงดังกล่าวไว้ภายในโครงสร้างพ่อที่มี role="img" และ aria-label หรือเพิ่มลูกโครงสร้าง <title> เข้าไปภายใน SVG
คำถามที่พบบ่อย
รัศมีด้านในเป็นตัวกำหนดระดับความหนาของแต่ละแขน โดยเครื่องสร้างนี้ใช้อัตราส่วนระหว่างรัศมีด้านในต่อรัศมีด้านนอกเท่ากับ 40% เพื่อให้ได้ลักษณะที่สมดุล หากต้องการดาวที่คมชัดกว่า ให้ลดอัตราส่วนในไฟล์ SVG ที่สร้างออก (เช่น เหลือ 25%) ส่วนหากต้องการดาวที่มีลักษณะเรียบและคล้ายก้อนเลโก้ ให้เพิ่มอัตราส่วนเป็น 60%
เครื่องกำเนิดนี้จะสร้างไฟล์รูปแบบ <rect> โดยตรง ให้เพิ่ม rx="8" ry="8" เข้าไปในไฟล์ rect เพื่อทำให้มุมโค้งกลมขึ้น หรือใช้คุณสมบัติ CSS border-radius หากต้องการห่อไฟล์ SVG
ใช่ ให้ห่อไฟล์ SVG เข้าไปในไฟล์พ่อ (parent file) ที่มีชื่อ transform: rotate(30deg) หรือแก้ไขเส้นทางการวาด โดยปรับมุมเริ่มต้นเพิ่มขึ้น 30° โดยค่าเริ่มต้นของเครื่องสร้างจะอยู่ที่แนวตั้ง เพราะสอดคล้องกับการออกแบบบัตรประจำตัวส่วนใหญ่
ใช่ SVG ใช้ขอบเขตภาพ (viewbox) ที่ถูกต้อง พิกัดแบบพิกเซลเต็มหน่วย และรูปแบบการเขียนโค้ดที่มีความยาวน้อยที่สุด คุณสามารถนำ SVG เข้าไปใช้งานใน React, Vue, Astro, อีเมล หรือ HTML ธรรมดาได้โดยไม่ต้องปรับเปลี่ยนใดๆ
ไม่ พารามิเตอร์รูปร่างถูกใช้ในการแสดงผลไฟล์ SVG สำหรับคำขอในขณะนี้ และจะถูกทิ้งไป
เครื่องมือที่เกี่ยวข้อง
ตัวเลือกสี Material Design
สำรวจพาเลตสีของ Material Design คัดลอกเฉดสีใดก็ได้ (ตั้งแต่ 50 ถึง A700) ในรูปแบบ HEX, RGB หรือ HSL เพียงแตะครั้งเดียว
โปรแกรมแปลงรูปแบบภาพ
แปลงรูปภาพเป็น JPG, PNG หรือ WebP ได้ทันทีในเบราว์เซอร์ พร้อมควบคุมคุณภาพสำหรับรูปแบบบีบอัดและรักษาความโปร่งใสใน PNG และ WebP
เครื่องสร้างกระดาษเส้นบรรทัด
สร้างกระดาษเส้นบรรทัดพร้อมพิมพ์ได้ฟรี เลือกเส้นแบบวิทยาลัย กว้าง หรือแคบ ตั้งระยะห่างบรรทัดเป็นมิลลิเมตร ขนาดกระดาษ และเส้นขอบ แล้วพิมพ์หรือดาวน์โหลดเป็น SVG
เครื่องมือแบ่งกริดรูปภาพ Instagram
แบ่งรูปภาพขนาดใหญ่ให้เป็นกริด Instagram ขนาด 3×3 หรือกี่แถวก็ได้ แต่ละแผ่นภาพมีหมายเลขกำกับ จึงอัปโหลดแบบย้อนลำดับได้ง่าย
ตัวแปลง JPG เป็น Word
แปลงภาพถ่าย JPG หรือภาพหน้าจอของข้อความเป็นเอกสาร Word ที่แก้ไขได้ เครื่องมืออ่านคำด้วย OCR แล้วจัดวางเพื่อให้คุณเขียนใหม่ จัดรูปแบบ และนำกลับมาใช้ได้
เครื่องแปลงค่าจาก Pantone เป็น HEX
แปลงสี Pantone PMS ให้เป็นค่า HEX, RGB และ CMYK ที่ใกล้เคียงที่สุด เพื่อให้สอดคล้องกันระหว่างการแสดงผลบนหน้าจอและการพิมพ์ โดยพร้อมดูตัวอย่างสีแบบสวัตช์
เครื่องมือนี้มีให้บริการในภาษาอื่น
- SVG形状ジェネレータ [JA]
- SVG-formgenerator [SV]
- SVG-vormgenerator [NL]
- مولد شكل SVG [AR]
- SVG 형태 생성기 [KO]
- Generator Bentuk SVG [ID]
- Gerador de Formas SVG [PT]
- SVG-Formgenerator [DE]
- Generador de Formas SVG [ES]
- Thiết lập Hình dạng SVG [VI]
- Générateur de formes SVG [FR]
- Generator kształtów SVG [PL]
- Генератор формы SVG [RU]
- SVG Şekil Oluşturucu [TR]
- SVG 形状生成器 [ZH]
- SVG Shape Generator [EN]
- Generatore di forme SVG [IT]