CLI : บรรทัดคำสั่ง

<รูป>

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

คุณสมบัติที่สำคัญ

  • 🚀 ระบบอัตโนมัติ - การประมวลผลสคริปต์ชุดข้อมูลหลายชุด

  • 🔗 บูรณาการ - ฝังอยู่ในเวิร์กโฟลว์และไปป์ไลน์ที่มีอยู่

  • 💻 การทำงานแบบไร้หัว - ทำงานโดยไม่มี GUI

  • 🌍 หลายภาษา - รองรับ 38 ภาษา

  • การประมวลผลแบบขนาน - ปรับขนาดตาม CPU ของคุณแบบไดนามิก (สูงสุด 16 คนแบบขนาน)

ความต้องการ

  • ข้อกำหนด - รายละเอียด -


  • ระบบปฏิบัติการ - Windows 10/11 (64 บิต) -

  • ความทรงจำ - RAM ขั้นต่ำ 8GB (แนะนำ 16GB) -

  • อินเตอร์เน็ต - จำเป็นสำหรับการเปิดใช้งานใบอนุญาต -

  • พื้นที่ดิสก์ - แตกต่างกันไปตามขนาดโครงการ -

{% คำใบ้สไตล์ = "คำเตือน" %}

ข้อกำหนดสิทธิ์การใช้งาน: CLI จำเป็นต้องสมัครสมาชิก Chloros+ แบบชำระเงิน แผนมาตรฐาน (ฟรี) ไม่มีการเข้าถึง CLI ไปที่ https://cloud.mapir.camera/pricingarrow-up-right เพื่ออัปเกรด

เริ่มต้นอย่างรวดเร็ว

การติดตั้ง

CLI จะรวมอยู่ในโปรแกรมติดตั้ง Chloros โดยอัตโนมัติ:

  1. ดาวน์โหลดและรัน Chloros Installer.exe

  2. กรอกวิซาร์ดการติดตั้งให้เสร็จสมบูรณ์

  3. CLI ติดตั้งไว้ที่: C:\Program Files\Chloros\resources\cli\chloros-cli.exe

circle-check

การตั้งค่าครั้งแรก

ก่อนที่จะใช้ CLI ให้เปิดใช้งานใบอนุญาต Chloros+ ของคุณ:

การใช้งานพื้นฐาน

ประมวลผลโฟลเดอร์ด้วยการตั้งค่าเริ่มต้น:

การอ้างอิงคำสั่ง

ไวยากรณ์ทั่วไป

คำสั่ง

process - ประมวลผลรูปภาพ

ประมวลผลภาพในโฟลเดอร์ที่มีการปรับเทียบ

ไวยากรณ์:

ตัวอย่าง:

ตัวเลือกคำสั่งกระบวนการ

  • ตัวเลือก - พิมพ์ - ค่าเริ่มต้น - คำอธิบาย -


  • <input-folder> - เส้นทาง - จำเป็น - โฟลเดอร์ที่มีรูปภาพหลายสเปกตรัม RAW/JPG -

  • -o, --output - เส้นทาง - เช่นเดียวกับอินพุต - โฟลเดอร์เอาท์พุตสำหรับรูปภาพที่ประมวลผล -

  • -n, --project-name - สตริง - สร้างอัตโนมัติ - ชื่อโปรเจ็กต์แบบกำหนดเอง -

  • --vignette - ตั้งค่าสถานะ - เปิดใช้งาน - เปิดใช้งานการแก้ไขบทความสั้น -

  • --no-vignette - ตั้งค่าสถานะ - - - ปิดใช้งานการแก้ไขบทความสั้น -

  • --reflectance - ตั้งค่าสถานะ - เปิดใช้งาน - เปิดใช้งานการปรับเทียบการสะท้อนแสง -

  • --no-reflectance - ตั้งค่าสถานะ - - - ปิดใช้งานการปรับเทียบการสะท้อนแสง -

  • --ppk - ตั้งค่าสถานะ - ปิดการใช้งาน - ใช้การแก้ไข PPK จากข้อมูลเซ็นเซอร์วัดแสง .daq -

  • --format - ทางเลือก - TIFF (16 บิต) - รูปแบบเอาต์พุต: TIFF (16-bit), TIFF (32-bit, Percent), PNG (8-bit), JPG (8-bit) -

  • --min-target-size - จำนวนเต็ม - อัตโนมัติ - ขนาดเป้าหมายขั้นต่ำเป็นพิกเซลสำหรับการตรวจจับแผงการปรับเทียบ -

  • --target-clustering - จำนวนเต็ม - อัตโนมัติ - เกณฑ์การจัดกลุ่มเป้าหมาย (0-100) -

  • --exposure-pin-1 - สตริง - ไม่มี - ล็อคค่าแสงสำหรับกล้องรุ่น (พิน 1) -

  • --exposure-pin-2 - สตริง - ไม่มี - ล็อคค่าแสงสำหรับกล้องรุ่น (พิน 2) -

  • --recal-interval - จำนวนเต็ม - อัตโนมัติ - ช่วงเวลาการปรับเทียบใหม่เป็นวินาที -

  • --timezone-offset - จำนวนเต็ม - 0 - ชดเชยเขตเวลาเป็นชั่วโมง -

