इमेज वैक्टराइज़ेशन API

Vectorizer.AI API एक पूर्ण बिटमैप ट्रेसिंग प्रदान करता है। API पूरी तरह से स्वचालित रूप से और सर्वोत्तम श्रेणी में पिक्सल को वैक्टर में ट्रेस करता है।

API कुंजी प्राप्त करें

जल्दी शुरूवात

एक बिटमैप इमेज पोस्ट करें और एक वैक्टरीकृत परिणाम वापस प्राप्त करें:

$ curl https://hi.vectorizer.ai/api/v1/vectorize \
 -u xyz123:[secret] \
 -F image=@example.jpeg \
 -o result.svg
// Requires: org.apache.httpcomponents.client5:httpclient5-fluent

Request request = Request.post("https://hi.vectorizer.ai/api/v1/vectorize")
   .addHeader("Authorization", "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd")
   .body(
      MultipartEntityBuilder.create()
         .addBinaryBody("image", new File("example.jpeg")) // TODO: Replace with your image
         // TODO: Add more upload parameters here
         .build()
      );
ClassicHttpResponse response = (ClassicHttpResponse) request.execute().returnResponse();

if (response.getCode() == 200) {
   // Write result to disk, TODO: or wherever you'd like
   try (FileOutputStream out = new FileOutputStream("result.svg")) {
      response.getEntity().writeTo(out);
   }
} else {
   System.out.println("Request Failed: Status: " + response.getCode() + ", Reason: " + response.getReasonPhrase());
}
using (var client = new HttpClient())
using (var form = new MultipartFormDataContent())
{
   client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", "INSERT_API_KEY_HERE");
   form.Add(new ByteArrayContent(File.ReadAllBytes("example.jpeg")), "image", "example.jpeg"); // TODO: Replace with your image
   // TODO: Add more upload parameters here

   var response = client.PostAsync("https://hi.vectorizer.ai/api/v1/vectorize", form).Result;

   if (response.IsSuccessStatusCode)
   {
      // Write result to disk, TODO: or wherever you'd like
      FileStream outStream = new FileStream("result.svg", FileMode.Create, FileAccess.Write, FileShare.None);
      response.Content.CopyToAsync(outStream).ContinueWith((copyTask) => { outStream.Close(); });
   }
   else
   {
       Console.WriteLine("Request Failed: Status: " + response.StatusCode + ", Reason: " + response.ReasonPhrase);
   }
}
// Requires "request" to be installed (see https://www.npmjs.com/package/request)
var request = require('request');
var fs = require('fs');

request.post({
  url: 'https://hi.vectorizer.ai/api/v1/vectorize',
  formData: {
    image: fs.createReadStream('example.jpeg'), // TODO: Replace with your image
    // TODO: Add more upload options here
  },
  auth: {user: 'xyz123', pass: '[secret]'},
  followAllRedirects: true,
  encoding: null
}, function(error, response, body) {
  if (error) {
    console.error('Request failed:', error);
  } else if (!response || response.statusCode != 200) {
    console.error('Error:', response && response.statusCode, body.toString('utf8'));
  } else {
    // Save result
    fs.writeFileSync("result.svg", body);
  }
});
$ch = curl_init('https://hi.vectorizer.ai/api/v1/vectorize');

curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
    array('Authorization: Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd'));
curl_setopt($ch, CURLOPT_POSTFIELDS,
    array(
      'image' => curl_file_create('example.jpeg'),
      // TODO: Add more upload options here
    ));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

$data = curl_exec($ch);
if (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 200) {
  // Save result
  file_put_contents("result.svg", $data);
} else {
  echo "Error: " . $data;
}
curl_close($ch);
# Either use the sample code below, or this SDK: https://pypi.org/project/vectorizer-ai/
# Requires "requests" to be installed (see https://pypi.org/project/requests/)
import requests

response = requests.post(
    'https://hi.vectorizer.ai/api/v1/vectorize',
    files={'image': open('example.jpeg', 'rb')},
    data={
        # TODO: Add more upload options here
    },
    auth=('xyz123', '[secret]')
)
if response.status_code == requests.codes.ok:
    # Save result
    with open('result.svg', 'wb') as out:
        out.write(response.content)
