API

PixelToPath API

แปลงภาพเป็นเวกเตอร์ผ่านโปรแกรมด้วยการเรียก REST เพียงครั้งเดียว อัปโหลดไฟล์ PNG, JPG, BMP หรือ WebP และรับ SVG ที่คมชัดพร้อมใช้งานกลับมา ลายเส้นขาวดำจะถูกเทรซโดย Potrace ส่วนภาพสีจะใช้ VTracer — เอนจินเดียวกับตัวแปลงออนไลน์ฟรี

แปลงฟรี 10 ครั้งทุกเดือน · ไม่ต้องใช้บัตรเครดิต

แปลงฟรี 10 ครั้ง / เดือน • เรียก REST 1 ครั้ง • เอนจิน Potrace + VTracer • เครดิตไม่มีวันหมดอายุ

เริ่มต้นใช้งานด่วน

เพียงสามขั้นตอน คุณก็สามารถแปลงภาพเป็น SVG จากเทอร์มินัล, สคริปต์ หรือแอปพลิเคชันของคุณได้ทันที

1 · สร้างบัญชีของคุณ

ลงทะเบียนในพอร์ทัลไคลเอนต์ด้วยอีเมลและรหัสผ่าน (10 ตัวอักษรขึ้นไป) ไม่ต้องใช้บัตรเครดิต

2 · สร้าง API key

ในพอร์ทัล ให้สร้างคีย์ คีย์จะแสดงเพียงครั้งเดียว — โปรดเก็บรักษาให้ปลอดภัย คีย์จะมีรูปแบบเช่น ptp_live_… และสามารถยกเลิกได้ตลอดเวลา

3 · เรียกใช้งาน /v1/convert

ส่งภาพของคุณในรูปแบบ multipart/form-data พร้อมแนบคีย์ของคุณใน Authorization header คุณจะได้รับ SVG กลับมาใน response body

การแปลงไฟล์ครั้งแรกของคุณ

curl -sS -f -X POST https://api.pixel-to-path.com/v1/convert \
  -H "Authorization: Bearer ptp_live_YOUR_KEY" \
  -F "[email protected]" \
  -F "colormode=binary" \
  -o logo.svg

เอกสารอ้างอิงแบบโต้ตอบ: pixel-to-path.com/v1/docs (OpenAPI/Swagger).

การยืนยันตัวตน (Authentication)

ทุกคำขอ (request) ต้องยืนยันตัวตนด้วย Bearer token ใน Authorization header:

Authorization: Bearer ptp_live_0123abc…
  • คีย์คือความลับ: คีย์จะถูกจัดเก็บแบบแฮช (hashed) บนเซิร์ฟเวอร์ และแสดงเพียงครั้งเดียวเมื่อสร้าง หากทำคีย์หาย? ให้ยกเลิกและสร้างใหม่
  • หนึ่งบัญชี, หลายคีย์: สร้างคีย์ที่ใช้งานได้สูงสุด 5 คีย์ เพื่อแยกการใช้งานในแต่ละโปรเจกต์ โควตาใช้งานฟรีรายเดือนของคุณจะนับรวมต่อบัญชี ไม่ใช่ต่อคีย์
  • ยกเลิกได้ทันที: คีย์ที่ถูกยกเลิกจะหยุดทำงานทันที ไม่ว่าจะยกเลิกจากพอร์ทัล หรือเป็นการตอบสนองของ API ต่อบัญชีที่ถูกแบน

POST /v1/convert

อัปโหลด + แปลงไฟล์ในการเรียกแบบไร้สถานะ (stateless) เพียงครั้งเดียว การเรียกที่สำเร็จหนึ่งครั้งจะใช้เครดิตอย่างมากที่สุด 1 เครดิต — หากการเรียกล้มเหลว, ไม่ถูกต้อง หรือติดขีดจำกัดการใช้งาน (rate-limited) จะไม่เสียเครดิต

คำขอ (multipart/form-data)