login - ตรวจสอบบัญชี

เข้าสู่ระบบด้วยข้อมูลประจำตัว Chloros+ ของคุณเพื่อเปิดใช้งานการประมวลผล CLI

ไวยากรณ์:

ตัวอย่าง:

{% คำใบ้สไตล์ = "คำเตือน" %}

อักขระพิเศษ: ใช้เครื่องหมายคำพูดเดี่ยวรอบรหัสผ่านที่มีอักขระ เช่น $, ! หรือช่องว่าง

ผลลัพธ์:

<รูป>

logout - ล้างข้อมูลประจำตัว

ล้างข้อมูลประจำตัวที่เก็บไว้และออกจากระบบบัญชีของคุณ

ไวยากรณ์:

ตัวอย่าง:

ผลลัพธ์:

circle-info

ผู้ใช้ SDK: Python SDK ยังมีวิธี logout() แบบเป็นโปรแกรมสำหรับการล้างข้อมูลรับรองภายในสคริปต์ Python ดู Python เอกสารประกอบ SDK สำหรับรายละเอียด

status - ตรวจสอบสถานะใบอนุญาต

แสดงใบอนุญาตปัจจุบันและสถานะการรับรองความถูกต้อง

ไวยากรณ์:

ตัวอย่าง:

ผลลัพธ์:

export-status - ตรวจสอบความคืบหน้าการส่งออก

ติดตามความคืบหน้าในการส่งออก Thread 4 ในระหว่างหรือหลังการประมวลผล

ไวยากรณ์:

ตัวอย่าง:

กรณีการใช้งาน: เรียกใช้คำสั่งนี้ขณะประมวลผลเพื่อตรวจสอบความคืบหน้าในการส่งออก

language - จัดการภาษาอินเทอร์เฟซ

ดูหรือเปลี่ยนภาษาอินเทอร์เฟซ CLI

ไวยากรณ์:

ตัวอย่าง:

