diff --git a/graphics/Makefile b/graphics/Makefile index 3b5640d7dff4..e69701e4478c 100644 --- a/graphics/Makefile +++ b/graphics/Makefile @@ -572,6 +572,7 @@ SUBDIR += mxp SUBDIR += mypaint SUBDIR += mypaint-brushes + SUBDIR += nanosvg SUBDIR += nathive SUBDIR += netpbm SUBDIR += nip2 diff --git a/graphics/nanosvg/Makefile b/graphics/nanosvg/Makefile new file mode 100644 index 000000000000..0e5e87247a9f --- /dev/null +++ b/graphics/nanosvg/Makefile @@ -0,0 +1,26 @@ +# $FreeBSD$ + +PORTNAME= nanosvg +DISTVERSION= g20190422 +CATEGORIES= graphics + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Simple C++ header-only SVG parser + +LICENSE= ZLIB +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +USE_GITHUB= yes +GH_ACCOUNT= memononen +GH_TAGNAME= 25241c5 + +NO_BUILD= yes +NO_ARCH= yes + +PLIST_FILES= include/nanosvg.h include/nanosvgrast.h + +do-install: + ${INSTALL_DATA} ${WRKSRC}/src/nanosvg.h ${STAGEDIR}${PREFIX}/include + ${INSTALL_DATA} ${WRKSRC}/src/nanosvgrast.h ${STAGEDIR}${PREFIX}/include + +.include diff --git a/graphics/nanosvg/distinfo b/graphics/nanosvg/distinfo new file mode 100644 index 000000000000..cfc4fd019922 --- /dev/null +++ b/graphics/nanosvg/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1569076700 +SHA256 (memononen-nanosvg-g20190422-25241c5_GH0.tar.gz) = 288d134f078c7bcb6360df65ab8de10331f59f96d08cf9be25eee6cec0756e12 +SIZE (memononen-nanosvg-g20190422-25241c5_GH0.tar.gz) = 295817 diff --git a/graphics/nanosvg/pkg-descr b/graphics/nanosvg/pkg-descr new file mode 100644 index 000000000000..3f545906522a --- /dev/null +++ b/graphics/nanosvg/pkg-descr @@ -0,0 +1,24 @@ +NanoSVG is a simple stupid single-header-file SVG parse. The output of the +parser is a list of cubic bezier shapes. + +The library suits well for anything from rendering scalable icons in your editor +application to prototyping a game. + +NanoSVG supports a wide range of SVG features, but something may be missing, +feel free to create a pull request! + +The shapes in the SVG images are transformed by the viewBox and converted to +specified units. That is, you should get the same looking data as your designed +in your favorite app. + +NanoSVG can return the paths in few different units. For example if you want to +render an image, you may choose to get the paths in pixels, or if you are +feeding the data into a CNC-cutter, you may want to use millimeters. + +The units passed to NanoSVG should be one of: 'px', 'pt', 'pc' 'mm', 'cm', or +'in'. DPI (dots-per-inch) controls how the unit conversion is done. + +If you don't know or care about the units stuff, "px" and 96 should get you +going. + +WWW: https://github.com/memononen/nanosvg