ตัวปรับแต่ง SVG

ลบ metadata XML ตัดคอมเมนต์ออก และย่อช่องว่างเพื่อให้งานศิลป์ SVG โหลดเร็วขึ้น

กลับไปที่เครื่องมือ

กำลังปรับเวกเตอร์ให้เหมาะสม...

วางไอคอน SVG ภาพประกอบ หรือไฟล์ zip ที่เก็บไลบรารี

ทุกอย่างอยู่ฝั่งไคลเอนต์จนกว่าคุณจะอนุมัติการทำความสะอาด และการแสดงตัวอย่างจะเน้นการเปลี่ยนแปลง path

ลบคอมเมนต์ + เมทาดาทาอย่างปลอดภัย รองรับไฟล์ SVGZ + ZIP

คิว SVG

  • เพิ่มไฟล์ SVG เพื่อดูตัวอย่างขนาดและสถานะก่อนย่อขนาด

ตัวเลือกการทำความสะอาด

สวิตช์ทำความสะอาดเวกเตอร์

เราไม่แตะต้อง viewBox, IDs หรือ gradients ดังนั้นแอนิเมชันและ CSS hooks ของคุณจะยังคงอยู่ครบถ้วน

วางไฟล์เพื่อดูตัวอย่างสด

ความคืบหน้าชุด

ไฟล์ต้นฉบับที่อัปโหลดจะหายไปทันทีหลังจากส่งมอบเวกเตอร์ที่ปรับแต่งแล้ว

SVG ที่ปรับแต่งแล้วจะปรากฏที่นี่พร้อมขนาดที่ลดลงและปุ่มดาวน์โหลด