ภาษาที่รองรับ (ทั้งหมด 38 ภาษา)

  • รหัส - ภาษา - ชื่อพื้นเมือง -


  • en - อังกฤษ - อังกฤษ -

  • es - สเปน - ภาษาสเปน -

  • pt - โปรตุเกส - ภาษาโปรตุเกส -

  • fr - ฝรั่งเศส - ฝรั่งเศส -

  • de - เยอรมัน - เยอรมัน -

  • it - ภาษาอิตาลี - อิตาเลียโน่ -

  • ja - ญี่ปุ่น - ภาษาญี่ปุ่น -

  • ko - เกาหลี - เกาหลี -

  • zh - จีน (ตัวย่อ) - 简体中文 -

  • zh-TW - จีน (ตัวเต็ม) - 繁體中文 -

  • ru - รัสเซีย - รัสสกี้ -

  • nl - ดัตช์ - เนเธอร์แลนด์ -

  • ar - ภาษาอาหรับ - العربية -

  • pl - ภาษาโปแลนด์ - โปลสกี้ -

  • tr - ภาษาตุรกี - เตอร์กเช่ -

  • hi - ฮินดี - हिंदी -

  • id - อินโดนีเซีย - บาฮาซาอินโดนีเซีย -

  • vi - ภาษาเวียดนาม - Tiếng Viết -

  • th - ไทย - ไทย -

  • sv - สวีเดน - สเวนสกา -

  • da - ภาษาเดนมาร์ก - ดันสค์ -

  • no - นอร์เวย์ - นอร์สค์ -

  • fi - ภาษาฟินแลนด์ - ซูโอมิ -

  • el - กรีก - เกรียน -

  • cs - เช็ก - เชสตินา -

  • hu - ฮังการี - มากยาร์ -

  • ro - โรมาเนีย - โรมาเนีย -

  • uk - ภาษายูเครน - Украйнська -

  • pt-BR - โปรตุเกสแบบบราซิล - Português Brasileiro -

  • zh-HK - กวางตุ้ง - 粵語 -

  • ms - มาเลย์ - บาฮาซามลายู -

  • sk - สโลวัก - สโลวีเนีย -

  • bg - บัลแกเรีย - Български -

  • hr - ภาษาโครเอเชีย - ฮวาตสกี -

  • lt - ลิทัวเนีย - Lietuvių -

  • lv - ลัตเวีย - ลัตเวียซู -

  • et - เอสโตเนีย - เอสติ -

  • sl - ภาษาสโลเวเนีย - สโลวีเนีย -

circle-check

set-project-folder - ตั้งค่าโฟลเดอร์โครงการเริ่มต้น

เปลี่ยนตำแหน่งโฟลเดอร์โครงการเริ่มต้น (แชร์กับ GUI)

ไวยากรณ์:

ตัวอย่าง:

get-project-folder - แสดงโฟลเดอร์โครงการ

แสดงตำแหน่งโฟลเดอร์โครงการเริ่มต้นปัจจุบัน

ไวยากรณ์:

ตัวอย่าง:

ผลลัพธ์:

reset-project-folder - รีเซ็ตเป็นค่าเริ่มต้น

รีเซ็ตโฟลเดอร์โครงการเป็นตำแหน่งเริ่มต้น

ไวยากรณ์:

ตัวเลือกระดับโลก

ตัวเลือกเหล่านี้ใช้กับคำสั่งทั้งหมด:

  • ตัวเลือก - พิมพ์ - ค่าเริ่มต้น - คำอธิบาย -


  • --backend-exe - เส้นทาง - ตรวจพบอัตโนมัติ - เส้นทางไปยังไฟล์ปฏิบัติการแบ็กเอนด์ -

  • --port - จำนวนเต็ม - 5000 - หมายเลขพอร์ตแบ็กเอนด์ API -

  • --restart - ตั้งค่าสถานะ - - - บังคับให้รีสตาร์ทแบ็กเอนด์ (ฆ่ากระบวนการที่มีอยู่) -

  • --version - ตั้งค่าสถานะ - - - แสดงข้อมูลเวอร์ชันและออก -

  • --help - ตั้งค่าสถานะ - - - แสดงข้อมูลวิธีใช้และออก -

ตัวอย่างพร้อมตัวเลือกสากล:

คู่มือการตั้งค่าการประมวลผล

การประมวลผลแบบขนาน

Chloros+ CLI ปรับขนาดอัตโนมัติการประมวลผลแบบขนานเพื่อให้ตรงกับความสามารถของคอมพิวเตอร์ของคุณ:มันทำงานอย่างไร:

  • ตรวจจับแกน CPU และ RAM ของคุณ

  • จัดสรรพนักงาน: 2× CPU cores (ใช้ไฮเปอร์เธรด)

  • สูงสุด: พนักงานแบบขนาน 16 คน (เพื่อความมั่นคง)ระดับของระบบ:

  • ประเภทระบบ - ซีพียู - แรม - คนงาน - ประสิทธิภาพ -


  • ระดับไฮเอนด์ - 16+ คอร์ - 32+ กิกะไบต์ - สูงสุด 16 - ความเร็วสูงสุด -

  • ระดับกลาง - 8-15 คอร์ - 16-31GB - 8-16 - ความเร็วดีเยี่ยม -

  • ระดับล่าง - 4-7 คอร์ - 8-15GB - 4-8 - ความเร็วดี -