else:
    print("Error:", response.status_code, response.text)
# Requires: gem install httpclient
require 'httpclient'

client = HTTPClient.new default_header: {
  "Authorization" => "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd"
}

response = client.post("https://hi.vectorizer.ai/api/v1/vectorize", {
  "image" => File.open("example.jpeg", "rb"), # TODO: Replace with your image
  # TODO: Add more upload parameters here
})

if response.status == 200 then
  # Write result to disk, TODO: or wherever you'd like
  File.open("result.svg", 'w') { |file| file.write(response.body) }
else
  puts "Error: Code: " + response.status.to_s + ", Reason: " + response.reason
end
$ curl https://hi.vectorizer.ai/api/v1/vectorize \
 -u xyz123:[secret] \
 -F 'image.url=https://example.com/example.jpeg' \
 -o result.svg
// Requires: org.apache.httpcomponents.client5:httpclient5-fluent

Request request = Request.post("https://hi.vectorizer.ai/api/v1/vectorize")
   .addHeader("Authorization", "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd")
   .body(
      MultipartEntityBuilder.create()
         .addTextBody("image.url", "https://example.com/example.jpeg") // TODO: Replace with your image URL
         // TODO: Add more upload parameters here
         .build()
      );
ClassicHttpResponse response = (ClassicHttpResponse) request.execute().returnResponse();

if (response.getCode() == 200) {
   // Write result to disk, TODO: or wherever you'd like
   try (FileOutputStream out = new FileOutputStream("result.svg")) {
      response.getEntity().writeTo(out);
   }
} else {
   System.out.println("Request Failed: Status: " + response.getCode() + ", Reason: " + response.getReasonPhrase());
}
using (var client = new HttpClient())
using (var form = new MultipartFormDataContent())
{
   client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", "INSERT_API_KEY_HERE");
   form.Add(new StringContent("https://example.com/example.jpeg"), "image.url"); // TODO: Replace with your image URL
   // TODO: Add more upload parameters here

   var response = client.PostAsync("https://hi.vectorizer.ai/api/v1/vectorize", form).Result;

   if (response.IsSuccessStatusCode)
   {
      // Write result to disk, TODO: or wherever you'd like
      FileStream outStream = new FileStream("result.svg", FileMode.Create, FileAccess.Write, FileShare.None);
      response.Content.CopyToAsync(outStream).ContinueWith((copyTask) => { outStream.Close(); });
   }
   else
   {
       Console.WriteLine("Request Failed: Status: " + response.StatusCode + ", Reason: " + response.ReasonPhrase);
   }
}
// Requires "request" to be installed (see https://www.npmjs.com/package/request)
var request = require('request');
var fs = require('fs');

request.post({
  url: 'https://hi.vectorizer.ai/api/v1/vectorize',
  formData: {
    'image.url': 'https://example.com/example.jpeg', // TODO: Replace with your image
    // TODO: Add more upload options here
  },
  auth: {user: 'xyz123', pass: '[secret]'},
  followAllRedirects: true,
  encoding: null
}, function(error, response, body) {
  if (error) {
    console.error('Request failed:', error);
  } else if (!response || response.statusCode != 200) {
    console.error('Error:', response && response.statusCode, body.toString('utf8'));
  } else {
    // Save result
    fs.writeFileSync("result.svg", body);
  }
});
$ch = curl_init('https://hi.vectorizer.ai/api/v1/vectorize');

curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
    array('Authorization: Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd'));
curl_setopt($ch, CURLOPT_POSTFIELDS,
    array(
      'image.url' => 'https://example.com/example.jpeg',
      // TODO: Add more upload options here
    ));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

$data = curl_exec($ch);
if (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 200) {
  // Save result
  file_put_contents("result.svg", $data);
} else {
  echo "Error: " . $data;
}
curl_close($ch);
# Either use the sample code below, or this SDK: https://pypi.org/project/vectorizer-ai/
# Requires "requests" to be installed (see https://pypi.org/project/requests/)
import requests