ฟิลด์ ชนิดข้อมูล ค่าเริ่มต้น คำอธิบาย
file file ภาพที่ต้องการแปลง PNG, JPEG, BMP หรือ WebP · สูงสุด 20 MB · สูงสุด 50 Mpx · ขั้นต่ำ 64×64 px
colormode string color <code>color</code> จะใช้เอนจิน VTracer, <code>binary</code> จะใช้ Potrace (ขาวดำ)
mode string spline เฉพาะโหมด Color (VTracer) — จะถูกเพิกเฉยในโหมดขาวดำ spline | polygon | none
hierarchical string stacked เฉพาะโหมด Color (VTracer) — จะถูกเพิกเฉยในโหมดขาวดำ stacked | cutout
filter_speckle int 4 เฉพาะโหมด Color (VTracer) — จะถูกเพิกเฉยในโหมดขาวดำ 0–16 — ลบจุดรบกวนขนาดเล็ก
color_precision int 6 เฉพาะโหมด Color (VTracer) — จะถูกเพิกเฉยในโหมดขาวดำ 1–8 — จำนวนบิตที่มีนัยสำคัญต่อช่องสี
layer_difference int 16 เฉพาะโหมด Color (VTracer) — จะถูกเพิกเฉยในโหมดขาวดำ 0–64 — ระยะห่างระหว่างเลเยอร์สี
corner_threshold int 60 0–180 — มุมตรวจจับมุม (ทั้งสองเอนจิน)
length_threshold float 4.0 3.5–10 — ความยาวเซกเมนต์ขั้นต่ำ (ทั้งสองเอนจิน)
splice_threshold int 45 0–180 — มุมแบ่งเส้นทาง (ทั้งสองเอนจิน)
path_precision int 3 0–8 — ตำแหน่งทศนิยมในพิกัดเส้นทาง
invert bool false เฉพาะโหมด Binary (Potrace) — จะถูกเพิกเฉยในโหมดสี เทรซพื้นที่สว่างแทนพื้นที่มืด
turdsize int 2 เฉพาะโหมด Binary (Potrace) — จะถูกเพิกเฉยในโหมดสี 0–20 — ระงับจุดรบกวนไม่เกินขนาดนี้
alphamax float 1.0 เฉพาะโหมด Binary (Potrace) — จะถูกเพิกเฉยในโหมดสี 0–1.334 — เกณฑ์ความเรียบของมุม
opttolerance float 0.2 เฉพาะโหมด Binary (Potrace) — จะถูกเพิกเฉยในโหมดสี 0–10 — ความคลาดเคลื่อนของการเพิ่มประสิทธิภาพเส้นโค้ง

สองเอนจิน เลือกโดย "colormode"

API รันด้วยเอนจินเดียวกันกับเครื่องมือแปลงไฟล์ออนไลน์ฟรีและแอปพลิเคชันบนเดสก์ท็อป:

binary — Potrace

การเทรซลายเส้นขาวดำสำหรับภาพวาดลายเส้น, ภาพสแกน, สเก็ตช์ และโลโก้ ส่วนที่มืดของภาพ (ระดับสีเทา < 50%) จะถูกเทรซบนพื้นหลังสีขาว คุณสามารถปรับแต่งผลลัพธ์ได้อย่างละเอียดด้วย turdsize (การลบสัญญาณรบกวน), alphamax (การปรับมุมให้เรียบ) และ opttolerance (การเพิ่มประสิทธิภาพของเส้นพาธ)

color — VTracer

การแปลงเป็นเวกเตอร์สีแบบแยกเลเยอร์สำหรับภาพประกอบ, การ์ตูน และภาพถ่าย ควบคุมระดับรายละเอียดด้วย filter_speckle, color_precision, layer_difference และควบคุมการปรับเส้นโค้งด้วย mode (spline, polygon, none)

รูปภาพจะถูกประมวลผลล่วงหน้า (preprocess) ในลักษณะเดียวกับบนเว็บไซต์: ด้านที่ยาวที่สุดจะถูกปรับขนาดเป็น 1500 px ก่อนการแปลง และ API จะคืนค่าประเภทของภาพที่ตรวจพบ (line_art, logo, photo หรือ illustration) ใน X-Detected-Type header