<p>เครื่องมือ <strong>SVG optimizer</strong> นี้จะช่วยลบเนื้อหาที่ไม่จำเป็นออกจากไฟล์ SVG ที่ระดับข้อความค่ะ มันจะลบ XML comments, XML declaration ที่เป็นตัวเลือก และบล็อก metadata ทั้งหมด แล้วทำให้ whitespace ระหว่าง tags หดตัวลง เครื่องหมายที่มองเห็นได้, attributes, paths และพฤติกรรมการแสดงผลจะไม่เปลี่ยนแปลงค่ะ รองรับได้สูงสุด 50 ไฟล์ต่อครั้ง, 40 MB ต่อไฟล์ ปกติแล้ว SVG ที่เขียนด้วยมือหรือส่งออกจากเครื่องมือออกแบบจะลดขนาดได้ 20 ถึง 60 เปอร์เซ็นต์โดยไม่มีความแตกต่างในภาพค่ะ</p> <h2>เครื่องมือ Optimizer ลบอะไรออก</h2> <p>มีตัวเลือกอิสระสามตัว แต่ละตัวสามารถใช้ได้อย่างปลอดภัยกับ SVG ที่ถูกต้องทั้งหมดค่ะ</p> <ul> <li><strong>ลบ XML comments:</strong> ลบบล็อก <code>&lt;!-- ... --&gt;</code> ทั้งหมด Comments เป็นเรื่องปกติในการส่งออกจากเครื่องมือออกแบบ (Illustrator, Sketch, Figma ล้วนเพิ่ม comments เช่น "Generator: Sketch 96") แต่ renderer จะไม่สนใจเลยค่ะ</li> <li><strong>ลบ metadata:</strong> ลบบล็อก <code>&lt;metadata&gt;...&lt;/metadata&gt;</code> ทั้งหมด (ซึ่งมักจะมี RDF, ข้อมูลใบอนุญาต หรือข้อมูลการติดตามของเครื่องมือออกแบบ) และ <code>&lt;?xml ... ?&gt;</code> declaration ที่เป็นตัวเลือกที่ด้านบนของไฟล์ ทั้งสองอย่างไม่มองเห็นได้ในผลลัพธ์ที่แสดงผล และมักจะเพิ่มขนาด 100 ถึง 500 ไบต์ต่อไฟล์ค่ะ</li> <li><strong>ยุบ whitespace:</strong> ลบ whitespace ระหว่าง tags (การเยื้องที่ทำให้ SVG อ่านได้ง่ายสำหรับมนุษย์) และยุบช่องว่างหลายช่องให้เหลือช่องเดียว เครื่องมือออกแบบส่วนใหญ่ส่งออก SVG ที่เยื้องไว้สำหรับการแสดงในตัวแก้ไข แต่ renderer ไม่สนใจค่ะ</li> </ul> <h2>เครื่องมือ Optimizer ไม่สัมผัส</h2> <p>optimizer นี้ออกแบบให้ปลอดภัยโดยจงใจค่ะ มันแก้ไขเฉพาะข้อความที่ห่อหุ้มเนื้อหา SVG จริงเท่านั้น ไม่สัมผัส SVG เองค่ะ โดยเฉพาะอย่างยิ่ง:</p> <ul> <li><strong>Path data ไม่เปลี่ยนแปลง</strong> พิกัด path, ความแม่นยำทศนิยม และคำสั่ง curve จะเก็บไว้เหมือนที่ต้นฉบับเขียนไว้ค่ะ พิกัดที่มี 14 ตำแหน่งทศนิยมจะยังคงเป็น 14 ตำแหน่งทศนิยมค่ะ</li> <li><strong>Attributes เก็บไว้อย่างเป็นตัวอักษร</strong> ไม่มีการลบรายการซ้ำ, ไม่มีการทำให้ง่าย, ไม่มีการย่อค่าสี, ไม่มีการรวม transformsค่ะ</li> <li><strong>ไม่มีการลบ element</strong> Element ที่มองไม่เห็น, defs ที่ไม่ใช้ และรูปร่างที่มีขนาดเป็นศูนย์จะถูกเก็บไว้ค่ะ</li> <li><strong>ไม่มีการคำนวณ viewBox หรือมิติใหม่ค่ะ</strong></li> </ul> <p>ประโยชน์คือความปลอดภัย: ผลลัพธ์จะแสดงผลเหมือนกับต้นฉบับในทุก browser ค่ะ ข้อแลกเปลี่ยนคือคุณไม่สามารถบีบไบต์สุดท้ายออกจาก SVG ที่ซับซ้อนได้เหมือนที่ optimizer เต็มรูปแบบ (SVGO ที่เปิดใช้งาน plugins ทั้งหมด) ทำได้ค่ะ สำหรับ SVG ที่เขียนด้วยมือหรือส่งออกจากเครื่องมือออกแบบส่วนใหญ่ การประหยัดจากการลบ comment, metadata และ whitespace เพียงอย่างเดียวก็ 20 ถึง 60 เปอร์เซ็นต์ ซึ่งครอบคลุมกรณีทั่วไปค่ะ หากคุณต้องการ optimization ที่ลึกกว่า (path simplification, decimal rounding, color shortening) ให้ใช้เครื่องมือเฉพาะเช่น SVGO ภายหลังค่ะ</p> <h2>เมื่อ SVG Optimization สำคัญ</h2> <ul> <li><strong>Icon sets ที่ส่งมาบนเว็บ:</strong> UI ทั่วไปใช้ SVG icons หลายสิบตัว การ optimize แต่ละตัวก่อน deploy จะสะสมในทุก page load ค่ะ</li> <li><strong>Inline SVGs ใน HTML:</strong> เมื่อ SVG ฝังตัวตรงในแหล่งที่มาของหน้า (แทนที่จะโหลดเป็นไฟล์ภายนอก) ทุกไบต์ของ bloat จะเพิ่มเข้า HTML payload ที่บล็อก first paint ค่ะ</li> <li><strong>SVG illustrations บน landing pages:</strong> hero illustrations ที่ส่งออกจาก Illustrator หรือ Figma มักจะมี overhead ที่มองไม่เห็น 30 ถึง 50 เปอร์เซ็นต์ค่ะ</li> <li><strong>Logos และ favicons:</strong> brand SVG ถูกโหลดในทุก page ของเว็บไซต์ค่ะ การตัดให้เล็กลงครั้งเดียวจะให้ประหยัดถาวรค่ะ</li> <li><strong>SVG assets ใน mobile apps:</strong> ขนาด app bundle มีความสำคัญ SVGs ที่สะอาดจะส่งมาในแพ็กเกจที่เล็กกว่าค่ะ</li> </ul> <h2>หมายเหตุเกี่ยวกับ Workflow</h2> <p>ทำการ optimize เป็นขั้นตอนสุดท้ายก่อน deploy หรือ commit ค่ะ ผลลัพธ์ยังคงเป็น SVG ที่แก้ไขได้อย่างสมบูรณ์ (optimizer เพียงลบเนื้อหาที่มองไม่เห็น) แต่ไม่เป็นมิตรกับมนุษย์อีกต่อไปเนื่องจาก whitespace ที่ยุบตัว ให้เก็บไฟล์ต้นฉบับของคุณในรูปแบบเยื้องดั้งเดิมเพื่อให้คุณสามารถแก้ไขต่อในเครื่องมือออกแบบของคุณหรือแก้ไข markup ด้วยมือในภายหลังได้ค่ะ สำหรับไฟล์ที่การประหยัดของ optimizer ไม่เพียงพอ (illustrations ที่หนักพร้อมพิกัด path จำนวนมาก) ให้พิจารณาเรียกใช้ผลลัพธ์ผ่าน path-aware optimizer เช่น SVGO ก่อนเผยแพร่ค่ะ</p> <p>SVG เป็น vector format และแสดงผลได้อย่างคมชัดในขนาดใดก็ได้ แต่หากคุณต้องการผลลัพธ์ raster สำหรับบริบทที่ไม่รองรับ SVG (email clients เก่า, print pipelines บางตัว) <a href="/en/image-converter">image converter</a> จะแสดง SVG เป็น PNG, JPG หรือ WebP ที่ pixel dimensions ใดก็ได้ค่ะ เพื่อรวม SVGs ชุดหนึ่งเข้าในเอกสารที่แชร์ได้เดียว <a href="/en/image-to-pdf">image-to-PDF converter</a> จะแพ็ค SVGs เข้าไปใน PDF หลายหน้าค่ะ</p> <h2>Batch Optimization และ Privacy</h2> <p>การ optimize แต่ละครั้งทำงานใน memory บนเซิร์ฟเวอร์ค่ะ ไฟล์จะ stream ไปยัง optimizer endpoint, ประมวลผลเป็นข้อความ (SVG เองคือข้อความ ไม่ใช่ binary เหมือน JPG หรือ PNG) และกลับมาใน JSON response ค่ะ ไม่มีอะไรเขียนไปยัง disk, indexed, logged หรือ cached ค่ะ Buffer จะปล่อยออกมาทันทีที่ response ถูกส่งไปค่ะ สูงสุด 50 ไฟล์ต่อ batch, 40 MB ต่อไฟล์ค่ะ ZIP archives จะถูกแตกออกฝั่ง server และแต่ละ entry จะนับรวมกับ 50-file limit เดียวกันค่ะ ตัวเลือกสามตัวเดียวกันนี้ใช้กับไฟล์ทุกไฟล์ใน batch ค่ะ ผลลัพธ์จะถูกส่งคืนแยกกันหรือ repackaged เป็น single download ZIP สำหรับ batches ที่มากกว่าหนึ่งไฟล์ค่ะ</p> <h2 class="tools-section-title">คำถามที่พบบ่อย</h2> <div class="collapse-group collapse-group-narrow"> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_1"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">SVG ของฉันจะเล็กลงแค่ไหนหลังจากการ optimize</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>สำหรับ SVG ที่เขียนด้วยมือหรือส่งออกจากเครื่องมือออกแบบส่วนใหญ่ คาดหวังการลดขนาด 20 ถึง 60 เปอร์เซ็นต์ค่ะ การประหยัดที่แน่นอนขึ้นอยู่กับวิธีการสร้างต้นฉบับค่ะ Illustrator และ Sketch exports ที่มี embedded metadata, comments และ indented markup จะประหยัดมากที่สุด (มักจะสูงกว่า 40 เปอร์เซ็นต์) ค่ะ SVGs ที่สะอาดแล้ว (hand-written หรือ pre-cleaned โดยเครื่องมืออื่น) จะประหยัดน้อยกว่าค่ะ การประหยัดมาจาก comments, metadata block, XML declaration และ whitespace ระหว่าง tags ค่ะ markup ที่มองเห็นได้จริงจะไม่เปลี่ยนแปลงค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_2"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">SVG ที่ optimize แล้วจะแสดงผลเหมือนต้นฉบับหรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ใช่ค่ะ optimizer เพียงลบ XML comments, metadata block, XML declaration และ whitespace ระหว่าง tags ค่ะ ไม่มีสิ่งใดที่ส่งผลต่อการแสดงผลค่ะ Path coordinates, attributes, fills, strokes, transforms, viewBox, gradients, filters และ animations ทั้งหมดผ่านมาโดยไม่เปลี่ยนแปลงค่ะ ผลลัพธ์จะให้ผลลัพธ์ที่เหมือนกันทุกประการในทุก browser ค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_3"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">Optimizer ทำให้พิกัด path ง่ายขึ้นหรือปัดเศษความแม่นยำทศนิยมหรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ไม่ค่ะ Path data ถูกเก็บไว้อย่างเป็นตัวอักษร พิกัดที่เขียนเป็น 47.3892756432198 จะยังคงมี 13 ตำแหน่งทศนิยมในผลลัพธ์ค่ะ optimizer ออกแบบให้ปลอดภัยโดยจงใจ มันไม่สัมผัส SVG geometry เลยค่ะ สิ่งนี้ทำให้ผลลัพธ์ปลอดภัยแน่นอนและมองเห็นได้เหมือนกับต้นฉบับค่ะ สำหรับ optimization ที่ลึกกว่าซึ่งรวมถึง decimal rounding และ path simplification ให้เรียกใช้ไฟล์ที่ optimize แล้วผ่านเครื่องมือเฉพาะเช่น SVGO ภายหลังค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_4"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">ปลอดภัยหรือไม่ที่จะลบ XML declaration ที่ด้านบนของไฟล์</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>สำหรับ SVG ที่ฝังตัวแบบ inline ใน HTML หรือ referenced ผ่าน img/object tags ใน modern browsers ใช่ค่ะ XML declaration (<code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;</code>) เป็นตัวเลือกและมักจะละเว้นจาก inline SVG ค่ะ สำหรับไฟล์ SVG แบบ standalone ที่ให้บริการด้วย application/svg+xml MIME type declaration เป็นสิ่งที่แนะนำโดยเทคนิคโดย XML spec แต่ไม่มี modern browser ใดที่ต้องการค่ะ หากคุณมี consumer ที่ต้องการเฉพาะที่ (print workflow, XML parser เก่า) ให้ปิด metadata-removal option เพื่อเก็บ declaration ไว้ค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_5"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">ฉันสามารถแก้ไข SVG ที่ optimize แล้วใน Illustrator หรือ Figma ได้หรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ใช่ค่ะ ไฟล์ที่ optimize แล้วยังคง SVG ที่ถูกต้องอย่างสมบูรณ์ที่เปิดได้ในตัวแก้ไขเวกเตอร์ใด ๆ (Illustrator, Inkscape, Figma, Sketch เป็นต้น) ค่ะ อย่างไรก็ตาม whitespace ที่ยุบตัวทำให้ต้นฉบับอ่านได้น้อยลงอย่างเห็นได้ชัดหากคุณเปิดมันในตัวแก้ไขข้อความเพื่อ tweaks ด้วยมือค่ะ Workflow ที่แนะนำคือให้เก็บเวอร์ชันเยื้องดั้งเดิมเป็นแหล่งที่มาของความจริง และเพียงส่งเวอร์ชัน optimize แล้วไปยังการผลิตค่ะ เมื่อคุณต้องการทำการเปลี่ยนแปลง ให้แก้ไขต้นฉบับและ re-run optimizer ค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_6"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">Optimizer จะทำลาย SVG animations หรือ interactivity ของฉันหรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ไม่ค่ะ SMIL animations (animate, animateTransform, animateMotion), CSS classes และ inline styles, JavaScript hooks ผ่าน IDs และ click/hover interaction targets ทั้งหมดอยู่ใน markup ที่มองเห็นได้ ซึ่ง optimizer ไม่สัมผัสค่ะ เพียง comments, metadata block, XML declaration และ inter-tag whitespace เท่านั้นที่ถูกลบค่ะ Animated logos, interactive SVG diagrams และ embedded CSS animations ยังคงทำงานเหมือนเดิมค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_7"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">สิ่งนี้แตกต่างจาก SVGO อย่างไร</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>SVGO เป็น deep optimizer ที่เข้าใจ SVG ทางความหมาย มันสามารถทำให้ paths ง่ายขึ้น, ปัดเศษพิกัดทศนิยม, ลบรายการ attributes, รวม sibling elements, ลบ unused defs, ย่อค่าสี และอื่น ๆ อีกมากมายค่ะ เครื่องมือนี้เป็น lightweight text-level cleaner ที่เพียงลบ comments, metadata และ whitespace ค่ะ ความแตกต่างคือความปลอดภัย: เครื่องมือนี้จะไม่ทำลาย SVG เลยเพราะมันไม่สัมผัส geometry หรือ attributes ค่ะ SVGO บางครั้งอาจนำเสนอความแตกต่างในการแสดงผลแบบละเอียดเมื่อ aggressive plugins ตัวใดตัวหนึ่งของมันทำงานค่ะ สำหรับ use cases ส่วนใหญ่ lightweight cleanup ที่นี่ก็เพียงพอค่ะ สำหรับ minimal-byte optimization ให้เรียกใช้ SVGO ภายหลังค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_8"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">ฉันสามารถ optimize batch ของไฟล์ SVG ได้พร้อมกันหรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ใช่ค่ะ สูงสุด 50 ไฟล์ SVG ต่อ batch, 40 MB ต่อไฟล์ค่ะ ตัวเลือกสามตัวเดียวกัน (remove comments, remove metadata, collapse whitespace) ใช้กับไฟล์ทุกไฟล์ใน batch ซึ่งเป็นสิ่งที่คุณต้องการเมื่อ optimize icon set ทั้งหมดหรือโฟลเดอร์ของการส่งออกจากเครื่องมือออกแบบค่ะ ZIP archives จะถูกแตกออกฝั่ง server และแต่ละ entry จะนับรวมกับ 50-file limit เดียวกันค่ะ ผลลัพธ์จะถูกส่งคืนแยกกันหรือ repackaged เป็น single download ZIP ค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_9"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">ไฟล์ที่อัปโหลดถูกเก็บไว้ที่ใดใจหรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ไม่ค่ะ ไฟล์ถูกประมวลผลทั้งหมดเป็นข้อความใน memory บนเซิร์ฟเวอร์ค่ะ ไม่มีอะไรเขียนไปยัง disk, indexed, logged หรือ cached ค่ะ Buffer จะปล่อยออกมาทันทีที่ response ถูกส่งไปค่ะ เครื่องมือนี้ไม่ต้องลงทะเบียนและไม่ติดตามไฟล์ SVG ที่คุณได้ optimize ค่ะ</p> </div> </div> </div> <div class="collapse-container collapse-faq" data-collapse-accordion data-collapse-group="seo-faq" data-collapse-no-save data-collapse-key="seo_faq_10"> <button class="collapse-header" type="button"> <div class="collapse-header-content"> <i class="fas fa-lightbulb collapse-header-icon" aria-hidden="true"></i> <span class="collapse-header-title">SVG optimizer ฟรีหรือไม่และต้องลงทะเบียนหรือไม่</span> </div> <i class="fas fa-chevron-down collapse-chevron" aria-hidden="true"></i> </button> <div class="collapse-content"> <div class="collapse-content-inner"> <p>ฟรีโดยไม่ต้องลงทะเบียนค่ะ ไม่มี rate limits, ไม่มี watermarks ที่เพิ่มเข้าไปในผลลัพธ์, ไม่มี premium tier ที่มี extra features ค่ะ สิ่งเดียวกันนี้ใช้กับเครื่องมือ imgdeal ทั้งหมด รวมถึง <a href="/en/image-converter">format conversion</a>, <a href="/en/image-compressor">compression</a>, <a href="/en/image-resizer">resizing</a> และ <a href="/en/image-cropper">cropping</a> ค่ะ</p> </div> </div> </div> </div>