response = requests.post(
    'https://hi.vectorizer.ai/api/v1/vectorize',
    data={
        'image.url': 'https://example.com/example.jpeg',
        # TODO: Add more upload options here
    },
    auth=('xyz123', '[secret]')
)
if response.status_code == requests.codes.ok:
    # Save result
    with open('result.svg', 'wb') as out:
        out.write(response.content)
else:
    print("Error:", response.status_code, response.text)
# Requires: gem install httpclient
require 'httpclient'

client = HTTPClient.new default_header: {
  "Authorization" => "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd"
}

response = client.post("https://hi.vectorizer.ai/api/v1/vectorize", {
  "image.url" => "https://example.com/example.jpeg", # TODO: Replace with your image URL
  # TODO: Add more upload parameters here
})

if response.status == 200 then
  # Write result to disk, TODO: or wherever you'd like
  File.open("result.svg", 'w') { |file| file.write(response.body) }
else
  puts "Error: Code: " + response.status.to_s + ", Reason: " + response.reason
end

कीमत

API के साथ एकीकृत करना और उसका परीक्षण करना मुफ़्त है, और इसके लिए किसी सदस्यता की आवश्यकता नहीं है।

बनाने के लिए बस mode=test का इस्तेमाल करें। आप फ्रंट पेज़ पर इंटरैक्टिव वेब ऐप का इस्तेमाल करके परिणाम की गुणवत्ता का मूल्यांकन कर सकते हैं।

उत्पादन परिणामों के लिए सदस्यता की आवश्यकता होती है और प्रत्येक के लिए 1.00 credit की जरूरत होती है।

हम प्रीव्यू रिज़ल्ट भी दिखाते हैं जिन्हें आप खरीदने से पहले अपने अंतिम-उपयोगकर्ता को दिखा सकते हैं।

प्रीव्यूज़ PNG तस्वीरें होती हैं, जो आपके इनपुट से चार गुना बड़ी होती हैं, एक छुपे हुए वाटरमार्क के साथ आती हैं, और प्रत्येक की कीमत 0.20credit होती है।

प्रीव्यू परिणाम प्राप्त करने के लिए बस mode=preview का इस्तेमाल करें।

कृपया सब्सक्रिप्शन प्लानों के लिए कीमत पेज को देखें।

प्रमाणीकरण और सुरक्षा

API मानक HTTP मूलभूत पहुँच प्रमाणीकरण का इस्तेमाल करता है। API के लिए सभी अनुरोध HTTPS पर किए जाने चाहिए और इसमें उपयोगकर्ता के रूप में API Id और पासवर्ड के रूप में API सीक्रेट के साथ आपके API क्रेडेंशियल शामिल होने चाहिए।

अनुरोधों को सफलतापूर्वक करने के लिए आपकी http क्लायंट लाइब्रेरी को सर्वर नाम सूचना (SNI) का समर्थन करना होगा। यदि आप अजीब हैंडशेक एरर्स का सामना कर रहे हैं, तो इसकी सबसे अधिक संभावना है।

रेट सीमित करना

API का इस्तेमाल उदार छूट सहित और बिना किसी ऊपरी सीमा के साथ दर द्वारा सीमित है।

सामान्य अंत्य-उपयोगकर्ता-संचालित प्रचालन के दौरान आपके द्वारा दर सीमा का सामना करने की आशंका कम है क्योंकि तब इस्तेमाल कम होने लगता है और इस तरह प्रवाहित होता है कि इसे सेवा द्वारा गरिमामय तरीके से संभाल लिया जाता है।

फिर भी, बैच आधारित कामों के लिए हम अधिकतम 5 थ्रेड्स के साथ शुरुआत करने की सलाह देते हैं, फिर प्रत्येक 5 मिनट में 1 नया थ्रेड तब तक जोड़ते रहें, जब तक कि आप समरूपता के वांछित स्तर तक नहीं पहुंच जाते। यदि आपको 100 से अधिक समवर्ती थ्रेड्स की आवश्यकता हो, तो शुरू करने से पहले कृपया संपर्क करें।

