{ "info": { "author": "Ethan Smith", "author_email": "ethan@ethanhs.me", "bugtrack_url": null, "classifiers": [], "description": "# pynanosvg\n[![Travis](https://img.shields.io/travis/ethanhs/pynanosvg.svg?style=flat-square)](https://travis-ci.org/ethanhs/pynanosvg) | [![AppVeyor](https://img.shields.io/appveyor/ci/ethanhs/pynanosvg-9m0yu.svg?style=flat-square)](https://ci.appveyor.com/project/ethanhs/pynanosvg-9m0yu)\n\nPynanosvg is a wrapper around [nanosvg](https://github.com/memononen/nanosvg)\na simple svg parsing library. I created pynanosvg because the only other\noptions in Python were the librsvg bindings, which are very large!\n\n# Install\n\nSimple:\n```\ngit clone --recursive https://github.com/ethanhs/pynanosvg.git\ncd pynanosvg\npython3 -m pip install -r requirements.txt\npython3 setup.py install\n```\n\nor just\n\n> python3 -m pip install pynanosvg\n\n# Usage\n\nThe following parses an SVG file, rasterizes it, and saves it as a PNG\n\n```python\n# import things\nfrom svg import Parser, Rasterizer, SVG\nfrom PIL import Image # for saving rasterized image\n# Parse from a file\nsvg = Parser.parse_file('my_cool_img.svg')\nprint('Image is {} by {}.'.format(svg.width, svg.height))\nrast = Rasterizer()\nbuff = rast.rasterize(svg, svg.width, svg.height)\nim = Image.frombytes('RGBA', svg.width, svg.height, buff)\nim.save('my_cool_img.png') # save the converted image!\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ethanhs/pynanosvg", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pynanosvg", "package_url": "https://pypi.org/project/pynanosvg/", "platform": "", "project_url": "https://pypi.org/project/pynanosvg/", "project_urls": { "Homepage": "https://github.com/ethanhs/pynanosvg" }, "release_url": "https://pypi.org/project/pynanosvg/0.3.1/", "requires_dist": null, "requires_python": "", "summary": "Wrapper around nanosvg", "version": "0.3.1" }, "last_serial": 4009320, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "0f480ab7301cae5b49ee6f200b2ee829", "sha256": "1df470e1101ccda4ed11c22c270f31f12209a11933ff89e56abbb5bcb251d6bc" }, "downloads": -1, "filename": "pynanosvg-0.1.0-cp36-cp36m-win_amd64.whl", "has_sig": false, "md5_digest": "0f480ab7301cae5b49ee6f200b2ee829", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 67710, "upload_time": "2017-11-26T18:48:52", "url": "https://files.pythonhosted.org/packages/fe/ae/d47caeb3e290169f457284eebfd2ce90cb3dbecf586796267b788f36f629/pynanosvg-0.1.0-cp36-cp36m-win_amd64.whl" }, { "comment_text": "", "digests": { "md5": "f149d32381f862e4208ae39c05aa1aac", "sha256": "a1480ecb7e26b995c92549782cf7807f629178ebc3bc066369a5b7cac3d300a5" }, "downloads": -1, "filename": "pynanosvg-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f149d32381f862e4208ae39c05aa1aac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46444, "upload_time": "2017-11-26T18:48:50", "url": "https://files.pythonhosted.org/packages/98/fb/bd3ca1755fca2341ed9b9a02c715e0131b7ada55ca64911e1ed92e293b2d/pynanosvg-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "278b31c86100b3f2bdedff3ca6127a02", "sha256": "a4194d994370e3cf978680381b5d4527449882867a10720dfc19e88239900121" }, "downloads": -1, "filename": "pynanosvg-0.2.0-cp36-cp36m-win_amd64.whl", "has_sig": false, "md5_digest": "278b31c86100b3f2bdedff3ca6127a02", "packagetype": "bdist_wheel", "python_version": "cp36", "requires_python": null, "size": 78227, "upload_time": "2018-06-07T23:42:59", "url": "https://files.pythonhosted.org/packages/5a/83/82ec5fef6b515bf2b6f6acb1b3af8049e3f8ddbde7b09a8e62f148affe39/pynanosvg-0.2.0-cp36-cp36m-win_amd64.whl" }, { "comment_text": "", "digests": { "md5": "ffc649d5d9da196ac4bc34207a54890f", "sha256": "041e810149302330830f3c490f8931777be263a0ce1b6c46734d42331bc801e7" }, "downloads": -1, "filename": "pynanosvg-0.2.0.tar.gz", "has_sig": false, "md5_digest": "ffc649d5d9da196ac4bc34207a54890f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47432, "upload_time": "2018-06-07T23:43:01", "url": "https://files.pythonhosted.org/packages/00/f2/6e232f502789722b570a62de03a44e292bc70678fe6c0490ccc52046012c/pynanosvg-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b46215a2a66a99d63846f7c8c21a497a", "sha256": "80a63c57ed5fe49d35ff998d122ad6e7c9de3eb7ebe1d8f2aa33cb697de42177" }, "downloads": -1, "filename": "pynanosvg-0.3.0.tar.gz", "has_sig": false, "md5_digest": "b46215a2a66a99d63846f7c8c21a497a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49558, "upload_time": "2018-06-27T23:03:33", "url": "https://files.pythonhosted.org/packages/a3/b3/7ba78dcb69c3b4f38cc7b44831496e135b603f8898011e8d8a10024b237f/pynanosvg-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "747e5a989dc6c36762c676f924b74331", "sha256": "5e1a211d8778bf26c11d909b6905eff7822eea0abceda5eb294d5f6051f747d6" }, "downloads": -1, "filename": "pynanosvg-0.3.1.tar.gz", "has_sig": false, "md5_digest": "747e5a989dc6c36762c676f924b74331", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 346023, "upload_time": "2018-06-27T23:28:04", "url": "https://files.pythonhosted.org/packages/f5/c4/4488d5fd0798ac944effd4a0aab7e3e1b2a6e01816e6df850866970a2217/pynanosvg-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "747e5a989dc6c36762c676f924b74331", "sha256": "5e1a211d8778bf26c11d909b6905eff7822eea0abceda5eb294d5f6051f747d6" }, "downloads": -1, "filename": "pynanosvg-0.3.1.tar.gz", "has_sig": false, "md5_digest": "747e5a989dc6c36762c676f924b74331", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 346023, "upload_time": "2018-06-27T23:28:04", "url": "https://files.pythonhosted.org/packages/f5/c4/4488d5fd0798ac944effd4a0aab7e3e1b2a6e01816e6df850866970a2217/pynanosvg-0.3.1.tar.gz" } ] }