circle-check

วิธีการชำระหนี้

CLI ใช้ คุณภาพสูง (เร็วกว่า) เป็นอัลกอริธึมการดีบายเริ่มต้นและที่แนะนำ:

  • วิธีการ - คุณภาพ - ความเร็ว - คำอธิบาย -


  • คุณภาพสูง (เร็วกว่า) ⭐ - ⭐⭐⭐⭐ - ⚡⚡⚡ - อัลกอริธึม Edge-aware (ค่าเริ่มต้น แนะนำ) -

การแก้ไขขอบมืด

ให้ประโยชน์อะไรบ้าง: แก้ไขแสงตกที่ขอบภาพ (มุมที่มืดกว่าซึ่งพบได้ทั่วไปในภาพของกล้อง)

  • เปิดใช้งานโดยค่าเริ่มต้น - ผู้ใช้ส่วนใหญ่ควรเปิดใช้งานสิ่งนี้ต่อไป

  • ใช้ --no-vignette เพื่อปิดการใช้งาน

circle-check

การสอบเทียบการสะท้อนแสง

แปลงค่าเซ็นเซอร์ดิบเป็นเปอร์เซ็นต์การสะท้อนแสงที่เป็นมาตรฐานโดยใช้แผงการสอบเทียบ

  • เปิดใช้งานโดยค่าเริ่มต้น - จำเป็นสำหรับการวิเคราะห์พืชพรรณ

  • ต้องมีแผงเป้าหมายการปรับเทียบในภาพ

  • ใช้ --no-reflectance เพื่อปิดการใช้งาน

circle-info

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

การแก้ไข PPK

ให้ประโยชน์อะไรบ้าง: ใช้การแก้ไขจลนศาสตร์หลังการประมวลผลโดยใช้ข้อมูลบันทึก DAQ-A-SD เพื่อความแม่นยำของ GPS ที่ดีขึ้น

  • ปิดใช้งานโดยค่าเริ่มต้น

  • ใช้ --ppk เพื่อเปิดใช้งาน

  • ต้องใช้ไฟล์ .daq ในโฟลเดอร์โปรเจ็กต์จากเซ็นเซอร์วัดแสง MAPIR DAQ-A-SD

รูปแบบเอาต์พุต

รูปแบบ
ความลึกบิต
ขนาดไฟล์
ดีที่สุดสำหรับ

TIFF (16 บิต)

จำนวนเต็ม 16 บิต

ขนาดใหญ่

การวิเคราะห์ GIS, โฟโตแกรมเมทรี (แนะนำ)

TIFF (32 บิต, เปอร์เซ็นต์)

ทศนิยม 32 บิต

มาก ใหญ่

การวิเคราะห์ทางวิทยาศาสตร์ การวิจัย

PNG (8 บิต)

จำนวนเต็ม 8 บิต

ปานกลาง

การตรวจสอบด้วยภาพ การแชร์เว็บ

JPG (8 บิต)

8 บิต จำนวนเต็ม

เล็ก

ดูตัวอย่างด่วน เอาต์พุตที่ถูกบีบอัด

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

การประมวลผลชุด PowerShell

ประมวลผลโฟลเดอร์ชุดข้อมูลหลายชุดโดยอัตโนมัติ:

Windows แบทช์สคริปต์

วนซ้ำอย่างง่ายสำหรับการประมวลผลแบบแบตช์:

สคริปต์การทำงานอัตโนมัติ Python

ระบบอัตโนมัติขั้นสูงพร้อมการจัดการข้อผิดพลาด:

ขั้นตอนการประมวลผล

ขั้นตอนการทำงานมาตรฐาน

  1. อินพุต: โฟลเดอร์ที่มีคู่ภาพ RAW/JPG

  2. การค้นพบ: CLI สแกนอัตโนมัติสำหรับไฟล์ภาพที่รองรับ

  3. การประมวลผล: โหมดขนานจะปรับขนาดตามคอร์ CPU ของคุณ (Chloros+)

  4. เอาต์พุต: สร้างโฟลเดอร์ย่อยของรุ่นกล้องที่มีภาพที่ประมวลผลแล้ว