यदि आप अत्यधिक अनुरोध प्रस्तुत करते हैं तो आपको 429 Too Many Requests प्रत्युत्तर मिलने शुरू हो जाएंगे। जब भी ऐसा हो तो आपको रैखिक बैक ऑफ लागू करना चाहिए: पहली बार ऐसा प्रत्युत्तर मिलने पर, अगला अनुरोध प्रस्तुत करने तक 5 सेकंड इंतज़ार करें। लगातार दूसरे 429 प्रत्युत्तर पर, अगला अनुरोध प्रस्तुत करने तक 2*5 = 10 सेकंड इंतज़ार करें। तीसरे में 3*5 = 15 सेकंड इंतज़ार करें, इत्यादि।

सफल अनुरोध के बाद आप बैक ऑफ काउंटर रीसेट कर सकते हैं, और आपको बैक-ऑफ को प्रति-थ्रेड के आधार पर लागू करना चाहिए (अर्थात थ्रेड्स को एक दूसरे से स्वतंत्र रूप से काम करना चाहिए)।

टाइमआउट

जबकि API अनुरोध आम तौर पर सेकंड के भीतर पूरे हो जाते हैं, क्षणिक लोड स्पाइक्स के दौरान लंबे समय तक प्रोसेसिंग में ज़्यादा समय लगने का अनुभव करना संभव है।

यह सुनिश्चित करने के लिए कि आपकी क्लाइंट लाइब्रेरी API अनुरोधों को समय से पहले समाप्त नहीं करती है, इसे कम से कम 180 seconds के निष्क्रिय टाइमआउट के साथ कॉन्फ़िगर किया जाना चाहिए।

एरर JSON ऑबजेक्ट

हम API अनुरोध की सफलता या विफलता को इंगित करने के लिए पारंपरिक HTTP स्थितियों का इस्तेमाल करते हैं, और वापस दिए जाने वाले एरर JSON ऑबजेक्ट में महत्वपूर्ण एरर जानकारी शामिल करते हैं।

किसी भी समस्याग्रस्त अनुरोध में हम सदैव एरर JSON ऑबजेक्ट को वापस देने का प्रयास करते हैं। फिर भी, सैद्धांतिक रूप से यह सदैव संभव है कि ऐसी आंतरिक सर्वर विफलताएं हुई हों जो गैर-JSON एरर प्रत्युत्तर का कारण बनती हैं।

विशेषताएं

statusडिबगिंग में सहायता के लिए यहाँ प्रत्युत्तर की HTTP स्थिति दोहराई गई।
codeVectorizer.AI आंतरिक त्रुटि कोड।
messageडिबगिंग में सहायक होने के प्रयोजन से मानव-पठनीय एरर संदेश।

यदि आपके अनुरोध के लिए HTTP स्थिति 200 है, तो एरर रहित JSON ऑबजेक्ट वापस किया जाएगा, और आप आराम से यह मान सकते हैं कि अनुरोध व्यापक रूप से सफल हुआ।

कुछ HTTP क्लायंट लाइब्रेरियों ने 400-599 रेंज में HTTP स्थिति के लिए अपवाद सृजित किया। आपको उन अपवादों को समझने और उन पर उचित रूप से कार्रवाई करने की आवश्यकता होगी।

HTTP Statusअर्थ
200-299

सफलता

400-499

अनुरोध में दी गई जानकारी में समस्या है (जैसे एक मापदंड गायब था)। यह जानने के लिए कि इसे कैसे ठीक किया जाए, कृपया एरर संदेश की समेक्षा करें।

500-599

एक Vectorizer.AI आंतरिक त्रुटि हुई है। एक क्षण रुकें, फिर प्रयास करें, और यदि समस्या बनी रहती है, तो कृपया हमें ईमेल करें।

उदाहरण एरर प्रत्युत्तर

{
  "error" : {
    "status" : 400,
    "code" : 1006,
    "message" : "Failed to read the supplied image. "
  }
}

आपकी डिबगिंग को सुविधाजनक बनाने के लिए हाल ही के API एरर आपके अकाउंट पेज पर सूचीबद्ध हैं।