การตอบสนอง (Response)

เมื่อสำเร็จ: 200 OK พร้อมกับ image/svg+xml — โดยเนื้อหา (body) จะเป็นไฟล์ SVG ข้อมูลเพิ่มเติมใน header:

Header คำอธิบาย
X-Credits-Remainingจำนวนเครดิตแบบชำระเงินที่เหลือในบัญชี หลังจากการหักเครดิตสำหรับการเรียกครั้งนี้
X-Free-Remainingจำนวนการแปลงฟรีที่เหลือในเดือนนี้
X-Detected-Typeประเภทของภาพที่ตรวจพบ (ข้อมูล): line_art, logo, photo หรือ illustration
X-Processing-Timeเวลาที่เซิร์ฟเวอร์ใช้ประมวลผลในหน่วยวินาที

GET /v1/me

สถานะบัญชีสำหรับคีย์ที่ใช้ในการเรียก ฟรี — ไม่นับรวมในโควตาของคุณ และไม่มีการหักเครดิตใดๆ

ตัวอย่างการตอบสนอง

GET /v1/me
Authorization: Bearer ptp_live_…

{
  "key": { "name": "prod", "prefix": "ptp_live_0123abc", … },
  "usage": {
    "month": "2026-09", "free_used": 7, "free_limit": 10,
    "free_remaining": 3, "resets_at": "2026-10-01T00:00:00+00:00"
  },
  "credits": { "balance": 120 }
}

ข้อผิดพลาด (Errors)

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

HTTP/1.1 402 Payment Required
{
  "error": {
    "code": "quota_exceeded",
    "message": "Monthly free quota used and no credits left.",
    "usage": { "free_used": 10, "free_limit": 10, "credits": 0 }
  }
}
HTTP รหัส (Code) สาเหตุ (When)
401invalid_api_keyไม่มี API key, รูปแบบไม่ถูกต้อง, ไม่รู้จักคีย์ หรือคีย์ถูกยกเลิก
402quota_exceededโควตาฟรีรายเดือนหมดแล้ว และไม่มีเครดิตเหลือ
403account_bannedบัญชีถูกแบน — คีย์ทั้งหมดของบัญชีนี้จะถูกปฏิเสธ
403ip_blockedIP ของผู้เรียกอยู่ในบัญชีดำ (blocklisted)
413file_too_largeไฟล์มีขนาดใหญ่กว่า 20 MB
422invalid_image / image_too_small / invalid_paramsรูปภาพไม่ถูกต้อง, รูปภาพมีขนาดเล็กเกินไป หรือค่าพารามิเตอร์ไม่ถูกต้อง
429rate_limitedเกินขีดจำกัดการเรียกใช้งานต่อคีย์ (ดูด้านล่าง) รวม <code>Retry-After</code> header มาด้วย
500internal_errorการแปลงไฟล์ล้มเหลวที่ฝั่งเซิร์ฟเวอร์ — ไม่มีการหักเครดิต

ขีดจำกัดการใช้งาน (Rate limits)

ขีดจำกัดจะมีผลกับแต่ละ API key ไม่ใช่ต่อ IP ดังนั้น การใช้งานร่วมกันในออฟฟิศ หรือ CI runner จะไม่ถูกจำกัดสิทธิ์จากการใช้งานของผู้อื่น

ข้อจำกัด (Limit) ค่า (Value)
จำนวนคำขอต่อนาที, ต่อคีย์60
จำนวนคำขอต่อวัน, ต่อคีย์2 000
การแปลงไฟล์พร้อมกัน (Concurrent), ต่อคีย์2 (คำขอที่เกินจะรอ จากนั้นส่งคืน 429)
ขนาดไฟล์สูงสุด / ความละเอียด20 MB / 50 Mpx

ราคา

