#svg #plotter #experimental #vector-graphics #user #cli-tool #vsvg

app vsvg-cli

一个为绘图用户提供的实验性 CLI SVG 操作和查看工具

12 个不稳定版本 (3 个重大变更)

0.4.0 2024 年 1 月 21 日
0.4.0-rc.02024 年 1 月 20 日
0.3.0 2023 年 12 月 28 日
0.2.0 2023 年 10 月 22 日
0.1.0-alpha.22023 年 9 月 30 日

#2206命令行工具

Download history 30/week @ 2024-03-28 13/week @ 2024-04-04 60/week @ 2024-04-18 23/week @ 2024-04-25

77 每月下载量

MIT 许可证

6MB
7K SLoC

vsvg-cli

此库是 vsvg 项目 的一部分。

状态:高度实验性,未来可能被基于 vsvgvpype 2.0 取代。仍可使用。

这是什么?

vsvg-cli 是一个类似于 vpype 的 CLI 包装器,用于处理 vsvg。其主要目的是作为 vsvgvsvg-viewer 的测试平台。

安装

从预构建的二进制文件

发布页面 上提供了许多预构建的二进制文件和安装程序,包括基于 shell/PowerShell 的安装程序、适用于大多数平台的二进制存档以及 Windows 的 MSI 存档。

从源代码

要安装 vsvg CLI,您需要 Rust,您可以使用 rustup 进行安装。

然后,运行以下命令

cargo install vsvg-cli

构建和安装 vsvg-cli

现在应该可以使用 vsvg 命令了

vsvg --help

卸载 vsvg CLI

cargo uninstall vsvg-cli

文档

目前没有关于 vsvg-cli 的文档,可能永远不会有。使用内置的帮助

vsvg --help

这是截至 2023 年 9 月中旬的输出

An experimental SVG viewer for plotter users.

Usage: vsvg [OPTIONS] <PATH>

Arguments:
  <PATH>  Path to the SVG file (or '-' for stdin)

Options:
      --single   Single layer mode
      --no-show  Don't show the GUI
  -v, --verbose  Enable debug output
  -h, --help     Print help
  -V, --version  Print version

COMMANDS:
  -t, --translate <X> <X>
          Translate by provided coordinates
  -R, --rotate-rad <X>
          Rotate by X radians around the origin
  -r, --rotate <X>
          Rotate by X degrees around the origin
  -s, --scale <X>...
          Uniform (X) or non-uniform (X Y) scaling around the origin
      --scale-around <X> <X> <X> <X>
          Scale around the provided point
  -c, --crop <X> <X> <X> <X>
          Crop to provided XMIN, YMIN, XMAX, YMAX
      --linesort <FLIP>
          Reorder paths to minimize pen-up distance [possible values: true, false]
      --linesortnoflip <THRES>
          Reorder paths to minimize pen-up distance
      --linesortflip <THRES>
          Reorder paths to minimize pen-up distance
      --dlayer <X>
          Set target layer for draw operations
      --dtranslate <X> <X>
          Apply an X, Y translation to the current transform
      --drotate <X>
          Apply a rotation to the current transform
      --dscale <X>...
          Apply a uniform (X) or non-uniform (X, Y) scale to the current transform
      --dskew <X> <X>
          Apply a (X, Y) skew to the current transform
      --dcbez <X> <X> <X> <X> <X> <X> <X> <X>
          Draw a cubic bezier curve with X, Y, X1, Y1, X2, Y2, X3, Y3
      --dqbez <X> <X> <X> <X> <X> <X>
          Draw a quadratic bezier curve with X, Y, X1, Y1, X2, Y2
      --darc <X> <X> <X> <X> <X> <X> <X>
          Draw an arc with X, Y, RX, XY, START, SWEEP, ROT_X
      --dcircle <dcircle> <dcircle> <dcircle>
          Draw a circle with X, Y, R
      --dellipse <dellipse> <dellipse> <dellipse> <dellipse> <dellipse>
          Draw an ellipse with X, Y, RX, RY, ROT_X
      --dline <X> <X> <X> <X>
          Draw a line with X, Y, X1, Y1
      --drect <X> <X> <X> <X>
          Draw a rectangle with X, Y, W, H
      --drrect <X> <X> <X> <X> <X> <X> <X> <X>
          Draw a rounded rectangle with X, Y, W, H, TL, TR, BR, BL
      --dsvg <X>
          Draw from an SVG path representation
      --write <FILE>
          Write the current document to a file
      --stats <stats>
          Print stats [possible values: true, false]

依赖项

~35–78MB
~1.5M SLoC