API द्वारा लौटाए गए सभी एरर प्रत्युत्तर की एक सूची भी है

वैक्टरीकृत POST
https://api.vectorizer.ai/api/v1/vectorize

इमेज वैक्टरीकृत करने के लिए, आप एक मानक HTTP POST फाइल अपलोड करते हैं। ध्यान रखें कि बाइनरी फाइलों को अपलोड करते समय सामग्री-प्रकार को multipart/form-data में होना चाहिएmultipart/form-data

नीचे दी गई तालिका सभी API मापदंडों को एक कार्यशील अभी-आजमायें-फ़ॉर्म में प्रस्तुत करती है। प्रत्येक पैरामीटर का एक संक्षिप्त विवरण है, लेकिन विस्तृत आउटपुट विकल्प दस्तावेज़ीकरण को अवश्य देखें।

पैरामीटर्स

इनपुट इमेज निम्न प्रकार की होनी ज़रूरी है:


बाइनरी

एक बाइनरी फाइल।


स्ट्रिंग

एक base64-एनकोडिड स्ट्रिंग स्ट्रिंग आकार में अधिक से अधिक 1megabyte हो सकता है।


स्ट्रिंग

लाने और संसाधित करने के लिए एक URL।

.bmp, .gif, .jpeg, .png, or .tiff फाइल होना ज़रूरी है।

अधिकतम इनपुट इमेज का आकार (= चौड़ाई × लंबाई) है 3,35,54,432pixels, जो घटकर input.max_pixels हो जाती है।


एनुम, डिफ़ॉल्ट: production
Value Processing Mode Credits
production

यह मोड उत्पादन के इस्तेमाल के लिए है और सभी पैरामीटर सपोर्ट किये जाते हैं।

1.00
preview

यह मोड उस समय के लिए है जब आप अपने अंतिम-उपयोगकर्ता को खरीदारी करने से पहले एक प्रीव्यू दिखाना चाहते हैं।

यह सभी विरोधाभासी मापदंडों को नजरअंदाज करते हुए, एक अलग वॉटरमार्क के साथ 4x PNG परिणाम बनाता है।

0.20
test

यह मोड सेवा के साथ एकीकृत करते समय डेवलपर के इस्तेमाल के लिए है। सभी मापदंडों को सपोर्ट करता है, लेकिन ज़रूरी वॉटरमार्किंग है।

परीक्षण के परिणाम मुफ्त हैं और इसके लिए सक्रिय सब्सक्रिप्शन की जरूरत नहीं है, इसलिए आप इसे सेवा के साथ मुफ्त में एकीकृत कर सकते हैं।

मुफ्त

पूर्णांक, 100 से 3145828, डिफ़ॉल्ट: 2097252

अधिकतम इनपुट इमेज का आकार (= चौड़ाई × पिक्सेल मे लंबाई)। इससे बड़ी इमेज के प्रसंस्करण से पहले उन्हे इस आकार में छोटा कर दिया जाएगा।


पूर्णांक, 0 से 256, डिफ़ॉल्ट: 0

परिणाम के लिए इस्तेमाल किए जाने वाले रंगों की अधिकतम संख्या।

0 मतलब असीमित। 1 और 2 दोनो का अर्थ है 2 रंग, जैसे काला-और-सफ़ेद। N>=2 का अर्थ है रंगों की संख्या।

ध्यान दें कि यदि output.gap_filler.enabled=true (डिफ़ॉल्ट) है, तो परिणाम में चयनित रंगों के मिश्रण भी होंगे। सिर्फ चुने हुए रंगों के साथ परिणाम पाने के लिए गैप फिलर को अक्षम (डिसेबल) करें।


एनुम, डिफ़ॉल्ट: svg

आउटपुट फ़ाइल का स्वरूप।

SVG विकल्प:


एनुम, डिफ़ॉल्ट: svg_1_1

SVG टैग में SVG वर्ज़न की विशेषता को निर्दिष्ट करें। विवरण


Boolean, डिफ़ॉल्ट: false

