1
0
mirror of https://git.code.sf.net/p/zint/code synced 2026-01-10 13:36:02 +00:00

EAN/UPC: add quiet zone indicators option (API output_options

`EANUPC_GUARD_WHITESPACE`, CLI `--guardwhitespace`) (ticket #287)
EAN-2/EAN-5: HRT now at top instead of at bottom for standalones,
  following BWIPP
CLI: batch mode: don't close input if stdin
EAN/UPC: fix excess 1X to right of add-ons
Composites: fix excess whitespace; fix quiet zone calcs to allow
  for linear shifting
CLI: use own (Wine) version of `CommandLineToArgvW()` to avoid
  loading "shell32.dll"
Move "font.h" -> "raster_font.h"
EPS/SVG: use new `out_putsf()` func to output floats, avoiding
  trailing zeroes & locale dependency
EPS: simplify "TR" formula
SVG: change font from "Helvetica, sans serif" to "OCR-B, monospace";
  use single "<path>" instead of multiple "<rect>"s to draw boxes
  (reduces file size)
Add `EMBED_VECTOR_FONT` to `output_options` (CLI `--embedfont`) to
  enable embedding of font in vector output - currently only for
  SVG output of EAN/UPC
GUI: use "OCR-B" font for EAN/UPC and "Arimo" for all others (was
  "Helvetica" for both); paint background of screen preview light
  grey so as contrasts with whitespace and quiet zones
EMF: prefix funcs with `emf_`; simplify string `halign` handling
large: rename `large_int` -> `large_uint`
CODE128/common: move `c128_hrt_cpy_iso8859_1()` to
  `hrt_cpy_iso8859_1()` and add `ZINT_WARN_HRT_TRUNCATED` warning
  (for future use)
Various symbologies: replace `printf()` with `fputs()`
  (symbol->debug)
QRCODE: better assert(), removing a NOLINT (2 left)
CLI: add some more barcode synonyms for DBAR
common: various fiddlings
CMake: don't include png.c unless ZINT_USE_PNG (avoids clang
  warning)
This commit is contained in:
gitlost
2023-06-12 01:25:55 +01:00
parent 6d015d6a8f
commit 607e4ed33a
395 changed files with 11528 additions and 23016 deletions

View File