บัญชีใหม่ทุกบัญชีจะได้รับสิทธิ์แปลงไฟล์ฟรี 10 ครั้งทุกเดือน ไม่ต้องใช้บัตรเครดิต หากต้องการใช้งานมากขึ้น? สามารถซื้อภาพแบบเติมเงิน — ในจำนวนใดก็ได้ (เป็นชุดละ 50 ภาพ) พร้อมส่วนลดเมื่อซื้อจำนวนมาก เครดิตไม่มีวันหมดอายุ และจะใช้ร่วมกับโควตาฟรีรายเดือนของคุณ (โดยจะใช้สิทธิ์แปลงไฟล์ฟรีให้หมดก่อนเสมอ)

ฟรี

€0/เดือน

  • แปลงฟรี 10 ครั้ง / เดือน
  • ใช้งานได้ทั้ง 2 เอนจิน (Potrace + VTracer)
  • สูงสุด 5 API keys
สร้างบัญชี

รูปภาพแบบเติมเงิน

€0.050/ ภาพ

ราคาตามปริมาณ — ยิ่งซื้อมาก ยิ่งถูกลง
จำนวนภาพ50–450500–2 4502 500–9 95010 000–49 95050 000+
€/image0.0500.0400.0300.0200.010
  • ซื้อ 1 ภาพ = สิทธิ์แปลง 1 ครั้ง (เครดิตไม่มีวันหมดอายุ)
  • ไม่มีวันหมดอายุ ใช้ร่วมกับแพ็กเกจฟรีได้
  • ซื้อจำนวนเท่าใดก็ได้: ลดเหลือ €0.040/ภาพ เมื่อซื้อ 500 ภาพ และลดลงได้สูงสุดถึง €0.010/ภาพ
ซื้อรูปภาพ

เครดิตเข้าอัตโนมัติ: ยอดเงินคงเหลือของคุณจะได้รับการอัปเดตภายในไม่กี่วินาทีหลังจากการชำระเงินผ่าน payment webhook การขอคืนเงินจะถูกหักออกจากเครดิตที่ซื้อ โดยหักสูงสุดไม่เกินยอดเงินคงเหลือปัจจุบัน ชำระเงินอย่างปลอดภัยด้วย Lemon Squeezy (จัดการภาษีมูลค่าเพิ่มให้อัตโนมัติ)

ตัวอย่างโค้ด

คัดลอก-วาง และปรับแต่งตามต้องการ API รองรับรูปแบบ multipart/form-data ธรรมดา ดังนั้นสามารถใช้กับ HTTP client ใดก็ได้

cURL

curl -sS -f -X POST https://api.pixel-to-path.com/v1/convert \
  -H "Authorization: Bearer ptp_live_YOUR_KEY" \
  -F "[email protected]" \
  -F "colormode=color" \
  -F "filter_speckle=4" \
  -o photo.svg

Python

import requests

resp = requests.post(
    "https://api.pixel-to-path.com/v1/convert",
    headers={"Authorization": "Bearer ptp_live_YOUR_KEY"},
    files={"file": open("photo.jpg", "rb")},
    data={"colormode": "color", "filter_speckle": 4},
)
resp.raise_for_status()
print(resp.headers["X-Credits-Remaining"], "credits left")
with open("photo.svg", "wb") as f:
    f.write(resp.content)

JavaScript

const form = new FormData();
form.append("file", new Blob([imageBytes]), "photo.jpg");
form.append("colormode", "color");

const resp = await fetch("https://api.pixel-to-path.com/v1/convert", {
  method: "POST",
  headers: { "Authorization": "Bearer ptp_live_YOUR_KEY" },
  body: form,
});
if (!resp.ok) {
  const { error } = await resp.json();
  throw new Error(`${error.code}: ${error.message}`);
}
const svg = await resp.text();
console.log(resp.headers.get("X-Credits-Remaining"), "credits left");

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

การแปลงไฟล์ 1 ครั้ง หมายถึงอะไร?

การเรียก POST /v1/convert ที่สำเร็จและส่งคืน SVG กลับมา หากการเรียกล้มเหลว (รูปภาพไม่ถูกต้อง, พารามิเตอร์ผิด, ถูกจำกัดด้วย rate limit, ข้อผิดพลาดของเซิร์ฟเวอร์) และการเรียก GET /v1/me จะไม่มีการหักเครดิต

