This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

HTML to Image

किसी वेबपेज URL या कच्ची HTML सामग्री को स्क्रीनशॉट छवि के रूप में कैप्चर करें। device emulation (desktop, tablet, mobile), full-page कैप्चर और कई आउटपुट प्रारूपों का समर्थन करता है।

API Endpoint

POST /api/v1/tools/image/html-to-image

एक JSON body स्वीकार करता है (multipart नहीं)। किसी फ़ाइल अपलोड की आवश्यकता नहीं है।

Parameters

ParameterTypeRequiredDefaultDescription
urlstringसशर्त-कैप्चर करने के लिए URL (एक वैध URL होना चाहिए)
htmlstringसशर्त-रेंडर करने के लिए कच्ची HTML सामग्री (1 से 5,000,000 वर्ण)
formatstringनहीं"png"आउटपुट प्रारूप: jpg, png, webp
qualitynumberनहीं90lossy प्रारूपों के लिए आउटपुट गुणवत्ता (1 से 100)
fullPagebooleanनहींfalseकेवल viewport नहीं, बल्कि पूरे स्क्रॉल करने योग्य पृष्ठ को कैप्चर करें
devicePresetstringनहीं"desktop"device emulation: desktop, tablet, mobile, custom
viewportWidthnumberनहीं1280कस्टम viewport चौड़ाई पिक्सेल में (320 से 3840, जब devicePreset custom हो तब उपयोग होती है)
viewportHeightnumberनहीं720कस्टम viewport ऊँचाई पिक्सेल में (320 से 2160, जब devicePreset custom हो तब उपयोग होती है)

या तो url या html प्रदान किया जाना चाहिए, लेकिन दोनों नहीं।

Device Presets

PresetWidthHeightMobile UA
desktop1280720नहीं
tablet7681024नहीं
mobile375812हाँ
custom(उपयोगकर्ता-निर्दिष्ट)(उपयोगकर्ता-निर्दिष्ट)नहीं

Example Request

किसी वेबपेज को कैप्चर करें:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "format": "png", "fullPage": true, "devicePreset": "desktop"}'

HTML सामग्री रेंडर करें:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"html": "<div style=\"padding: 20px; background: #f0f0f0;\"><h1>Hello</h1></div>", "format": "png"}'

Example Response

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/screenshot.png",
  "originalSize": 0,
  "processedSize": 145000
}

Notes

  • सर्वर पर Chromium इंस्टॉल होना आवश्यक है। यदि browser सेवा उपलब्ध नहीं है तो HTTP 503 लौटाता है।
  • URLs को SSRF हमलों के विरुद्ध सत्यापित किया जाता है (निजी/आंतरिक नेटवर्क पते अवरुद्ध हैं)।
  • यह endpoint प्रति घंटे 120 अनुरोधों तक दर-सीमित है।
  • originalSize हमेशा 0 होता है क्योंकि यह टूल URLs/HTML से छवियाँ जनरेट करता है।
  • आउटपुट फ़ाइलनाम screenshot.<format> है।
  • यदि पृष्ठ लोड होने में बहुत अधिक समय लेता है, तो अनुरोध HTTP 504 (gateway timeout) लौटाता है।
  • यदि browser सेवा बार-बार क्रैश होती है, तो इसे अस्थायी रूप से अक्षम कर दिया जाता है और code BROWSER_CRASHED के साथ HTTP 503 लौटाया जाता है।