HiveForge Specification

Supported Input Formats

FormatExtensionsColor ModesMax Resolution
PNG.pngRGB, RGBA, Grayscale100 MP
JPEG.jpg, .jpegRGB, Grayscale100 MP
TIFF.tif, .tiffRGB, RGBA, CMYK100 MP
WebP.webpRGB, RGBA100 MP

Size Limits

ParameterLimit
Maximum resolution100 megapixels
Minimum resolution64 × 64 pixels
Maximum file size50 MB
Maximum output SVGNo limit (typically 30-40 MB for photos)

Quality Parameters

PresetCell SizeMax IterationsSSIM Target
standard16 px5≥ 0.92
high12 px10≥ 0.95
photo8 px20≥ 0.97

Output SVG Structure

<svg xmlns="http://www.w3.org/2000/svg" 
     viewBox="0 0 [width] [height]">
  <defs>
    <!-- Gradient definitions -->
    <linearGradient id="g0" 
                    gradientUnits="userSpaceOnUse"
                    x1="..." y1="..." x2="..." y2="...">
      <stop offset="0" stop-color="#..."/>
      <stop offset="1" stop-color="#..."/>
    </linearGradient>
    <!-- ... more gradients -->
  </defs>
  
  <!-- Wedge paths -->
  <path d="M...Z" fill="url(#g0)"/>
  <!-- ... more paths -->
</svg>

Print-Safe Subset

Allowed Elements

  • <svg> with viewBox
  • <defs>
  • <linearGradient> with gradientUnits="userSpaceOnUse"
  • <stop> with offset and stop-color
  • <path> with d and fill
  • <g> for grouping

Forbidden Elements

  • <filter> and filter effects
  • <mask> and <clipPath>
  • <image> (embedded rasters)
  • <radialGradient>
  • <pattern>
  • <use> with external references
  • <script> and <animate>

Gradient Rules

  • gradientUnits MUST be "userSpaceOnUse" (not objectBoundingBox)
  • Coordinates are absolute (not relative to fill target)
  • Stop colors use 6-digit hex format (#RRGGBB)
  • No stop-opacity (full opacity only)

Color Space

  • Input: sRGB (ICC profiles converted)
  • Processing: Linear RGB (for accurate averaging)
  • Quality check: Lab (CIEDE2000)
  • Output: sRGB (hex colors)

Coordinate Precision

  • Path coordinates: 2 decimal places
  • Gradient coordinates: 4 decimal places
  • Stop offsets: 4 decimal places