โควตาใช้งานฟรีรายเดือน นับอย่างไร?

นับต่อบัญชี ตามปฏิทินเดือนเวลา UTC — โดยจะรีเซ็ตทุกวันที่ 1 เวลา 00:00 UTC การสร้าง API key หลายคีย์จะไม่เพิ่มจำนวนโควตาฟรี: คีย์ทั้งหมดในบัญชีจะใช้สิทธิ์แปลงไฟล์ฟรี 10 ครั้งร่วมกัน

เครดิตมีวันหมดอายุหรือไม่?

ไม่มี เครดิตที่ซื้อจะอยู่ในบัญชีจนกว่าคุณจะใช้งาน เครดิตจะถูกหักก็ต่อเมื่อคุณใช้สิทธิ์แปลงฟรี 10 ครั้งในเดือนนั้นหมดแล้ว

ฉันจะเพิ่มจำนวนครั้งการแปลงไฟล์ในแต่ละเดือนได้อย่างไร?

ซื้อรูปภาพแบบเติมเงินจากพอร์ทัลไคลเอนต์ — ในจำนวนใดก็ได้ เป็นชุด ชุดละ 50 ภาพ คุณจะเห็นเสมอว่าคุณได้รับกี่ภาพอย่างชัดเจน: 50 ภาพ €2.50, 500 ภาพ €20, 2,500 ภาพ €75, 10,000 ภาพ €200, 50,000 ภาพ €500 เครดิตจะถูกเพิ่มเข้าบัญชีของคุณอัตโนมัติภายในไม่กี่วินาทีหลังการชำระเงิน — ไม่ต้องมี license key ไม่มีข้อมูลต้องกรอกเพิ่มเติม

จะทำอย่างไรถ้าฉันทำ API key หาย?

คีย์จะถูกเก็บแบบแฮช (hashed) ดังนั้นจึงไม่สามารถกู้คืนได้ ให้ยกเลิกคีย์ที่หายไปในพอร์ทัล แล้วสร้างใหม่ — การเปลี่ยนแปลงจะมีผลทันที

รองรับรูปภาพรูปแบบใดบ้าง?

PNG, JPEG, BMP และ WebP ขนาดสูงสุด 20 MB และ 50 ล้านพิกเซล โดยมีขนาดอย่างน้อย 64×64 พิกเซล รูปภาพที่มีด้านยาวที่สุดเกิน 1500 px จะถูกลดขนาดก่อนแปลง เช่นเดียวกับบริการฟรีบนเว็บไซต์

เลือกเวอร์ชันของคุณ

เครื่องมือทรงพลังตัวเดียวกัน - เลือกรูปแบบที่เหมาะกับขั้นตอนการทำงานของคุณ

🌐

เครื่องมือออนไลน์

ฟรี

แปลงรูปภาพโดยตรงในเบราว์เซอร์ของคุณ ไม่ต้องติดตั้ง ไม่ต้องมีบัญชี

เปิดเครื่องมือ
💻

แอปเดสก์ท็อป

ฟรี & โอเพนซอร์ส

ตัวแปลงไฟล์ตัวเต็มบนเครื่องของคุณ สำหรับ Windows & Linux

ดาวน์โหลดฟรี
⌨️

แอปเดสก์ท็อป Pro

€39 จ่ายครั้งเดียว

Hot folder, แปลงไฟล์จำนวนมาก และ CLI สำหรับงานระดับโปรดักชัน

รับ Pro
🔌

API

แพ็กเกจฟรี + ซื้อเครดิตเพิ่ม

เรียก REST ครั้งเดียว: ส่งภาพ รับ SVG ที่คมชัด แปลงฟรี 10 ครั้ง/เดือน

รับ API key

พร้อมที่จะแปลงไฟล์เป็นเวกเตอร์จำนวนมากแล้วหรือยัง?

สร้างบัญชีของคุณ รับคีย์ และเรียกใช้งานครั้งแรกภายในเวลาไม่ถึงสองนาที

รับ API key ฟรีของคุณ