ตัวอย่างโครงสร้างผลลัพธ์

การประมาณเวลาดำเนินการ

เวลาในการประมวลผลโดยทั่วไปสำหรับ 100 ภาพ (แต่ละภาพ 12MP):

  • โหมด - เวลา - ฮาร์ดแวร์ -


  • โหมดขนาน - 5-10 นาที - i7/Ryzen 7, RAM 16GB, SSD (สูงสุด 16 คน) -

  • โหมดขนาน - 10-15 นาที - i5/Ryzen 5, RAM 8GB, HDD (สูงสุด 8 คน) -

circle-info

เคล็ดลับด้านประสิทธิภาพ: เวลาในการประมวลผลจะแตกต่างกันไปขึ้นอยู่กับจำนวนภาพ ความละเอียด และข้อมูลจำเพาะของคอมพิวเตอร์

การแก้ไขปัญหา

ไม่พบ CLI

ข้อผิดพลาด:

แนวทางแก้ไข:

  1. ตรวจสอบตำแหน่งการติดตั้ง:

  1. ใช้เส้นทางแบบเต็มหากไม่ได้อยู่ใน PATH:

  1. เพิ่มไปยัง PATH ด้วยตนเอง:

    • คุณสมบัติระบบเปิด → ตัวแปรสภาพแวดล้อม

    • แก้ไขตัวแปร PATH

    • เพิ่ม: C:\Program Files\Chloros\resources\cli

    • รีสตาร์ทเทอร์มินัล

แบ็กเอนด์ไม่สามารถเริ่มต้นได้

ข้อผิดพลาด:

แนวทางแก้ไข:

  1. ตรวจสอบว่าแบ็กเอนด์ทำงานอยู่แล้วหรือไม่ (ปิดก่อน)

  2. ตรวจสอบว่าไฟร์วอลล์ Windows ไม่ได้ถูกบล็อก

  3. ลองใช้พอร์ตอื่น:

  1. บังคับให้รีสตาร์ทแบ็กเอนด์:

ปัญหาใบอนุญาต / การรับรองความถูกต้อง

ข้อผิดพลาด:

แนวทางแก้ไข:

  1. ตรวจสอบว่าคุณมีการสมัครสมาชิก Chloros+ ที่ใช้งานอยู่

  2. เข้าสู่ระบบด้วยข้อมูลประจำตัวของคุณ:

  1. ตรวจสอบสถานะใบอนุญาต:

  1. ติดต่อฝ่ายสนับสนุน: info@mapir.camera

ไม่พบรูปภาพ

ข้อผิดพลาด:

แนวทางแก้ไข:

  1. ตรวจสอบโฟลเดอร์ที่มีรูปแบบที่รองรับ (.RAW, .TIF, .JPG)

  2. ตรวจสอบเส้นทางโฟลเดอร์ให้ถูกต้อง (ใช้เครื่องหมายคำพูดสำหรับเส้นทางที่มีช่องว่าง)

  3. ตรวจสอบให้แน่ใจว่าคุณมีสิทธิ์ในการอ่านโฟลเดอร์

  4. ตรวจสอบนามสกุลไฟล์ให้ถูกต้อง

กำลังดำเนินการแผงลอยหรือแขวน

แนวทางแก้ไข:

  1. ตรวจสอบพื้นที่ว่างในดิสก์ (ตรวจสอบให้แน่ใจว่าเพียงพอสำหรับเอาต์พุต)

  2. ปิดแอปพลิเคชั่นอื่นๆ เพื่อเพิ่มหน่วยความจำ

  3. ลดจำนวนภาพ (ดำเนินการเป็นชุด)

พอร์ตมีการใช้งานแล้ว

ข้อผิดพลาด:

สารละลาย:

ระบุพอร์ตอื่น:

คำถามที่พบบ่อย

ถาม: ฉันต้องมีใบอนุญาตสำหรับ CLI หรือไม่

ก. ใช่! CLI ต้องมีใบอนุญาตChloros+** แบบชำระเงิน

  • ❌ แผนมาตรฐาน (ฟรี): CLI ปิดใช้งาน

  • ✅ Chloros+ (ชำระเงิน) แผน: CLI เปิดใช้งานโดยสมบูรณ์