क्या SVG टैग में इमेज के आकार की विशेषताओं को शामिल किया जाना चाहिए। जब true दर्शक आमतौर पर SVG को एक निश्चित आकार में प्रस्तुत करेंगे। जब false दर्शक आम तौर पर SVG स्केल को उपलब्ध स्थान में फिट होने देंगे। विवरण


Boolean, डिफ़ॉल्ट: false

जब true हम उन विकल्पों को अक्षम कर देते हैं जिन्हें Adobe Illustrator आयात नहीं कर सकता। विवरण

DXF विकल्प:


एनुम, डिफ़ॉल्ट: lines_and_arcs

DXF पाठकों की क्षमताओं बेतहाशा भिन्न होती हैं। यह विकल्प आपको आउटपुट को ड्राइंग प्रिमिटिव तक सीमित करने की अनुमति देता है जो आपके DXF रीडर वास्तव में समर्थन करते हैं। विवरण

बिटमैप के विकल्प:


एनुम, डिफ़ॉल्ट: anti_aliased
Value Anti-Aliasing Mode
anti_aliased आकृतियों के बीच की सीमा पर बने पिक्सेल के रंग हर एक आकृति द्वारा कवर किए गए पिक्सेल की जगह के अंश के अनुसार मिले होते हैं।
aliased पिक्सेल को उस आकार का रंग दिया जाता है जिसमें उसके ज्यामितीय का केंद्र होता है।

एनुम, डिफ़ॉल्ट: fill_shapes

उल्लिखित करें कि आप आउटपुट को कैसे स्ट्रोक या भरना चाहते हैं। आकृतियों का पथपाकर और उनके बीच के किनारों के बीच के पथपाकर मे एक सूक्ष्म अंतर है। कृपया व्याख्या के लिए विस्तृत दस्तावेज़ देखें


एनुम, डिफ़ॉल्ट: cutouts

यह निर्धारित करता है कि क्या आकृतियों नीचे दी गई आकृतियों के कट-आउट में रखी गई है (cutouts) या वे एक-दूसरे के ऊपर खड़ी है (stacked)। विवरण


एनुम, डिफ़ॉल्ट: none
Value Shape grouping
none कोई समूहीकरण नहीं
color रंग द्वारा, output.shape_stacking से इंटरैक्ट करते हैं
parent आकार युक्त होकर
layer ड्रा ऑर्डर की परत द्वारा
विवरण

Boolean, डिफ़ॉल्ट: false

पहचान किए गए गोलों, दीर्घवृत्तों, आयतों, त्रिभुजों और तारों को सामान्य वक्रों में फ्लैट करें। विवरण

वक्र:


Boolean, डिफ़ॉल्ट: true

क्या द्विघात बेज़ियर वक्र की अनुमति दी जानी चाहिए। विवरण


Boolean, डिफ़ॉल्ट: true

क्या क्यूबिक बेज़ियर वक्र की अनुमति दी जानी चाहिए। विवरण


Boolean, डिफ़ॉल्ट: true

क्या गोलाकार वृत्त-चापों की अनुमति दी जानी चाहिए। विवरण


Boolean, डिफ़ॉल्ट: true

क्या अण्डाकार वृत्त-चापों की अनुमति दी जानी चाहिए। विवरण


फ्लोट, 0.001 से 1.0, डिफ़ॉल्ट: 0.1

किसी वक्र और उसके करीब से जाने वाली रेखा के बीच के पिक्सेल में अधिकतम दूरी। विवरण

गैप फिलर:


Boolean, डिफ़ॉल्ट: true

क्या वैक्टर व्यूवर्स में सामान्य बग्स प्रस्तुत करने वाली सफेद रेखा के आसपास काम करना चाहिए। विवरण


Boolean, डिफ़ॉल्ट: false

क्या गैप फिलर स्ट्रोक्स को क्लिप करना चाहिए। जब output.shape_stacking=stacked या तो क्लिप या नॉन-स्केलिंग स्ट्रोक का इस्तेमाल करती है। विवरण


Boolean, डिफ़ॉल्ट: true