@@ -1,105 +1,95 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="26" height="26" version="1.1"
xmlns="http://www.w3.org/2000/svg">
<desc>Zint Generated Symbol
</desc>
<g id="barcode" fill="#000000">
<rect x="0" y="0" width="26" height="26" fill="#FFFFFF" />
<rect x="0.00" y="0.00" width="26.00" height="2.00" fill="#000000" />
<rect x="0.00" y="2.00" width="2.00" height="2.00" fill="#000000" />
<rect x="2.00" y="2.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="4.00" y="2.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="6.00" y="2.00" width="2.00" height="22.00" fill="#000000" />
<rect x="8.00" y="2.00" width="2.00" height="22.00" fill="#ffffff" />
<rect x="10.00" y="2.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="12.00" y="2.00" width="6.00" height="2.00" fill="#ff00ff" />
<rect x="18.00" y="2.00" width="4.00" height="2.00" fill="#ffff00" />
<rect x="22.00" y="2.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="24.00" y="2.00" width="2.00" height="10.00" fill="#000000" />
<rect x="0.00" y="4.00" width="4.00" height="2.00" fill="#000000" />
<rect x="4.00" y="4.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="10.00" y="4.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="12.00" y="4.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="14.00" y="4.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="16.00" y="4.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="18.00" y="4.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="20.00" y="4.00" width="4.00" height="2.00" fill="#00ff00" />
<rect x="0.00" y="6.00" width="2.00" height="2.00" fill="#000000" />
<rect x="2.00" y="6.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="4.00" y="6.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="10.00" y="6.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="12.00" y="6.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="14.00" y="6.00" width="4.00" height="2.00" fill="#ffff00" />
<rect x="18.00" y="6.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="20.00" y="6.00" width="4.00" height="2.00" fill="#ffff00" />
<rect x="0.00" y="8.00" width="4.00" height="2.00" fill="#000000" />
<rect x="4.00" y="8.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="10.00" y="8.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="12.00" y="8.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="14.00" y="8.00" width="4.00" height="2.00" fill="#00ffff" />
<rect x="18.00" y="8.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="20.00" y="8.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="22.00" y="8.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="0.00" y="10.00" width="2.00" height="2.00" fill="#000000" />
<rect x="2.00" y="10.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="4.00" y="10.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="10.00" y="10.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="12.00" y="10.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="14.00" y="10.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="16.00" y="10.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="18.00" y="10.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="20.00" y="10.00" width="4.00" height="2.00" fill="#ffff00" />
<rect x="0.00" y="12.00" width="4.00" height="2.00" fill="#000000" />
<rect x="4.00" y="12.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="10.00" y="12.00" width="2.00" height="2.00" fill="#000000" />
<rect x="12.00" y="12.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="14.00" y="12.00" width="2.00" height="2.00" fill="#000000" />
<rect x="16.00" y="12.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="18.00" y="12.00" width="2.00" height="2.00" fill="#000000" />
<rect x="20.00" y="12.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="22.00" y="12.00" width="4.00" height="2.00" fill="#000000" />
<rect x="0.00" y="14.00" width="2.00" height="2.00" fill="#000000" />
<rect x="2.00" y="14.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="4.00" y="14.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="10.00" y="14.00" width="4.00" height="2.00" fill="#00ffff" />
<rect x="14.00" y="14.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="16.00" y="14.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="18.00" y="14.00" width="6.00" height="2.00" fill="#00ffff" />
<rect x="24.00" y="14.00" width="2.00" height="10.00" fill="#000000" />
<rect x="0.00" y="16.00" width="4.00" height="2.00" fill="#000000" />
<rect x="4.00" y="16.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="10.00" y="16.00" width="4.00" height="2.00" fill="#ff00ff" />
<rect x="14.00" y="16.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="16.00" y="16.00" width="8.00" height="2.00" fill="#ff00ff" />
<rect x="0.00" y="18.00" width="2.00" height="2.00" fill="#000000" />
<rect x="2.00" y="18.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="4.00" y="18.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="10.00" y="18.00" width="4.00" height="2.00" fill="#00ffff" />
<rect x="14.00" y="18.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="16.00" y="18.00" width="4.00" height="2.00" fill="#ffff00" />
<rect x="20.00" y="18.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="22.00" y="18.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="0.00" y="20.00" width="4.00" height="2.00" fill="#000000" />
<rect x="4.00" y="20.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="10.00" y="20.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="12.00" y="20.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="14.00" y="20.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="16.00" y="20.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="18.00" y="20.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="20.00" y="20.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="22.00" y="20.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="0.00" y="22.00" width="2.00" height="2.00" fill="#000000" />
<rect x="2.00" y="22.00" width="2.00" height="2.00" fill="#ffffff" />
<rect x="4.00" y="22.00" width="2.00" height="2.00" fill="#00ffff" />
<rect x="10.00" y="22.00" width="4.00" height="2.00" fill="#ff00ff" />
<rect x="14.00" y="22.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="16.00" y="22.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="18.00" y="22.00" width="2.00" height="2.00" fill="#00ff00" />
<rect x="20.00" y="22.00" width="2.00" height="2.00" fill="#ff00ff" />
<rect x="22.00" y="22.00" width="2.00" height="2.00" fill="#ffff00" />
<rect x="0.00" y="24.00" width="26.00" height="2.00" fill="#000000" />
</g>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="26" height="26" version="1.1" xmlns="http://www.w3.org/2000/svg">
<desc>Zint Generated Symbol</desc>
<g id="barcode" fill="#000000">
<rect x="0" y="0" width="26" height="26" fill="#FFFFFF"/>
<path d="M0 0h26v2h-26ZM0 2h2v2h-2Z" fill="#000000"/>
<path d="M2 2h2v2h-2Z" fill="#ffffff"/>
<path d="M4 2h2v2h-2Z" fill="#ffff00"/>
<path d="M6 2h2v22h-2Z" fill="#000000"/>
<path d="M8 2h2v22h-2Z" fill="#ffffff"/>
<path d="M10 2h2v2h-2Z" fill="#00ff00"/>
<path d="M12 2h6v2h-6Z" fill="#ff00ff"/>
<path d="M18 2h4v2h-4Z" fill="#ffff00"/>
<path d="M22 2h2v2h-2Z" fill="#00ffff"/>
<path d="M24 2h2v10h-2ZM0 4h4v2h-4Z" fill="#000000"/>
<path d="M4 4h2v2h-2Z" fill="#00ffff"/>
<path d="M10 4h2v2h-2Z" fill="#ff00ff"/>
<path d="M12 4h2v2h-2Z" fill="#ffff00"/>
<path d="M14 4h2v2h-2Z" fill="#00ffff"/>
<path d="M16 4h2v2h-2Z" fill="#00ff00"/>
<path d="M18 4h2v2h-2Z" fill="#ff00ff"/>
<path d="M20 4h4v2h-4Z" fill="#00ff00"/>
<path d="M0 6h2v2h-2Z" fill="#000000"/>
<path d="M2 6h2v2h-2Z" fill="#ffffff"/>
<path d="M4 6h2v2h-2ZM10 6h2v2h-2Z" fill="#00ff00"/>
<path d="M12 6h2v2h-2Z" fill="#00ffff"/>
<path d="M14 6h4v2h-4Z" fill="#ffff00"/>
<path d="M18 6h2v2h-2Z" fill="#00ffff"/>
<path d="M20 6h4v2h-4Z" fill="#ffff00"/>
<path d="M0 8h4v2h-4Z" fill="#000000"/>
<path d="M4 8h2v2h-2ZM10 8h2v2h-2Z" fill="#ffff00"/>
<path d="M12 8h2v2h-2Z" fill="#00ff00"/>
<path d="M14 8h4v2h-4Z" fill="#00ffff"/>
<path d="M18 8h2v2h-2Z" fill="#ffff00"/>
<path d="M20 8h2v2h-2Z" fill="#00ff00"/>
<path d="M22 8h2v2h-2Z" fill="#ff00ff"/>
<path d="M0 10h2v2h-2Z" fill="#000000"/>
<path d="M2 10h2v2h-2Z" fill="#ffffff"/>
<path d="M4 10h2v2h-2Z" fill="#ff00ff"/>
<path d="M10 10h2v2h-2Z" fill="#00ffff"/>
<path d="M12 10h2v2h-2Z" fill="#ff00ff"/>
<path d="M14 10h2v2h-2Z" fill="#00ff00"/>
<path d="M16 10h2v2h-2Z" fill="#ff00ff"/>
<path d="M18 10h2v2h-2Z" fill="#00ff00"/>
<path d="M20 10h4v2h-4Z" fill="#ffff00"/>
<path d="M0 12h4v2h-4Z" fill="#000000"/>
<path d="M4 12h2v2h-2Z" fill="#ffffff"/>
<path d="M10 12h2v2h-2Z" fill="#000000"/>
<path d="M12 12h2v2h-2Z" fill="#ffffff"/>
<path d="M14 12h2v2h-2Z" fill="#000000"/>
<path d="M16 12h2v2h-2Z" fill="#ffffff"/>
<path d="M18 12h2v2h-2Z" fill="#000000"/>
<path d="M20 12h2v2h-2Z" fill="#ffffff"/>
<path d="M22 12h4v2h-4ZM0 14h2v2h-2Z" fill="#000000"/>
<path d="M2 14h2v2h-2Z" fill="#ffffff"/>
<path d="M4 14h2v2h-2Z" fill="#00ff00"/>
<path d="M10 14h4v2h-4Z" fill="#00ffff"/>
<path d="M14 14h2v2h-2Z" fill="#ff00ff"/>
<path d="M16 14h2v2h-2Z" fill="#00ff00"/>
<path d="M18 14h6v2h-6Z" fill="#00ffff"/>
<path d="M24 14h2v10h-2ZM0 16h4v2h-4Z" fill="#000000"/>
<path d="M4 16h2v2h-2Z" fill="#00ffff"/>
<path d="M10 16h4v2h-4Z" fill="#ff00ff"/>
<path d="M14 16h2v2h-2Z" fill="#00ffff"/>
<path d="M16 16h8v2h-8Z" fill="#ff00ff"/>
<path d="M0 18h2v2h-2Z" fill="#000000"/>
<path d="M2 18h2v2h-2Z" fill="#ffffff"/>
<path d="M4 18h2v2h-2Z" fill="#ffff00"/>
<path d="M10 18h4v2h-4Z" fill="#00ffff"/>
<path d="M14 18h2v2h-2Z" fill="#ff00ff"/>
<path d="M16 18h4v2h-4Z" fill="#ffff00"/>
<path d="M20 18h2v2h-2Z" fill="#00ffff"/>
<path d="M22 18h2v2h-2Z" fill="#ffff00"/>
<path d="M0 20h4v2h-4Z" fill="#000000"/>
<path d="M4 20h2v2h-2Z" fill="#ff00ff"/>
<path d="M10 20h2v2h-2Z" fill="#00ff00"/>
<path d="M12 20h2v2h-2Z" fill="#ffff00"/>
<path d="M14 20h2v2h-2Z" fill="#00ffff"/>
<path d="M16 20h2v2h-2Z" fill="#00ff00"/>
<path d="M18 20h2v2h-2Z" fill="#ff00ff"/>
<path d="M20 20h2v2h-2Z" fill="#00ff00"/>
<path d="M22 20h2v2h-2Z" fill="#00ffff"/>
<path d="M0 22h2v2h-2Z" fill="#000000"/>
<path d="M2 22h2v2h-2Z" fill="#ffffff"/>
<path d="M4 22h2v2h-2Z" fill="#00ffff"/>
<path d="M10 22h4v2h-4Z" fill="#ff00ff"/>
<path d="M14 22h2v2h-2Z" fill="#ffff00"/>
<path d="M16 22h2v2h-2Z" fill="#ff00ff"/>
<path d="M18 22h2v2h-2Z" fill="#00ff00"/>
<path d="M20 22h2v2h-2Z" fill="#ff00ff"/>
<path d="M22 22h2v2h-2Z" fill="#ffff00"/>
<path d="M0 24h26v2h-26Z" fill="#000000"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB