Görüntü Vektörleştirme Geliştirici Belgeleri

Vectorizer.AI resmi SDK'lar, komut satırı istemcisi, OpenAPI özellikleri ve tam teşekküllü bir bitmap izleme API'si sunar. Bu geliştirici araçlarının tümü, pikselleri vektörlere tam otomatik olarak ve sınıfının en iyisi doğrulukla izlemek için aynı hizmeti kullanır.

API Anahtarı alın

Doğrudan API Hızlı Başlangıç

Doğrudan HTTP entegrasyonları için, bir bitmap görüntüsü POST yapın ve vektörleştirilmiş bir sonucu geri alın:

$ curl https://tr.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://tr.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://tr.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://tr.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://tr.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 the official SDK: https://vectorizer.ai/api/documentation#sdks
# Requires "requests" to be installed (see https://pypi.org/project/requests/)
import requests

response = requests.post(
    'https://tr.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://tr.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://tr.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://tr.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://tr.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://tr.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://tr.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 the official SDK: https://vectorizer.ai/api/documentation#sdks
# Requires "requests" to be installed (see https://pypi.org/project/requests/)
import requests

response = requests.post(
    'https://tr.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://tr.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

Geliştirici Chatbot

SDK'lar, komut satırı, OpenAPI ve doğrudan HTTP API arasındaki Vectorizer.AI geliştirici entegrasyonlarına yardımcı olabilecek özel bir ChatGPT oluşturduk. Bu dokümanlarla ilgili soruları yanıtlayabilir ve kullanım durumunuza göre uyarlanmış tercih ettiğiniz dilde örnek kod veya komutlar sağlayabilir.

Vectorizer.AI Geliştirici Sohbet Robotu ile Sohbet Edin

Sohbet robotu şu an beta seviyesinde ve hata yapabilir. Verdiği cevapları kontrol edin ve hataları ve eksiklikleri düzeltmek için kodu gözden geçirmesini isteyin.

SDK'lar

Resmi SDK'ler genel OpenAPI spesifikasyonundan oluşturulur ve doğrudan API çağrılarıyla aynı HTTP Temel kimlik doğrulamasını kullanır. Çoğu uygulama entegrasyonu için önerilen başlangıç noktasıdır ve hesap ve silme çağrıları JSON modellerini döndürürken vektörleştirme ve indirme çağrıları dosya içeriğini döndürür.

Tüm SDK'lar https://api.vectorizer.ai/api/v1 'yi hedefler ve kararlı /vectorize, /download, /delete ve /account uç noktalarının etrafındaki sarıcılardır.

DilYüklemekKaynakBirincil ÇağrıSonucu Vektöre Edin
Python PyPI onayı bekliyor
Planlanan: pip install vectorizer-ai-sdk
GitHub VectorizationApi.post_vectorize(...) bytearray
TypeScript / JavaScript npm install @vectorizer-ai/sdk GitHub VectorizationApi.postVectorize(...) Blob
Java ai.vectorizer:vectorizer-ai-java GitHub VectorizationApi.postVectorize(...) File
C# / .NET dotnet add package Vectorizer.AI GitHub VectorizationApi.PostVectorize(...) Stream
Go go get github.com/clv/vectorizer-go GitHub VectorizationAPI.PostVectorize(...).Execute() *os.File
PHP composer require vectorizer/ai GitHub VectorizationApi::postVectorize([...]) SplFileObject
Ruby gem install vectorizer_ai GitHub VectorizationApi#post_vectorize(...) File

Uygulama entegrasyonları için SDK'ları tercih edin. Özel jeneratörler, desteklenmeyen diller veya doğrudan protokol çalışması için OpenAPI spesifikasyonunu kullanın. Jeneratör yapılandırması GitHub 'da mevcuttur.

İstemci araçları bildirimini indirin

Komut satırı

Resmi komut satırı istemcisi, Windows, macOS ve Linux için bağımsız bir yürütülebilir dosyadır. Kabuklar, komut dosyaları, toplu işleme, QA iş akışları ve uygulama kodu yazmadan görüntüleri vektörleştirmek isteyen kullanıcılar için tasarlanmıştır.

Mevcut sürüm için aşağıdaki doğrudan indirme bağlantılarını kullanın. Tüm sürüm dosyaları ve kontrol toplamları GitHub Releases'da da mevcuttur veya kaynağı GitHub'da görüntüleyebilirsiniz. CLI, doğrudan API çağrıları ve SDK entegrasyonları ile aynı API kimlik bilgilerini, sunucu ve uç nokta davranışını kullanır.

Platformİndir
Windows x64
Çoğu Windows PC
ZIP
Windows ARM64
ARM'de Windows
ZIP
MacOS Apple Silikon
Modern Mac'ler
tar.gz
MacOS Intel
Eski Intel Mac'ler
tar.gz
Linux x64
Çoğu Linux PC ve sunucu
DEB RPM APK tar.gz
Linux ARM64
ARM Linux sunucuları ve cihazları
DEB RPM APK tar.gz
export VECTORIZER_API_ID="your-api-id"
export VECTORIZER_API_SECRET="your-api-secret"

vectorizer vectorize logo.png -o logo.svg
vectorizer vectorize logo.png -o logo.pdf --format pdf
vectorizer download IMAGE_TOKEN -o logo.svg

Bir uygulamaya Vectorizer.AI eklerken SDK 'ları kullanın ve doğal arabirim terminal, zamanlanmış iş veya dosya işleme boru hattı olduğunda komut satırı istemcisini kullanın.

OpenAPI Spesifikasyonu

Doğrudan API, oluşturulan istemciler, şema doğrulaması ve API keşfi için bir OpenAPI 3.0 spesifikasyonu olarak mevcuttur. Aynı özellik, resmi SDK oluşturma iş akışını da yönlendirir.

Spesifikasyon https://api.vectorizer.ai/api/v1 'i sunucusu olarak bildirir, bu nedenle oluşturulan istemciler /vectorize, /download, /delete ve /account gibi uç nokta yollarını kullanır.

SpesifikasyonKullan
/api/openapi.json

Yayın, oluşturulan istemciler ve dokümantasyon araçları için uygun Canonical OpenAPI spesifikasyonu.

/api/openapi-codegen.json

Araçlar için kod oluşturma takma adı ve özel bir URL'yi tercih eden komut dosyaları oluşturma.

/api/openapi-swagger.json

Satır içi şemalar ve açıklama ağırlıklı parametre meta verileri ile Swagger UI odaklı varyant.

/apis.json

APIS.io ve diğer API katalog araçları için APIS.json keşif belgesi.

Entegrasyon İş Akışları

Bu iş akışları, resmi bir SDK, komut satırı istemcisi veya doğrudan HTTP API kullanıyor olun geçerlidir. Yaygın olan bir kaç tanesi şunlardır:

Tek Resim Biteşlem ekle, vektör sonucu al, işlem tamam

Vectorize iş akışını doğrudan bir SDK aracılığıyla veya komut satırı istemcisiyle arayın.

Önce Önizleme Yap Satın alma işlemi yapmadan önce olası müşterinize önizlemeyi gösterin

Satış yapmak için çok sayıda servis çağrısı yapmanız gerekiyorsa, bir müşteriyi gerçekten dönüştürene kadar daha düşük maliyetli önizlemeleri kullanabilirsiniz.

  1. Önizlemeyi almak için bir SDK, komut satırı istemcisi aracılığıyla Vectoriz e'i çağırın veya mode=preview ve policy.retention_days > 0 ile doğrudan HTTP öğesini çağırın ve X-Image-Token yanıt başlığında döndürülen Görüntü Belirtecini koruduğunuzdan emin olun.

  2. Dönüştürdükten sonra, tam sonucu indirmek için Görüntü Belirteci ile İndir'i arayın.

  3. İsteğe bağlı: ek sonuç formatlarına (örneğin PNG, PDF, vb.) ihtiyaç duyduğunuz takdirde, X-Receipt indirme yanıt başlığında döndürülen Alındıyı sakladığınızdan emin olun. Ardından, kalan formatları indirmek için Görüntü Belirteci ve Makbuz ile İndirme iş akışını kullanın.

Çoklu-Format Örneğin, hem PNG hem de SVG sonuçlarına ihtiyacınız var

  1. İlk sonucu almak için policy.retention_days > 0 ile Vectorize öğesini çağırın ve X-Image-Token yanıt başlığında döndürülen Görüntü Belirtecini koruduğunuzdan emin olun.

  2. Diğer formatları indirmek için Image Token ile İndir'i arayın.

Çoklu-Seçenek Her resmi çoklu işleme seçenekleriyle işlemeniz gerekiyor

  1. İlk sonucu almak için policy.retention_days > 0 ile Vectorize öğesini çağırın ve X-Image-Token yanıt başlığında döndürülen Görüntü Belirtecini koruduğunuzdan emin olun.

  2. İhtiy acınız olan kalan işleme seçeneklerini yinelemek için Görüntü Belirteci ile Vektörleştir'i çağırın.

  3. Ya da alternatif olarak her bir resmi ayrı ayrı işleyebilir ve Resim Belirtecini görmezden gelebilirsiniz. Resim Belirteci size biraz bant genişliği ve gecikmesi süresinden tasarruf sağlar.

Fiyatlandırma

EylemKrediTanım
Test0.000

Hizmetle entegre etmek ve test etmek ücretsizdir, abonelik gerekmez.

SDK'larda, komut satırı istemcisinde veya geliştirme için doğrudan API isteklerinde mode=test ve mode=test_preview kullanın.

Ön sayfada bulunan etkileşimli Web Uygulamasını kullanarak sonuç kalitesini değerlendirebilirsiniz.

Ön izleme0.200

Ayrıca, son kullanıcınız satın alma gerçekleştirmeden önce onlara gösterebileceğiniz önizleme sonuçları sunuyoruz.

Önizlemeler, sizin girdinizden dört kat daha büyük olan PNG resimleridir ve gizli bir filigran içermektedir.

Önizleme sonucu almak için mode=preview kullanın.

Vektörleştir1.000 Bir bitmap görüntüsünü bir vektör görüntüsüne vektörleştirin ve üretim sonucunu indirin.
Yükseltmenin Önizlemesi0.900 Önizleme API çağrısının ardından üretim sonucunu indirin. Sıfırdan vektörleştirmeye göre daha hesaplı.
Formatı İndir0.100 Sonucu başka bir formatta (örneğin SVG, PNG, PDF, vb.) indirin. Sıfırdan vektörleştirmeye göre daha hesaplı.
Depolama Günü0.010 Ücretsiz olan ilk günden sonra sonucu depolamak için gerekli gün başına ücret.

Abonelik planları için lütfen fiyatlandırma sayfasına bakınız.

Kimlik Doğrulaması ve Güvenlik

API standart HTTP temel erişim kimlik doğrulaması kullanmaktadır. API'ye yapılan tüm isteklerin HTTPS üzerinden yapılması ve sizin kullanıcı olarak API kimliğinizi ve şifre olarak da API Parolası ile API Bilgilerinizi içermesi gerekmektedir.

Resmi SDK'lar ve komut satırı istemcisi aynı kimlik bilgilerini kullanır ve sizin için HTTP Basic kimlik doğrulama başlığını ekler.

Http istemci kitaplığınızın istekleri başarıyla gerçekleştirmesi için Sunucu Adı Belirtme (SNI) desteklemesi gerekmektedir. Eğer garip el sıkışma hatalarıyla karşılaşıyorsanız nedeni muhtemelen budur.

Hız Sınırı

API kullanım limitleri gayet bol tutulmuştur ve kesin bir üst sınır bulunmamaktadır.

Normal son kullanıcı işlemlerinde herhangi bir hız sınırlamasına rastlamanız pek olası değildir. Zira o durumdaki kullanım inişli çıkışlı olma eğilimindedir ve servis de bunun altından gayet rahatlıkla kalkar.

Bununla birlikte, gruplu işlerde en fazla 5 iş parçacığı ile başlayıp, arzu edilen paralelliğe erişene kadar her 5 dakikada bir yeni iş parçacığı eklemenizi tavsiye ediyoruz. Eğer 100'den fazla eş zamanlı iş parçacığına ihtiyacınız olacaksa çalışmaya başlamadan önce lütfen bizimle iletişime geçin.

Paralellikte bu kademeli artışı elde etmenib en kolay yolu kullanmayı planladığınız iş parçacığı sayısı kadar iş parçacığını hemen başlatıp, daha sonra ise 5 izinle başlayan bir sayım yapan sefamor kullanmaktır. Daha sonra ise her 5 dakikada bir izinlerin sayısını artıran, ayrı bir iş parçacığı kullanabilirsiniz.

Eğer çok fazla istek girişi yaparsanız, 429 Too Many Requests yanıtları almaya başlarsınız. Bu olduğunda doğrusal geri çekilme uygulamalısınız: böyle bir yanıtı ilk aldığınızda, bir sonraki isteği girmeden önce 5 saniye bekleyin. İkinci ardışık 429 yanıtında, bir sonraki isteği girene kadar 2*5=10 saniye bekleyin. Üçüncüde 3*5=15 saniye bekleyin.

İsteğinizin başarılı olmasının ardından geri çekilme sayacını sıfırlayabilirsiniz. Geri çekilmeyi iş parçacığı başına olacak şekilde uygulamanız iyi olacaktır (Mesela iş parçacıkları birbirinden bağımsız olarak çalışmalıdır).

Zaman aşımları

API talepleri normalde saniyeler içerisinde tamamlanmakla birlikte ani geçici yük artışları esnasında daha uzun süren işlem süreleriyle karşılaşılması olasıdır.

İstemci kitaplığınızın API isteklerini erkenden sonlandırmadığından emin olmak için eylemsiz zaman aşımının en az 180 saniye olarak ayarlanması gerekmektedir.

Resmi komut satırı istemcisi varsayılan olarak daha uzun bir zaman aşımına sahiptir, ancak özel SDK ve doğrudan HTTP entegrasyonları yine de açıkça uygun bir zaman aşımı ayarlamalıdır.

Hatalı JSON

API isteğinin başarılı veya başarısız olduğunu göstermek için geleneksel HTTP statüleri kullanılır ve hataya ilişkin önemli bilgiler dönen Hatalı JSON Nesnesinde bulunur.

Herhangi bir sorunlu istek olması durumunda Hatalı JSON Nesnesi yollamaya çalışıyoruz. Ancak teorik olarak JSON-dışı hata yanıtına neden olan dahili sunucu hatalarının olması her zaman mümkündür.

Özellikler

statusYanıtın HTTP durumu, hata ayıklaması işlemine yardımcı olmak için burada tekrar edilmiştir.
codeVectorizer.AI iç hata kodu.
messageOkunabilir hata mesajı, hata ayıklamasında yardımcı olma amaçlıdır.

Eğer isteğinizin HTTP statüsü 200 ise hiçbir hatalı JSON Nesnesi döndürülmeyecektir. İsteğin genel anlamda başarılı olduğunu düşünebilirsiniz.

Bazı HTTP İstemci kitaplıkları 400-599 aralığındaki HTTP statüleri için özel durum oluşturmaktadır. Bu özel durumları yakalayıp uygun bir şekilde işlem yapmanız gerekecektir.

SDK'lar bu başarılı olmayan yanıtları yerel istisnalar veya hata değerleri olarak gösterirken, komut satırı istemcisi API hata ayrıntılarını standart hataya yazdırır.

HTTP StatusAnlamı
200-299

Başarı

400-499

İstekte verilen bilgide (örneğin eksik bir parametre gibi) bir sorun bulunmaktadır. Sorunu çözmek için lütfen hata mesajını gözden geçirin.

500-599

Vectorizer.AI iç hata kodu oluştu. Bir dakika bekleyip daha sonra tekrar deneyin. Sorunun hala devam etmesi halinde lütfen bize e-posta yollayın.

Örnek Hata Yanıtı

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

Hata ayıklama yapabilmeniz için Son zamanlardaki API hataları hesabınız sayfasında listelenmiştir.

Ayrıca API tarafından döndürülen tüm hata yanıtlarının bir listesi de bulunmaktadır.

Yanıt Başlıkları

Kullandığımız özel yanıt başlıkları şöyle:

Bir SDK kullanırken, Görüntü Belirteçlerine, Makbuzlara, kredi bilgilerine veya yeniden deneme başlıklarına ihtiyacınız varsa başlığa duyarlı yöntem varyantını kullanın. Komut satırı istemcisini kullanırken, Görüntü Belirteçleri ve Makbuzlar standart hataya yazdırılır, böylece ikili çıktı hala standart çıktıya yazılabilir.

BaşlıkTanım
X-Image-Token

Vektörleştirme isteğinizde policy.retention_days > 0 olduğunda döndürülür. Şunları yapmak için kullanılabilir:

  1. Önizleme API çağrısının ardından, sıfırdan vektörleştirmeye göre daha uygun fiyatlarla üretim sonucunu indirin.

  2. Sonucun farklı formatlarını (örneğin SVG, PNG, PDF, vb.) bunları sıfırdan vektörleştirmeye göre indirimli fiyatlarla indirin.

  3. Aynı resmi farklı işleme seçenekleriyle yeniden vektörleştirin.

X-Receipt

Önizleme Resim Belirteci kullanarak bir üretim sonucu indirdiğinizde döndürülür. Ek formatları (örneğin, SVG, PNG, PDF,vb.), önizlemeyi üst pakete taşıma ücreti yerine indirme formatı ücretiyle indirmek için kullanılabilir.

X-Credits-Calculated

Normal bir talep olsa ortaya çıkacak olan maliyeti göstermek için test talepleriyle döndürülmektedir.

X-Credits-Charged

Oluşan maliyeti göstermek için olan tüm isteklerle döndürülür. Test talepleri için her zaman 0.

Vektörleştir POST
https://api.vectorizer.ai/api/v1/vectorize

Bir resmi vektörleştirmek için standart bir HTTP POST dosyası yüklemesi yapılır. Unutmayın ikili dosyaları yüklerken İçerik Türü multipart/form-data olmak zorundadır.

Aşağıdaki tablo, işleyen bir şimdi-dene formunda tüm API parametrelerini ortaya koymaktadır. Her bir parametrenin kısa bir tanımı vardır ancak mutlaka detaylı Çıktı Seçenekleri Belgesini inceleyin.

Parametreler

Girdi resmi bunlardan bir tanesi olmalıdır:


İkili
İsteğe bağlı

İkili bir dosya.


Dize
İsteğe bağlı

base64-kodlu bir dize. Dizi boyut olarak en fazla 1 megabayt olabilir.


Dize
İsteğe bağlı

Getirip işleme alınacak URL.



İsteğe bağlı

policy.retention_days > 0 olan, daha önceki bir vektörleştirme API çağrısındaki X-Image-Token başlığında döndürülmüş olan bir Resim Belirtecidir.

.bmp, .gif, .jpeg, .png, .tiff veya .webp dosyası olmalıdır.

Maksimum resim yükleme boyutu (=en× yükseklik) 33.554.432pikseldir, input.max_pixels düzeyine küçültülür.


Enum, varsayılan: production
Değer İşleme Modu Kredi
production

Bu mod, üretim kullanımı amaçlıdır ve tüm parametreler desteklenmektedir.

1.000
preview

Bu mod, son kullanıcınız satın alma gerçekleştirmeden önce onlara bir önizleme göstermek istediğinizde kullanma amaçlıdır.

Zıt parametreleri göz ardı ederek, gizli bir filigranı olan 4x PNG sonucu oluşturur.

0.200
test, test_preview

Bu modlar, servisle entegre olurken geliştiricinin kullanması amaçlıdır. Tüm parametreler desteklenmektedir ancak belirgin bir filigran bulunmaktadır.

Test sonuçları ücretsizdir ve aktif bir abonelik gerektirmemektedir. Bu nedenle de servisle ücretsiz olarak entegre edebilirsiniz.

Karşılık gelen üretim çağrıları için ne kadar ücret ödeyecek olduğunuzu bilmeniz için yanıttaki başlığa bir X-Credits-Calculated ekliyoruz.

Ücretsiz

Tamsayı, 100 ila 3145828, varsayılan: 2097252

Maksimum girdi resim boyutu (= en× piksel olarak yüksekliktir). Bundan daha büyük olan resimler işleme başlamadan önce bu boyuta küçültülecektir.


Tamsayı, 0 ila 30, varsayılan: 0

Girdi resminin ve sonucunun saklanacağı günlerin sayısı. policy.retention_days > 0 kodunu belirttiğinizde yanıta bir X-Image-Token başlığı dahil ediyoruz.

Üç ana kullanımı vardır:

  1. Önizleme API çağrısı yaptıktan sonra üretim sonucunu hızlı ve indirimli bir şekilde indirebilirsiniz.

  2. Resmi vektörleştirmenizin ardından hepsini sıfırdan vektörleştirmek zorunda kalmadan aynı resim için çok sayıda çıktı formatını ve işleme seçeneğini indirebilirsiniz. Bu da hem kredi hem de gecikme süresi açısından önemli ölçüde tasarruf sağlar.

  3. Aynı resmi farklı işleme seçenekleriyle yeniden vektörleştirmek istediğiniz zaman. Size çağrı gecikme süresini azaltma ve bant genişliğinden tasarruf etme imkanı sağlar.

Depolamanın ilk günü ücretsizdir, ardından gün başına 0,010kredi ücreti vardır.

Ayrica bakınız İndirme son noktası.


Tamsayı, 0 ila 256, varsayılan: 0

Sonuç için kullanılması gereken maksimum renk sayısı.

0 sınırsız anlamına gelir. 1 ve 2 her ikisi de iki renk anlamına gelir, örneğin siyah-ve-beyaz. N>=2 renklerin sayısı anlamına gelir.

output.gap_filler.enabled=true (varsayılan) olduğu takdirde, sonucun da seçilen renklerin karışımlarını içereceğini unutmayın. Yalnızca seçilen renklerin bulunduğu bir sonuç almak için boşluk doldurucuyu devre dışı bırakın.


Format: '[color][-> remapped][~ tolerance];'
#00000000;
#FFFFFF ~ 0.1;
#0000FF -> #00FF00;
#FF0000 -> #00FF00 ~ 0.1;

Varsayılan:   (boş)

Bu mekanizma, sonuçtaki renkleri kontrol etmede çok güçlü ve esnek bir mekanizmadır.

Resimde tespit edilen renklerden palet renklerinin herhangi birinin toleransı içerisinde yer alanlar ona en yakın palet rengine ayarlanacak ve eğer palet rengi değiştirme seçilmiş ise değiştirilecektir. Eşleştirilemeyen renkler değiştirilmeden bırakılacaktır.

Örnekler

Tespit edilen renkleri en yakın kırmızı, yeşil ve maviye ayarlamak için şunu kullanın:

#FF0000; 
#00FF00; 
#0000FF;

Kırmızı, yeşil ve maviye yakın olarak tespit edilen renkleri temizleyip diğerlerini aynı bırakmak için şunu kullanın:

#FF0000 ~ 0.02; 
#00FF00 ~ 0.02; 
#0000FF ~ 0.02;

Tespit edilen renklerden kırmızıyı yeşile çevirmek ve geriye kalan herşeyin aynı kalması için şunu kullanın:

#FF0000 -> #00FF00 ~ 0.02;

Kırmızı, yeşil ve maviye yakın olan herşeyi bu renklere değiştirirken geriye kalan tüm renkleri şeffaf siyaha değiştirmek (yani sonuçtan bunları çıkarmak) için şunu kullanın:

#FF0000 ~ 0.02; 
#00FF00 ~ 0.02; 
#0000FF ~ 0.02; 
#00000000; // Transparent => removed

Renkler

Renkler temel CSS renk dizilimi kullanılarak belirlenmektedir. (Kısmen) şeffaf renkler için #RRGGBBAA kullanmanızı tavsiye ediyoruz. Opak renkler için #RRGGBB kullanmanızı tavsiye ediyoruz.

Tam şeffaf renkler sonuçtan çıkarılmaktadır. Renk yeniden ayarlama özelliğiyle birlikte bunu sonuçtan seçilen renkleri çıkarmak için kullanabilirsiniz.

En fazla 1.024 renk kullanabilirsiniz.

Tolerans

Birim, opak kırmızıdan (#FFFF0000) opak siyaha (#FF000000) mesafenin 1.0 olduğu oransal ARGB renk mesafesindedir.

Maksimum tolerans, şeffaf siyahtan (#00000000) şeffaf beyaza (#FFFFFFFF) mesafe olan 2.0'dır.

Varsayılan tolerans 2,0'dır; yani varsayılan ayarına göre, tespit edilen renkler, uzak olsa bile paletteki en yakın renge ayarlanacaktır. Özel tolerans ayarlarını belirleyerek, ayarlamayı bireysel palet renkleriyle sınırlandırabilirsiniz.

Eğer 0-255 aralığındaki renklerle çalışmaya alışkınsanız, kesirli değerini bulmak için 255'e bölmeniz yeterli.


Reel sayı, 0.0 ila 100.0, varsayılan: 0.125

Bir şeklin piksel cinsinden minimum alanı. Bundan daha küçük olan şekiller çıkarılmaktadır.


Enum, varsayılan: svg

Çıktı dosya formatı.

SVG Seçenekleri:


Enum, varsayılan: svg_1_1

SVG sürümü özelliğini SVG etiketinde belirtin. Detaylar


Boolean, varsayılan: false

Resmin boyut özelliklerinin SVG etiketine dahil edilmesi. true olduğunda görüntüleyiciler SVG'yi genelde sabit bir boyutta dönüştürecektir. false olduğunda görüntüleyiciler genelde SVG ölçeğinin mevcut olan alana sığmasına izin verecektir. Detaylar


Boolean, varsayılan: false

true olduğunda Adobe Illustrator'ın içeri aktaramadığı seçenekleri seçilemez hale getiririz. Detaylar

DXF Seçenekleri:


Enum, varsayılan: lines_and_arcs

DXF okuyucuları kabiliyetleri açısından çok ciddi farklar göstermektedir. Bu seçenek sizi çıktıyı DXF okuyucunuzun gerçekten desteklediği ilkelleri çizme konusunda sınırlandırma konusunda imkan sağlamaktadır. Detaylar

Bit Eşlem Seçenekleri:

Yalnızca output.file_format=png olduğunda geçerli


Enum, varsayılan: anti_aliased
Değer Kenar yumuşatma modu
anti_aliased Şekiller arasındaki sınır boyunca yer alan piksellerin renkleri her bir şeklin kapsadığı piksel alanının belli bölümüne göre karıştırılacaktır.
aliased Piksellere pikselin geometrik merkezini içeren şeklin rengi atanır.

Enum, varsayılan: fill_shapes

Çıktının fırça darbesiyle çizilmesini mi yoksa doldurulmasını mı isteyeceğinizi belirtin. Şekilleri fırça darbesiyle çizme ve şekillerin arasındaki kenarları fırça darbesiyle çizme arasında hafif bir fark vardır. Lütfen açıklama için detaylı belgeye bakınız


Enum, varsayılan: cutouts

Aşağıdaki şekillerdeki kesitlere mi yerleştirileceğine (cutouts) yoksa birbirlerinin üzerine mi istifleneceklerine (stacked) karar verir. Detaylar


Enum, varsayılan: none
Değer Şekil gruplama
none Gruplama yok
color Renge göre, output.shape_stacking ile etkileşimde
parent İçerdiği şekle göre
layer Çizim sırasına göre Katman
Detaylar

Boolean, varsayılan: false

Belirlenen daireleri, elipsleri, dikdörtgenleri, üçgenleri ve yıldızları sıradan kıvrımlara düzleştir. Detaylar

Eğriler:


Boolean, varsayılan: true

Karesel Bezier Kıvrımlarına izin verilmesi. Detaylar


Boolean, varsayılan: true

Kübik Bezier Kıvrımlarına izin verilmesi. Detaylar


Boolean, varsayılan: true

Dairesel Yaylara izin verilmesi. Detaylar


Boolean, varsayılan: true

Eliptik Yaylara izin verilmesi. Detaylar


Reel sayı, 0.001 ila 1.0, varsayılan: 0.1

İzin verilmeyen kıvrım türlerini genellikle izin verilen kıvrım türleriyle değiştirmeye çalışıyoruz. Kesin geri dönüş dizileri için ayrıntılara bakın.

Ancak, izin vermediğiniz kıvrım sayısı belli sayıya ulaştığında bunların en yakınlarını çizgi segmentleriyle bulmak durumunda kalabiliriz. Bu parametre bir eğri ile yakınındaki çizgiler arasındaki piksel cinsinden maksimum uzaklığı belirtir. Detaylar

Boşluk Doldurucu:


Boolean, varsayılan: true

Vektör okuyucularda sık görülen böcekleri dönüştüren beyaz çizgiyi es geçme. Detaylar


Boolean, varsayılan: false

Boşluk doldurucu fırça darbelerinin kırpılması. output.shape_stacking=stacked olduğunda ya kırpma yap ya da ölçeklendirmesiz fırça darbesi kullan. Detaylar


Boolean, varsayılan: true

Ölçeklendirmesiz boşluk doldurma fırça darbesi kullanımı. output.shape_stacking=stacked olduğunda ya kırpma yap ya da ölçeklendirmesiz fırça darbesi kullan. Detaylar


Reel sayı, 0.0 ila 5.0, varsayılan: 2.0

Boşluk doldurucu fırça darbesinin genişliği. Detaylar

output.draw_style, stroke_shapes veya stroke_edges olduğunda fırça darbesi stili


Boolean, varsayılan: true

Ölçeklendirmesiz bir fırça darbesi kullanımı. Detaylar


Boolean, varsayılan: false

Renk geçersiz kılma veya şeklin tahmini rengini kullanma. Detaylar


Format: '#RRGGBB', örnek #FF00FF, varsayılan: #000000

Geçersiz kılınan renk. Detaylar


Reel sayı, 0.0 ila 5.0, varsayılan: 1.0

Fırça darbesi eni. Detaylar

Çıktı Boyutu:


Reel sayı, 0.0 ila 1000.0
İsteğe bağlı

Uniform boyut ayarı faktörü. Eğer belirtilmiş ise, bu output.size.width ve output.size.height önüne geçmektedir.


Reel sayı, 0.0 ila 1.0E12
İsteğe bağlı

output.size.unit ile belirtilen birimlerdeki en. En ve yükseklikten bir tanesini belirtildiyse, diğeri en-boy oranını korumak için otomatik olarak hesaplanmaktadır.


Reel sayı, 0.0 ila 1.0E12
İsteğe bağlı

output.size.unit ile belirtilen birimlerdeki yükseklik. En ve yükseklikten bir tanesini belirtildiyse, diğeri en-boy oranını korumak için otomatik olarak hesaplanmaktadır.


Enum, varsayılan: none

En ve yükseklik için birim ölçümü. Bunlardan pt, in, cm ve mm fiziksel birim, none ve px ise fiziksel olmayan birimlerdir. Bu ayrımlar output.size.input_dpi ve output.size.output_dpi ile etkileşim kurmaktadır.


Enum, varsayılan: preserve_inset

Değer Boyut Ayarı Kuralı
preserve_inset Dışarı taşma olmadan diğer boyutlarda boşluk kalması amacıyla daha dar olan boyuta sığması için uniform boyut ayarı yap
preserve_overflow Daha dar alan boyuttan taşacak şekilde, daha az dar olan boyuta sığması için uniform boyut ayarı yap
stretch Belirtilen en ve yüksekliğe sığması için uniform olmayan boyut ayarı yap
Her iki preserve seçeneği için de, serbest boyuttaki pozisyon output.size.align_x veya output.size.align_y ile kontrol edilmektedir.


Reel sayı, 0.0 ila 1.0, varsayılan: 0.5

output.size.aspect_ratio = preserve_inset veya preserve_overflow için yatay hizalama.

Değer Yatay Hizalama
0.0 Sola hizalı
0.5 Yatay ortalanmış
1.0 Sağa hizalı
0.0 ila 1.0 arasındaki herhangi bir değer olabilir.


Reel sayı, 0.0 ila 1.0, varsayılan: 0.5

output.size.aspect_ratio = preserve_inset veya preserve_overflow için dikey hizalama.

Değer Dikey Hizalama
0.0 Üste hizalı
0.5 Dikey ortalanmış
1.0 Taban hizalı
0.0 ila 1.0 arasındaki herhangi bir değer olabilir.


Reel sayı, 1.0 ila 1000000.0
İsteğe bağlı

Girdi resminin DPI'yı mevcut olduğu durumlarda dosyadan okunur. Bu parametre size bu değeri geçersiz kılma imkanı verir. Çıkan değer girdi resminin fiziksel boyutunu hesaplamak için kullanılmaktadır. Bu da çıktı için fiziksel birimler belirtilmiş ancak kesin en veya yükseklik belirtilmemişse çıktı boyutunu hesaplamak için kullanılmaktadır.


Reel sayı, 1.0 ila 1000000.0
İsteğe bağlı

Çıktı resminin DPI'yı. Fiziksel birimler belirtildiğinde bit eşlem çıktısının piksel boyutunu hesaplamak için kullanılmaktadır.

İndir POST
https://api.vectorizer.ai/api/v1/download

Bu son nokta size şu izinleri verir:

  1. Önizleme API çağrısının ardından tam üretim sonucunu indirin.

    Ek çıktı formatlarını indirimli indirme formatı fiyatlarıyla daha sonra indirebilmeniz için yanıta X-Receipt başlığını ekliyoruz.

  2. Hepsini sıfırdan vektörleştirmek zorunda kalmadan aynı resim için çok sayıda çıktı formatını ve işleme seçeneğini indirimli indirme formatı fiyatından indirebilirsiniz.

Parametreler



İsteğe bağlı

policy.retention_days > 0 olan, daha önceki bir vektörleştirme API çağrısındaki X-Image-Token başlığında döndürülmüş olan bir Resim Belirtecidir.


Dize
İsteğe bağlı

Önizlemeyi bir üretim sonucuna yükselttiğiniz, daha önceki bir indirme API'si çağrısında X-Receipt başlığında döndürülen bir alındı.

İndirimli indirme formatı ücretinden faydalanabilmek için, önizleme Resim Belirteci gönderirken alındısını da dahil etmelisiniz.


Enum, varsayılan: svg

Çıktı dosya formatı.

SVG Seçenekleri:


Enum, varsayılan: svg_1_1

SVG sürümü özelliğini SVG etiketinde belirtin. Detaylar


Boolean, varsayılan: false

Resmin boyut özelliklerinin SVG etiketine dahil edilmesi. true olduğunda görüntüleyiciler SVG'yi genelde sabit bir boyutta dönüştürecektir. false olduğunda görüntüleyiciler genelde SVG ölçeğinin mevcut olan alana sığmasına izin verecektir. Detaylar


Boolean, varsayılan: false

true olduğunda Adobe Illustrator'ın içeri aktaramadığı seçenekleri seçilemez hale getiririz. Detaylar

DXF Seçenekleri:


Enum, varsayılan: lines_and_arcs

DXF okuyucuları kabiliyetleri açısından çok ciddi farklar göstermektedir. Bu seçenek sizi çıktıyı DXF okuyucunuzun gerçekten desteklediği ilkelleri çizme konusunda sınırlandırma konusunda imkan sağlamaktadır. Detaylar

Bit Eşlem Seçenekleri:

Yalnızca output.file_format=png olduğunda geçerli


Enum, varsayılan: anti_aliased
Değer Kenar yumuşatma modu
anti_aliased Şekiller arasındaki sınır boyunca yer alan piksellerin renkleri her bir şeklin kapsadığı piksel alanının belli bölümüne göre karıştırılacaktır.
aliased Piksellere pikselin geometrik merkezini içeren şeklin rengi atanır.

Enum, varsayılan: fill_shapes

Çıktının fırça darbesiyle çizilmesini mi yoksa doldurulmasını mı isteyeceğinizi belirtin. Şekilleri fırça darbesiyle çizme ve şekillerin arasındaki kenarları fırça darbesiyle çizme arasında hafif bir fark vardır. Lütfen açıklama için detaylı belgeye bakınız


Enum, varsayılan: cutouts

Aşağıdaki şekillerdeki kesitlere mi yerleştirileceğine (cutouts) yoksa birbirlerinin üzerine mi istifleneceklerine (stacked) karar verir. Detaylar


Enum, varsayılan: none
Değer Şekil gruplama
none Gruplama yok
color Renge göre, output.shape_stacking ile etkileşimde
parent İçerdiği şekle göre
layer Çizim sırasına göre Katman
Detaylar

Boolean, varsayılan: false

Belirlenen daireleri, elipsleri, dikdörtgenleri, üçgenleri ve yıldızları sıradan kıvrımlara düzleştir. Detaylar

Eğriler:


Boolean, varsayılan: true

Karesel Bezier Kıvrımlarına izin verilmesi. Detaylar


Boolean, varsayılan: true

Kübik Bezier Kıvrımlarına izin verilmesi. Detaylar


Boolean, varsayılan: true

Dairesel Yaylara izin verilmesi. Detaylar


Boolean, varsayılan: true

Eliptik Yaylara izin verilmesi. Detaylar


Reel sayı, 0.001 ila 1.0, varsayılan: 0.1

İzin verilmeyen kıvrım türlerini genellikle izin verilen kıvrım türleriyle değiştirmeye çalışıyoruz. Kesin geri dönüş dizileri için ayrıntılara bakın.

Ancak, izin vermediğiniz kıvrım sayısı belli sayıya ulaştığında bunların en yakınlarını çizgi segmentleriyle bulmak durumunda kalabiliriz. Bu parametre bir eğri ile yakınındaki çizgiler arasındaki piksel cinsinden maksimum uzaklığı belirtir. Detaylar

Boşluk Doldurucu:


Boolean, varsayılan: true

Vektör okuyucularda sık görülen böcekleri dönüştüren beyaz çizgiyi es geçme. Detaylar


Boolean, varsayılan: false

Boşluk doldurucu fırça darbelerinin kırpılması. output.shape_stacking=stacked olduğunda ya kırpma yap ya da ölçeklendirmesiz fırça darbesi kullan. Detaylar


Boolean, varsayılan: true

Ölçeklendirmesiz boşluk doldurma fırça darbesi kullanımı. output.shape_stacking=stacked olduğunda ya kırpma yap ya da ölçeklendirmesiz fırça darbesi kullan. Detaylar


Reel sayı, 0.0 ila 5.0, varsayılan: 2.0

Boşluk doldurucu fırça darbesinin genişliği. Detaylar

output.draw_style, stroke_shapes veya stroke_edges olduğunda fırça darbesi stili


Boolean, varsayılan: true

Ölçeklendirmesiz bir fırça darbesi kullanımı. Detaylar


Boolean, varsayılan: false

Renk geçersiz kılma veya şeklin tahmini rengini kullanma. Detaylar


Format: '#RRGGBB', örnek #FF00FF, varsayılan: #000000

Geçersiz kılınan renk. Detaylar


Reel sayı, 0.0 ila 5.0, varsayılan: 1.0

Fırça darbesi eni. Detaylar

Çıktı Boyutu:


Reel sayı, 0.0 ila 1000.0
İsteğe bağlı

Uniform boyut ayarı faktörü. Eğer belirtilmiş ise, bu output.size.width ve output.size.height önüne geçmektedir.


Reel sayı, 0.0 ila 1.0E12
İsteğe bağlı

output.size.unit ile belirtilen birimlerdeki en. En ve yükseklikten bir tanesini belirtildiyse, diğeri en-boy oranını korumak için otomatik olarak hesaplanmaktadır.


Reel sayı, 0.0 ila 1.0E12
İsteğe bağlı

output.size.unit ile belirtilen birimlerdeki yükseklik. En ve yükseklikten bir tanesini belirtildiyse, diğeri en-boy oranını korumak için otomatik olarak hesaplanmaktadır.


Enum, varsayılan: none

En ve yükseklik için birim ölçümü. Bunlardan pt, in, cm ve mm fiziksel birim, none ve px ise fiziksel olmayan birimlerdir. Bu ayrımlar output.size.input_dpi ve output.size.output_dpi ile etkileşim kurmaktadır.


Enum, varsayılan: preserve_inset

Değer Boyut Ayarı Kuralı
preserve_inset Dışarı taşma olmadan diğer boyutlarda boşluk kalması amacıyla daha dar olan boyuta sığması için uniform boyut ayarı yap
preserve_overflow Daha dar alan boyuttan taşacak şekilde, daha az dar olan boyuta sığması için uniform boyut ayarı yap
stretch Belirtilen en ve yüksekliğe sığması için uniform olmayan boyut ayarı yap
Her iki preserve seçeneği için de, serbest boyuttaki pozisyon output.size.align_x veya output.size.align_y ile kontrol edilmektedir.


Reel sayı, 0.0 ila 1.0, varsayılan: 0.5

output.size.aspect_ratio = preserve_inset veya preserve_overflow için yatay hizalama.

Değer Yatay Hizalama
0.0 Sola hizalı
0.5 Yatay ortalanmış
1.0 Sağa hizalı
0.0 ila 1.0 arasındaki herhangi bir değer olabilir.


Reel sayı, 0.0 ila 1.0, varsayılan: 0.5

output.size.aspect_ratio = preserve_inset veya preserve_overflow için dikey hizalama.

Değer Dikey Hizalama
0.0 Üste hizalı
0.5 Dikey ortalanmış
1.0 Taban hizalı
0.0 ila 1.0 arasındaki herhangi bir değer olabilir.


Reel sayı, 1.0 ila 1000000.0
İsteğe bağlı

Girdi resminin DPI'yı mevcut olduğu durumlarda dosyadan okunur. Bu parametre size bu değeri geçersiz kılma imkanı verir. Çıkan değer girdi resminin fiziksel boyutunu hesaplamak için kullanılmaktadır. Bu da çıktı için fiziksel birimler belirtilmiş ancak kesin en veya yükseklik belirtilmemişse çıktı boyutunu hesaplamak için kullanılmaktadır.


Reel sayı, 1.0 ila 1000000.0
İsteğe bağlı

Çıktı resminin DPI'yı. Fiziksel birimler belirtildiğinde bit eşlem çıktısının piksel boyutunu hesaplamak için kullanılmaktadır.

Sil POST
https://api.vectorizer.ai/api/v1/delete

policy.retention_days > 0 ile vektörleştirilen resimler talep edilen zaman zarfında saklanır ve hemen ardından otomatik olarak silinir.

Normalde bu son noktayı çağırmaya gerek yoktur. Bu size saklama dönemini sona ermesinden önce resimleri silebilmeniz amacıyla sunulmaktadır. Resmi daha önce silmeniz size kalan saklama günleri için geri ödeme imkanı sunmamaktadır.

Parametreler



İsteğe bağlı

policy.retention_days > 0 olan, daha önceki bir vektörleştirme API çağrısındaki X-Image-Token başlığında döndürülmüş olan bir Resim Belirtecidir.

Yanıt Özellikleri

success

true Resim Belirtecinin silindiği onaylanmaktadır.

Örnek Yanıt

{
  "success" : true
}

Hesap Durumu GET
https://api.vectorizer.ai/api/v1/account

Hesabınıza ilişkin abonelik statüsü ve kalan kredi sayısı gibi temel bilgileri görün.

Parametreler

Yok

Yanıt Özellikleri

subscriptionPlan

Şu anda abone olduğunuz plan veya 'hiç'.

subscriptionState

Mevcut aboneliğinizin statüsü ('aktif' veya 'ödemesi gecikmiş') veya abone değilseniz 'sona erdi'.

credits

Hesabınızda kalan API kredisi sayısı. Halihazırda üyü değilseniz veya API-dışı bir plana üyeyseniz. Kesirli olabilir, o yüzden Çift olarak incelediğinizden emin olun.

Kullanıcı adı= API kimliği, Şifre= API Parolası

cURL

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

Örnek Yanıt

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

Geliştirici Changelog

TarihDeğiştir
1 Haz 2026 Oluşturulan istemciler ve API keşfi için OpenAPI 3.0 spesifikasyon indirmeleri eklendi. Resmi SDK paketi ve komut satırı istemci belgeleri eklendi.
4 Kas 2024 processing.shapes.min_area_px eklendi.
1 Eki 2024 Geliştirici entegrasyonlarına yardımcı olmak için bir AI sohbet botu eklendi.
23 Eyl 2024 Daha fazla işlem moduna imkan sağlamak için API'yi büyük miktarda genişlettik. Resim Belirteci, Alındı, çağrı başına fiyat başlıkları ve İndirme ve Silme son noktaları eklendi.
11 Haz 2024 processing.palette eklendi
4 Mar 2024 Zaman aşımlarıyla ilgili eklenen bölüm.
24 Oca 2024 Hesap Durumu uçnoktası eklendi. Hesap sayfasına son API hataları eklendi. Tüm API hata yanıtları listesi eklendi.
16 Oca 2024 Hatalı JSON Nesnesi belgelendi.
3 Eki 2023 output.gap_filler.enabled=true kodunun sonuç açısından processing.max_colors koduyla istenenden daha fazla renge neden olduğu netleştirildi.
20 Eyl 2023 mode eklendi
1 Ağu 2023 Aşağıdaki seçenekleri içeren, çok özellikli çıktı boyutu seçenekleri eklendi: 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 ve output.size.output_dpi. Bit eşlem çıktı seçenekleri grubu için tek bir seçenek eklenmiştir: output.bitmap.anti_aliasing_mode.
7 Haz 2023 processing.max_colors eklendi
31 May 2023 API parametreleri büyük oranda genişletildi. API son noktası güncellendi.
10 Mar 2023 İlk piyasaya sürüm.
API Anahtarı alın