{"id":13578765,"url":"https://github.com/vector-express/vectorexpress-api","last_synced_at":"2025-04-05T19:33:39.025Z","repository":{"id":45895976,"uuid":"118024730","full_name":"vector-express/vectorexpress-api","owner":"vector-express","description":"Vector Express is a free service and API for converting, analyzing and processing vector files.","archived":false,"fork":false,"pushed_at":"2023-01-17T18:27:23.000Z","size":219,"stargazers_count":88,"open_issues_count":1,"forks_count":13,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-05-18T19:19:06.784Z","etag":null,"topics":["cam","cnc","conversion","conversion-paths","converter","converting-vector-files","dwg","dxf","eps","librsvg","pdf","pdf2svg","png","pstoedit","svg","svgo","vector","vector-graphics"],"latest_commit_sha":null,"homepage":"https://vector.express","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vector-express.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"vector-express","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2018-01-18T18:57:55.000Z","updated_at":"2024-04-19T12:15:50.000Z","dependencies_parsed_at":"2023-02-10T11:05:36.239Z","dependency_job_id":null,"html_url":"https://github.com/vector-express/vectorexpress-api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vector-express%2Fvectorexpress-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vector-express%2Fvectorexpress-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vector-express%2Fvectorexpress-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vector-express%2Fvectorexpress-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vector-express","download_url":"https://codeload.github.com/vector-express/vectorexpress-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393095,"owners_count":20931804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cam","cnc","conversion","conversion-paths","converter","converting-vector-files","dwg","dxf","eps","librsvg","pdf","pdf2svg","png","pstoedit","svg","svgo","vector","vector-graphics"],"created_at":"2024-08-01T15:01:33.565Z","updated_at":"2025-04-05T19:33:38.283Z","avatar_url":"https://github.com/vector-express.png","language":null,"funding_links":["https://github.com/sponsors/vector-express"],"categories":["Others"],"sub_categories":[],"readme":"\u003cimg alt=\"Logo\" src=\"logo.svg\" width=300\u003e\n\n# [Vector Express](https://vector.express/pricing) - Free Vector Conversion, Analyzing and Processing API\n\n### Recent updates\n- New /get-svg-unit/ analyzer\n- New /cad2pdf/ and /cad2svg/ converter\n- /cad/ converter deprecated, replaced with /svg2cad/ converter\n- Internal improvements\n- /ungroup/ processor now has a \"selector\" parameter\n- New /change-attribute/ and /xslt/ processor\n- New /fix-illustrator-svg-font-names/ processor\n\nRead more: \u003chttps://vector.express/pricing\u003e\n\nAPI Frontend: https://vector.express\n\nVector Express is a free-to-use API for converting, analyzing and processing vector files. Made with love by [@vector\\_express](https://twitter.com/vector_express)\n\nIt runs a combination of different conversion programs that can be chained together to convert between a wide area of formats.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     | ✓  | ✓   | ✓   | ✓   | ✓   | ✓    | ✓   | ✓   | ✓  | ✓   |\n| Out    |    |     | ✓   | ✓   | ✓   |      | ✓   | ✓   | ✓  | ✓   |\n\nFeel free to use it in your project. It does not support CORS, so you need to run it through/on a back-end.\n\n### 💌 Stay updated\n\nYou can sign up to our newsletter here to be informed about new features, upcoming changes and deprecations:\n\u003chttps://buttondown.email/vector.express\u003e\n\n### Table of Contents\n* 📦  [**Libraries**](#libraries)\n* 🏃‍  [**Quickstart**](#quickstart)\n* 🪄  [**Convert**](#convert)\n  * [Get possible conversion paths between formats](#convert-get-formats)\n  * [Convert a file](#convert-file)\n  * [Available converter](#available-converter)\n    * [/cad2pdf/](#converter-cad2pdf)\n    * [/cad2svg/](#converter-cad2svg)\n    * [/cadlib/](#converter-cadlib)\n    * [/gs/](#converter-gs)\n    * [/hp2xx/](#converter-hp2xx)\n    * [/libcdr/](#converter-libcdr)\n    * [/librsvg/](#converter-librsvg)\n    * [/pdf2svg/](#converter-pdf2svg)\n    * [/pstoedit/](#converter-pstoedit)\n    * [/svg2cad/](#converter-svg2cad)\n    * [/svgo/](#converter-svgo)\n    * [/uniconvertor/](#converter-uniconvertor)\n* 🔍  [**Analyze**](#analyze)\n  * [Analyze a file](#analyze-file)\n  * [Available analyzers](#available-analyzers)\n    * [/svg/get-svg-unit/](#analyzer-svg-get-svg-unit)\n    * [/svg/groups/](#analyzer-svg-groups)\n    * [/svg/linearmovement/](#analyzer-svg-linearmovement)\n* ⚙️ [**Process**](#process)\n  * [Process a file](#process-file)\n  * [Available processors](#available-processors)\n    * [/svg/boolean-operation/](#processor-svg-boolean-operation)\n    * [/svg/change-attribute/](#processor-change-attribute)\n    * [/svg/convert-to-path/](#processor-svg-convert-to-path)\n    * [/svg/exclude-groups/](#processor-svg-exclude-groups)\n    * [/svg/flatten-beziers/](#processor-svg-flatten-beziers)\n    * [/svg/fix-illustrator-svg-font-names/](#processor-svg-fix-illustrator-svg-font-names)\n    * [/svg/include-only-groups/](#processor-svg-include-only-groups)\n    * [/svg/ungroup/](#processor-svg-ungroup)\n    * [/svg/xpath/](#processor-svg-xpath)\n    * [/svg/xslt/](#processor-svg-xslt)\n* 📄  [**Get a file**](#get-file)\n* 📨  [**Using an existing file**](#using-existing-file)\n* 🛑  [**Limits**](#limits)\n* 🔼  [**Increase limits?**](#increase-limits)\n* 💡  [**Feature request?**](#feature-request)\n* 🙊  [**Feedback**](#feedback)\n\n## 📦 \u003ca name=\"libraries\"\u003eLibraries\u003c/a\u003e\n\n- [Node.js - @vector-express/vectorexpress-nodejs](https://github.com/vector-express/vectorexpress-nodejs)\n\n\n## 🏃‍♀️ \u003ca name=\"quickstart\"\u003eQuickstart\u003c/a\u003e\n\n[![Run in Postman](https://run.pstmn.io/button.svg)](https://app.getpostman.com/run-collection/890e639ae3094e3617c0)\n\n1. GET the a compatible conversion `path` for your input format and desired output format.\n\n`curl https://vector.express/api/v2/public/convert/dxf/auto/svg/`\n\n2. POST to the the first path, with your file as the body\n\n`curl --data-binary @myvector.dxf https://vector.express/api/v2/public/convert/dxf/cadlib/svg/`\n\n3. GET the file from the `resultUrl`\n\n`curl https://vector.express/api/v2/public/files/[id].svg --output converted.svg`\n\n\n\n## 🪄 \u003ca name=\"convert\"\u003eConvert\u003c/a\u003e\n\n### \u003ca name=\"convert-get-formats\"\u003eGet possible conversion paths between formats\u003c/a\u003e\n\nBy requesting the conversion paths you can find out the most efficient path between your formats.\n\n`GET https://vector.express/api/v2/public/convert/ext/auto/ext`\n\n\n### \u003ca name=\"convert-file\"\u003eConvert a file\u003c/a\u003e\n\nYou can up chain to three programs in the conversion path, and even configure them. See below for all programs and their options.\n\n`POST https://vector.express/api/v2/public/convert/ext/prog1/ext/prog2/ext?prog1-opt=val\u0026prog2-opt=val`\n\n\n### Available converters\n\n#### \u003ca name=\"converter-cad2pdf\"\u003e/cad2pdf/\u003c/a\u003e\n\nA converter for converting dwg and dxf cad files into pdf.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     | ✓   | ✓   |     |      |     |     |    |     |\n| Out    |    |     |     |     |     |      | ✓   |     |    |     |\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|cad2pdf-auto-fit|Boolean|Automatically fit the drawing to to the paper size|\n|cad2pdf-auto-orientation|Boolean|Automatically orient the drawing to fit the paper|\n|cad2pdf-center|Boolean|Center the drawing|\n|cad2pdf-point-size|Number|Point size in mm|\n|cad2pdf-grayscale|Boolean|Grayscale|\n|cad2pdf-landscape|Boolean|Use landscape paper|\n|cad2pdf-margin|Number|Margin in millimeter|\n|cad2pdf-paper-size|String|Paper size in the format \"WxH\"|\n|cad2pdf-scale|Number|Scale the drawing|\n|cad2pdf-unit|String|Override the drawing's unit (in/m/mm)|\n\n#### \u003ca name=\"converter-cad2svg\"\u003e/cad2svg/\u003c/a\u003e\n\nA converter for converting dwg and dxf cad files into svg.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     | ✓   | ✓   |     |      |     |     |    |     |\n| Out    |    |     |     |     |     |      |     |     |    | ✓   |\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|cad2svg-expand-page-for-stroke-width|Boolean|Expand the page to accomodate the stroke width|\n|cad2svg-block|String|Export a specific block|\n|cad2svg-margin|Number|Margin|\n|cad2svg-include-bitmaps|Boolean|Include bitmaps in the export|\n|cad2svg-layers|String|Comma delimted list of layers to export|\n|cad2svg-unit|String|Override the drawing's unit (in/m/mm)|\n\n#### \u003ca name=\"converter-cadlib\"\u003e/cadlib/\u003c/a\u003e\n\nCustom CadLib based converter for AutoCAD files.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     | ✓   | ✓   |     |      |     |     |    |     |\n| Out    |    |     |     | ✓   |     |      |     |     |    | ✓ *1|\n\n*1 Arcs and curves are converted to lines\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|cadlib-epsilon|Number||\n|cadlib-arc-segments|Number|Line segment amount on arcs|\n|cadlib-arc-segments-minimum|Number|The minimum amount of segments on arc|\n|cadlib-space-strategy|String|Which ACAD space to prefer for export\u003cbr/\u003e`prefer_native_space` / `prefer_paper_space` / `prefer_model_space`|\n\n\n#### \u003ca name=\"converter-gs\"\u003e/gs/\u003c/a\u003e\n\n[Ghostscript](https://www.ghostscript.com/) based converter.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     | ✓  |     |     |     | ✓   |      | ✓   |     | ✓  |     |\n| Out    |    |     |     |     | ✓   |      | ✓   |     | ✓  |     |\n\n\n#### \u003ca name=\"converter-hp2xx\"\u003e/hp2xx/\u003c/a\u003e\n\n[hp2xx](https://www.gnu.org/software/hp2xx/) based converter for postscript.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     |     | ✓    | ✓   |     |    |     |\n| Out    |    |     |     |     | ✓   |      |     |     |    | ✓   |\n\n\n#### \u003ca name=\"converter-libcdr\"\u003e/libcdr/\u003c/a\u003e\n\n[libcdr](https://wiki.documentfoundation.org/DLP/Libraries/libcdr) based converter for CorelDRAW files.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    | ✓   |     |     |     |      |     |     |    |     |\n| Out    |    |     |     |     |     |      |     |     |    | ✓   |\n\n\n#### \u003ca name=\"converter-librsvg\"\u003e/librsvg/\u003c/a\u003e\n\n[librsvg](https://github.com/GNOME/librsvg) based converter for converting svg files to various formats.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     |     |      |     |     |    | ✓   |\n| Out    |    |     |     |     | ✓   |      | ✓   |     | ✓  |     |\n\n\n#### \u003ca name=\"converter-pdf2svg\"\u003e/pdf2svg/\u003c/a\u003e\n\n[pdf2svg](https://github.com/dawbarton/pdf2svg) based converter for pdf files to svg.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     |     |      | ✓   |     |    |     |\n| Out    |    |     |     |     |     |      |     |     |    | ✓   |\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|pdf2svg-page|Number|Which page to export|\n\n\n#### \u003ca name=\"converter-pstoedit\"\u003e/pstoedit/\u003c/a\u003e\n\n[pstoedit](http://www.calvina.de/pstoedit/) for converting eps files to dxf.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     | ✓   |      |     |     |    |     |\n| Out    |    |     |     | ✓   |     |      |     |     |    |     |\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|pstoedit-page|Number|Which page to export|\n|pstoedit-xscale|Number|X scale|\n|pstoedit-yscale|Number|Y scale|\n|pstoedit-xshift|Number|X shift|\n|pstoedit-yshift|Number|Y shift|\n|pstoedit-centered|Boolean|Center drawing|\n|pstoedit-rgb|Boolean|\n\n#### \u003ca name=\"converter-cad\"\u003e/svg2cad/\u003c/a\u003e\n\nFor converting svg files into dxf or dwg cad files.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     |     |      |     |     |    | ✓   |\n| Out    |    |     | ✓   | ✓   |     |      |     |     |    |     |\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|svg2cad-nojoin|Boolean|If enabled, do not join adjacent lines|\n|svg2cad-version|String|Which AutoCAD version to use\u003cbr/\u003e`R32` / `R27` / `R24` / `R21` / `R18` / `R15` / `R14`|\n\n#### \u003ca name=\"convertor-svgo\"\u003e/svgo/\u003c/a\u003e\n\n[SVGO](https://github.com/svg/svgo) is an svg optimizer.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     |     |      |     |     |    | ✓   |\n| Out    |    |     |     |     |     |      |     |     |    | ✓   |\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|svgo-config|String|JSON string of [configuration](https://github.com/svg/svgo#configuration), representing the default export configuration object. This overrides all other configuration parameters if set|\n|svgo-configSvgo2Syntax|Boolean|Enable this to use the SVGO 2.0 configuration syntax, otherwise v1 syntax will be used|\n|svgo-enable|String|Which plugins to enable (see SVGO docs)|\n|svgo-disable|String|Which plugins to disable (see SVGO docs)|\n|svgo-indent|String||\n|svgo-pretty|Boolean|Prettify code|\n|svgo-precision|Number|Precision|\n|svgo-multipass|Boolean||\n\n\n#### \u003ca name=\"converter-uniconvertor\"\u003e/uniconvertor/\u003c/a\u003e\n\n[Uniconvertor](https://sk1project.net/uc2/) based converter for various formats.\n\n| Format | ai | cdr | dwg | dxf | eps | hpgl | pdf | plt | ps | svg |\n|:-------|:--:|:---:|:---:|:---:|:---:|:----:|:---:|:---:|:--:|:---:|\n| In     |    |     |     |     | ✓   |      |     | ✓   |    | ✓   |\n| Out    |    |     |     |     |     |      | ✓   | ✓   |    | ✓   |\n\n\n\n## \u003ca name=\"analyze\"\u003e🔍 Analyze\u003c/a\u003e\n\n### \u003ca name=\"analyze-file\"\u003eAnalyze a file\u003c/a\u003e\n\nYou can analyze vector files using this endpoint. The result is always a json file. The analyzers can be configured through the query string.\n\n`POST https://vector.express/api/v2/public/analyze/ext/analyzer`\n\n`POST https://vector.express/api/v2/public/analyze/ext/analyzer1?analyzer-opt1=val\u0026analyzer-opt2=val`\n\n### \u003ca name=\"available-analyzers\"\u003eAvailable analyzers\u003c/a\u003e\n\n#### \u003ca name=\"analyzer-svg-get-svg-unit\"\u003e/svg/get-svg-unit/\u003c/a\u003e\n\nGets the unit from an svg document. Also returns an `explicit` parameter which is true if the unit is explicitly set. (otherwise the unit is px, as per the svg standard)\n\n#### \u003ca name=\"analyzer-svg-groups\"\u003e/svg/groups/\u003c/a\u003e\n\nReturns a list of all groups in an svg.\n\n#### \u003ca name=\"analyzer-svg-linearmovement\"\u003e/svg/linearmovement/\u003c/a\u003e\n\nSimulates 2D linear movement along all paths in the svg. This can be used for 2D CNC estimation, for example laser cutting, routing, knife cutting and more.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|linearmovement-jerk|Number|An arbitrary unit setting the amount of jerk in the movement. Higher number = less deceleration around tight corners.|\n|linearmovement-mm-per-s|Number|The speed to move along the paths, in mm/s.|\n|linearmovement-drawing-unit|String|Which unit the SVG is drawn in.\u003cbr/\u003e`mm` / `in` / `pt` / `px`|\n|linearmovement-path-info|Boolean|If enabled, information about individual paths and path segments are included in the outputs.|\n\n\n\n## \u003ca name=\"process\"\u003e⚙️ Process\u003c/a\u003e\n\n### \u003ca name=\"process-file\"\u003eProcess a file\u003c/a\u003e\n\nYou can process vector files using this endpoint. The processors can be configured through the query string.\n\n`POST https://vector.express/api/v2/public/process/ext/processor`\n\n`POST https://vector.express/api/v2/public/process/ext/processor?processor-opt1=val\u0026processor-opt2=val`\n\n### \u003ca name=\"available-processors\"\u003eAvailable processors\u003c/a\u003e\n\n#### \u003ca name=\"processor-svg-boolean-operation\"\u003e/svg/boolean-operation/\u003c/a\u003e\n\nPerforms a boolean operation on _target_ element(s) using _tool_ element(s).\n\nKeep in mind that this *will not work* on grouped elements and/or non-path elements. Please run the `convert-to-path` and `ungroup` processors on the drawing first.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|boolean-operation-operation|String|Which operation to perform. Default is `union`.\u003cbr/\u003e`union` / `difference` / `intersection` / `exclusion` / `division` / `cut-path` / `combine`  / `break-apart`|\n|boolean-operation-tool-paths|String|[XPath](https://www.w3schools.com/xml/xpath_syntax.asp) selector* to define the elements to use as the tool. Default is \"//svg:path\".|\n|boolean-operation-target-paths|String|[XPath](https://www.w3schools.com/xml/xpath_syntax.asp) selector* to define the elements to use as the target. Default is \"//svg:path\".|\n\n\\* Please note that elements need to be prefixed with `svg:` to match the SVG namespace. E.g. to select all elements elements with a white-fill style: `//svg:path[contains(@style,'#ffffff')`\n\n#### \u003ca name=\"processor-svg-convert-to-path\"\u003e/svg/change-attribute/\u003c/a\u003e\n\nAllows modification of attributes or inline CSS properties on certain elements. This can be used to set fill, stroke and many other parameters. You can also use an existing attribute value to set the new one. (For example, setting an outline to match the fill of a path) \n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|change-attribute-set-attr|String|Which attribute to set. Required.|\n|change-attribute-target-elements|String|Which set of element types to affect, separated with a comma. Required.|\n|change-attribute-to-value|String|What value to set the attribute to.|\n|change-attribute-to-attr-value|String|This can be set to get the value from another attribute on the same element. If this is set, \"to-value\" is ignored.|\n|change-attribute-to-attr-value-fallback|String|An optional fallback to set the attribute to if the attribute from \"to-attr-value\" has no value.|\n|change-attribute-override|String|If this is set, the value will always be set. If used in combination with not setting \"to-value\" or \"to-attr-value\", it will remove the attribute.|\n\n#### \u003ca name=\"processor-svg-convert-to-path\"\u003e/svg/convert-to-path/\u003c/a\u003e\n\nConverts elements (text*, circle, rectangles, etc.) to paths. If your SVG file is exported from Adobe Illustrator, consider running the [fix-illustrator-svg-font-names](#processor-svg-fix-illustrator-svg-font-names) processor first.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|convert-to-path-selector|String|[XPath](https://www.w3schools.com/xml/xpath_syntax.asp) selector** to define which elements to convert. Default is \"//svg:*\".|\n\n\\* A selection of open source fonts are compatible. Contact us if you need to convert an unsupported font.\u003cbr/\u003e\n\\** Please note that elements need to be prefixed with `svg:` to match the SVG namespace. E.g. to select all elements with a white-fill style: `//svg:path[contains(@style,'#ffffff')`\n\n#### \u003ca name=\"processor-svg-exclude-groups\"\u003e/svg/exclude-groups/\u003c/a\u003e\n\nExcludes certain groups from an SVG.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|exclude-groups-groups|String|A list of group ID's to exclude, separated using the NUL syntax (%00)|\n\n#### \u003ca name=\"processor-svg-flatten-beziers\"\u003e/svg/flatten-beziers/\u003c/a\u003e\n\nFlattens beziers curves into straight lines.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|flatten-beziers-selector|String|[XPath](https://www.w3schools.com/xml/xpath_syntax.asp) selector* to select which path element's beziers to flatten.\n\n\\* Please note that elements need to be prefixed with `svg:` to match the SVG namespace. E.g. to select all elements elements with a white-fill style: `//svg:path[contains(@style,'#ffffff')`\n\n#### \u003ca name=\"processor-svg-fix-illustrator-svg-font-names\"\u003e/svg/fix-illustrator-svg-font-names/\u003c/a\u003e\n\nAttempts a correction of Adobe Illustrator's [incorrectly exported](https://gitlab.com/inkscape/inbox/-/issues/3673) font-family tag attribute/CSS property. For example, it will turn `font-family=\"OpenSans-Bold\"` into `font-family=\"OpenSans\" font-weight=\"bold\"`.\n\nThis is required for the [convert-to-path](#processor-svg-convert-to-path) processor to work.\n\n#### \u003ca name=\"processor-svg-include-only-groups\"\u003e/svg/include-only-groups/\u003c/a\u003e\n\nIncludes only certain groups from an SVG.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|include-only-groups–groups|String|A list of group ID's to include, separated using the NUL syntax (%00)|\n\n#### \u003ca name=\"processor-svg-ungroup\"\u003e/svg/ungroup/\u003c/a\u003e\n\nUngroups all elements and nested SVG's recursively. If you require a higher depth than 10, you can make multiple calls.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|ungroup-depth|Number|The depth to ungroup, 1 - 10. Default is 10.|\n|ungroup-selector|String|[XPath](https://www.w3schools.com/xml/xpath_syntax.asp) selector* to select certain groups or nested SVG's. If this is set, \"depth\" is ignored|\n\n\\* Please note that elements need to be prefixed with `svg:` to match the SVG namespace. E.g. to select all elements elements with a white-fill style: `//svg:path[contains(@style,'#ffffff')`\n\n#### \u003ca name=\"processor-svg-xpath\"\u003e/svg/xpath/\u003c/a\u003e\n\nReturns a section of an SVG file using the [XPath](https://www.w3schools.com/xml/xpath_syntax.asp) syntax.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|xpath-xpath|String|The XPath selector|\n|xpath-text-output|Boolean|If true, the resulting file is a .txt, otherwise it is an .xml file|\n|xpath-add-root|Boolean|Whether or not to add the root element|\n\n#### \u003ca name=\"processor-svg-xslt\"\u003e/svg/xslt/\u003c/a\u003e\n\nExclude certain elements with XSLT. This can be used to remove unwanted defs, specific elements and more.\n\n| Option | Type | Description |\n|:-------|:-----|:------------|\n|xslt-exclude-xpath|String|The [XPath](https://www.w3schools.com/xml/xpath_syntax.asp) * syntax selector to exclude from the document.|\n\n\\* Please note that elements need to be prefixed with `svg:` to match the SVG namespace. E.g. to select all elements elements with a white-fill style: `//svg:path[contains(@style,'#ffffff')`\n\n## 📄 \u003ca name=\"get-file\"\u003eGet a file\u003c/a\u003e\n\nAfter getting the result you can retrieve your files here.\n\n`GET https://vector.express/api/v2/public/files/filename.ext`\n\n\n\n## 📨 \u003ca name=\"using-existing-file\"\u003eUsing an existing file\u003c/a\u003e\n\nYou can also use an already uploaded or resulting file through the `use-file` query string.\n\n`POST https://vector.express/api/v2/public/convert/ext/prog1/ext/prog2?use-file=filename.ext`\n\n\n\n## 🛑 \u003ca name=\"limits\"\u003eLimits\u003c/a\u003e\n\nCurrently the public API is limited to 5 requests per hour, and a maximum output filesize of 1 MiB and certain CPU and memory limitations.\n\n\n\n## 🔼 \u003ca name=\"increase-limits\"\u003eIncrease limits?\u003c/a\u003e\n\nWe offer a [pay-as-you go plan](https://vector.express/pricing) that removes the rate limit and increases maximum file to 40 MiB.\n\n\n\n## 💡 \u003ca name=\"feature-request\"\u003eFeature request?\u003c/a\u003e\n\nGet in touch with us and we'll see what we can do!\n\n\n\n## 🙊 \u003ca name=\"feedback\"\u003eFeedback\u003c/a\u003e\n\nFeel free to open up an issue, or just tweet at us [@vector\\_express](https://twitter.com/vector_express).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvector-express%2Fvectorexpress-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvector-express%2Fvectorexpress-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvector-express%2Fvectorexpress-api/lists"}