สมัครสมาชิกได้ที่: https://cloud.mapir.camera/pricingarrow-up-right

ถาม: ฉันสามารถใช้ CLI บนเซิร์ฟเวอร์ที่ไม่มี GUI ได้หรือไม่

**ก. ใช่! CLI ทำงานแบบไม่มีหัวโดยสมบูรณ์ ความต้องการ:

  • Windows เซิร์ฟเวอร์ 2016 หรือใหม่กว่า

  • ติดตั้ง Visual C++ Redistributable แล้ว

  • RAM เพียงพอ (ขั้นต่ำ 8GB, แนะนำ 16GB)

  • การเปิดใช้งานใบอนุญาต GUI ครั้งเดียวบนเครื่องใดก็ได้

ถาม: ภาพที่ประมวลผลแล้วจะถูกบันทึกไว้ที่ไหน?

A:ตามค่าเริ่มต้น ภาพที่ประมวลผลจะถูกบันทึกในโฟลเดอร์เดียวกันกับอินพุต ในโฟลเดอร์ย่อยของรุ่นกล้อง (เช่น Survey3N_RGN/)

ใช้ตัวเลือก -o เพื่อระบุโฟลเดอร์เอาต์พุตอื่น:

ถาม: ฉันสามารถประมวลผลหลายโฟลเดอร์พร้อมกันได้หรือไม่

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

ถาม: ฉันจะบันทึกเอาต์พุต CLI ลงในไฟล์บันทึกได้อย่างไร

พาวเวอร์เชลล์:

ชุด:

ถาม: จะเกิดอะไรขึ้นถ้าฉันกด Ctrl+C ในระหว่างการประมวลผล?

ตอบ: CLI จะ:

  1. หยุดการประมวลผลอย่างสง่างาม

  2. ปิดแบ็กเอนด์

  3. ออกด้วยรหัส 130

รูปภาพที่ประมวลผลบางส่วนอาจยังคงอยู่ในโฟลเดอร์เอาท์พุต

ถาม: ฉันสามารถทำให้การประมวลผล CLI เป็นแบบอัตโนมัติได้หรือไม่

ก: แน่นอน! CLI ได้รับการออกแบบมาเพื่อระบบอัตโนมัติ ดู การทำงานอัตโนมัติและการเขียนสคริปต์ สำหรับตัวอย่าง PowerShell, Batch และ Python

ถาม: ฉันจะตรวจสอบเวอร์ชัน CLI ได้อย่างไร

ก:

ผลลัพธ์:

การขอความช่วยเหลือ

วิธีใช้บรรทัดคำสั่ง

ดูข้อมูลวิธีใช้โดยตรงใน CLI:

ช่องทางการสนับสนุน

ตัวอย่างที่สมบูรณ์

ตัวอย่างที่ 1: การประมวลผลขั้นพื้นฐาน

กระบวนการด้วยการตั้งค่าเริ่มต้น (บทความสั้น การสะท้อนแสง):

ตัวอย่างที่ 2: ผลลัพธ์ทางวิทยาศาสตร์คุณภาพสูง

โฟลต 32 บิต TIFF:

ตัวอย่างที่ 3: การประมวลผลการแสดงตัวอย่างอย่างรวดเร็ว

PNG 8 บิตที่ไม่มีการสอบเทียบเพื่อการตรวจสอบอย่างรวดเร็ว:

ตัวอย่างที่ 4: การประมวลผล PPK-Corrected

ใช้การแก้ไข PPK พร้อมการสะท้อนแสง:

ตัวอย่างที่ 5: ตำแหน่งเอาต์พุตแบบกำหนดเอง

ประมวลผลไปยังไดรฟ์อื่นด้วยรูปแบบเฉพาะ:

ตัวอย่างที่ 6: ขั้นตอนการตรวจสอบสิทธิ์

ขั้นตอนการรับรองความถูกต้องเสร็จสมบูรณ์:

ตัวอย่างที่ 7: การใช้งานหลายภาษา

เปลี่ยนภาษาอินเทอร์เฟซ:

Last updated