क्या नॉन-स्केलिंग वाले अंतराल भराव स्ट्रोक्स का इस्तेमाल करना चाहिए। जब output.shape_stacking=stacked या तो क्लिप या नॉन-स्केलिंग स्ट्रोक का इस्तेमाल करती है। विवरण


फ्लोट, 0.0 से 5.0, डिफ़ॉल्ट: 2.0

गैप फिलर स्ट्रोक्स की चौड़ाई। विवरण

स्ट्रोक शैली जब output.draw_style stroke_shapes है या stroke_edges


Boolean, डिफ़ॉल्ट: true

क्या नॉन-स्केलिंग स्ट्रोक का इस्तेमाल करना चाहिए। विवरण


Boolean, डिफ़ॉल्ट: false

क्या ओवरराइड रंग का इस्तेमाल करना चाहिए, या आकृति के अनुमानित रंग का। विवरण


फ़ारमैट: '#RRGGBB', जैसे. #FF00FF, डिफ़ॉल्ट: #000000

ओवरराइड रंग। विवरण


फ्लोट, 0.0 से 5.0, डिफ़ॉल्ट: 1.0

स्ट्रोक की चौड़ाई। विवरण

आउटपुट का आकार:


फ्लोट, 0.0 से 1000.0

एक समान स्केल कारक। अगर निर्दिष्ट किया गया है, तो इसे output.size.width और output.size.height पर प्राथमिकता दी जाती है।


फ्लोट, 0.0 से 1.0E12

output.size.unit द्वारा निर्दिष्ट इकाइयों की चौड़ाई। अगर चौड़ाई और ऊंचाई में से केवल एक बताई गई है, तो ऑस्पैक्ट रेशो को बनाए रखने के लिए दूसरे की स्वचालित रूप से गणना की जाती है।


फ्लोट, 0.0 से 1.0E12

output.size.unit द्वारा निर्दिष्ट इकाइयों की ऊंचाई। अगर चौड़ाई और ऊंचाई में से केवल एक बताई गई है, तो ऑस्पैक्ट रेशो को बनाए रखने के लिए दूसरे की स्वचालित रूप से गणना की जाती है।


एनुम, डिफ़ॉल्ट: none

चौड़ाई और लंबाई के लिए यूनिट का आकार। इनमें से, pt, in, cm, और mm भौतिक इकाइयाँ हैं, और none और px गैर-भौतिक इकाइयां हैं। ये विशिष्टताएँ output.size.input_dpi और output.size.output_dpi के साथ परस्पर प्रभाव लाती हैं।


एनुम, डिफ़ॉल्ट: preserve_inset

परिमाण स्केलिंग का नियम
preserve_inset ज़्यादा टाइट आयाम को फिट करने के लिए समान रूप से स्केल करें, ताकि कोई ओवरफ्लो न हो लेकिन दूसरे आयाम में खाली जगह हो
preserve_overflow सख्त आयाम को ओवरफ्लो करते हुए, कम टाइट आयाम को फिट करने के लिए समान रूप से स्केल करें
stretch निर्दिष्ट चौड़ाई और ऊंचाई में फिट होने के लिए असमान रूप से स्केल करें
या तो preserve विकल्प के लिए, अप्रतिबंधित आयाम में स्थिति को output.size.align_x या output.size.align_y से नियंत्रित किया जाता है।


फ्लोट, 0.0 से 1.0, डिफ़ॉल्ट: 0.5

output.size.aspect_ratio = preserve_inset या preserve_overflow के लिए क्षैतिज संरेखण।

परिमाण क्षैतिज संरेखण
0.0 बाईं तरफ़ संरेखित
0.5 क्षैतिज रूप से मध्य में
1.0 दाईं तरफ़ संरेखित
0.0 और 1.0 के बीच का कोई भी मूल्य हो सकता है।


फ्लोट, 0.0 से 1.0, डिफ़ॉल्ट: 0.5

output.size.aspect_ratio = preserve_inset या preserve_overflow के लिए लंबवत रूप से संरेखण।

परिमाण लंबवत संरेखण
0.0 शीर्ष पर संरेखित
0.5 लंबवत रूप से संरेखण
1.0 नीचे की ओर संरेखित
0.0 और 1.0 के बीच का कोई भी मूल्य हो सकता है।


