mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-12 23:05:05 +00:00
VectorCraft could open and place HP-GL plot files but not write them, so art for a pen plotter or a vinyl cutter had to go through another program. Export As, document.export and Export Selection now write HP-GL. vectorcraft_cad::hpgl::export draws each visible path once along its own line: a filled shape is its closed outline and a stroked path its center line. Type is drawn as glyph outlines, a gradient mesh as its outline, and a symbol instance as its art with its effects and the instance's stain. Clipping masks cut the art they clip, and the art is cut at the artboard's edges. Hidden and non-printing layers, hidden objects, objects at 0% opacity, template layers, guides and placed images are left out. Coordinates are plotter units (1016 to the inch, y up) from the artboard's bottom-left corner or its center, and art more than 8,388,607 units from the origin is cut off. Each color is a pen, in the order the plot first draws in it (up to 255), or a pen table maps each path to the pen of the nearest color. With Use Artboards every file of the export uses the same numbering. The pens draw in turn, each in paint order or, with sortPaths, nearest path first. Curves are flattened to curveTolerance (0.1 pt by default). hpglVersion "hpgl" writes IN, SP, PU and PD; "hpgl2" also writes the palette (NP, PC) and each pen's paths as one encoded polyline (PE). Options are checked, and Export As writes the file with the defaults. Plots read back by the HP-GL reader give the same lines. Docs: docs/mcp.md, docs/control-protocol.md, docs/file-format-parity.md, docs/target-app-parity.md.