फ्लोट, 1.0 से 1000000.0

उपलब्ध होने पर इनपुट इमेज की DPI, फ़ाइल से पढ़ी जाती है। यह पैरामीटर आपको उस परिमाण को ओवरराइड करने देता है। नतीजतन आए परिमाण का इस्तेमाल इनपुट इमेज के भौतिक आकार की गणना करने के लिए किया जाता है, जिसका इस्तेमाल आउटपुट आकार की गणना करने के लिए किया जाता है अगर आउटपुट के लिए कोई भौतिक इकाइयां निर्दिष्ट हैं, लेकिन स्पष्ट चौड़ाई या ऊंचाई नहीं।


फ्लोट, 1.0 से 1000000.0

आउटपुट इमेज का DPI. जब भौतिक इकाइयाँ निर्दिष्ट की जाती हैं तो इसका इस्तेमाल बिटमैप आउटपुट के पिक्सेल आकार की गणना करने के लिए किया जाता है।

अकाउंट स्टेट्स GET
https://api.vectorizer.ai/api/v1/account

आपके अकाउंट की मूलभूत जानकारी जैसे आपकी सदस्यता स्थिति और शेष क्रेडिट्स प्राप्त करें।

पैरामीटर्स

कुछ भी नहीं

प्रत्युत्तर विशेषताएं

subscriptionPlan

आपके द्वारा वर्तमान में ली गई सदस्यता योजना, या 'कुछ भी नहीं'।

subscriptionState

आपकी वर्तमान सदस्यता की स्थिति ('सक्रिय' या 'पिछला बकाया') या यदि सदस्यता नहीं ली गई हो तो 'समाप्त'।

credits

आपके अकाउंट में शेष API क्रेडिट्स की संख्या। अगर इस समय सदस्यता नहीं ली है तो 0, या किसी गैर-API प्लान की सदस्यता ली है। यह अंशीय हो सकता है, इसलिए इसे डबल के रूप में पार्स करने के बारे में याद रखें।

इसे आज़माएं

यूज़रनेम = API आईडी, पासवर्ड = API सीक्रेट

cURL

$ curl "https://api.vectorizer.ai/api/v1/account" \
 -u 123:[secret]

उदाहरण प्रत्युत्तर

{
  "subscriptionPlan" : "none",
  "subscriptionState" : "ended",
  "credits" : 0
}

API चेंजलॉग

तारीखबदलें
4 मार्च 2024 टाइमआउट के बारे में अनुभाग जोड़ा गया।
24 जन॰ 2024 अकाउंट स्टेट्स पर एंडपॉइंट जोड़ा गया। अकाउंट पेज पर हाल ही के API एरर्स जोड़े गये हैं। सभी API एरर प्रत्युत्तर की सूची जोड़ी गई हैं।
16 जन॰ 2024 त्रुटिदायक JSON ऑब्जैक्ट का दस्तावेज़ीकरण किया गया।
3 अक्तू॰ 2023 स्पष्ट किया जाता है कि processing.max_colorsमें अनुरोधित किये गये के मुकाबले output.gap_filler.enabled=true परिणाम में अधिक रंगों की ओर ले जाता है।
20 सित॰ 2023 जोड़ा गया है mode
1 अग॰ 2023 निम्नलिखित विकल्पों के साथ एक पूर्ण विशेषताओं वाला आउटपुट आकार का विकल्प समूह जोड़ा गया है: output.size.scale, output.size.width, output.size.height, output.size.unit, output.size.aspect_ratio, output.size.align_x, output.size.align_y, output.size.input_dpi, और output.size.output_dpi। एक विकल्प के साथ बिटमैप आउटपुट विकल्प समूह जोड़ा गया है: output.bitmap.anti_aliasing_mode
7 जून 2023 जोड़ा गया है processing.max_colors
31 मई 2023 API मापदंडों का काफी अधिक विस्तार किया गया है। API के एंडपॉइंट को अपडेट किया गया है।
10 मार्च 2023 प्रारंभिक रिलीज़।
API कुंजी प्राप्त करें