PNG / JPEG images
Status
| Field | Value |
|---|---|
| Extension(s) | .png, .jpg, .jpeg |
| Common ecosystem | Raster artwork |
| Format family | Artwork/reference input |
| Satin Studio status | Planned |
| Open / import | No |
| Export | No |
| Confidence | High for artwork role. |
What it is
Raster images are common starting artwork or references, but they do not contain embroidery semantics.
Satin Studio direction
Future import should use them as reference layers or assisted-digitizing inputs, not automatic guaranteed stitch conversion.
Versions and variants
This entry is tracked as a format lead, but Satin Studio does not yet have a public version or dialect matrix for it. Real sample files with machine/software provenance are needed before support can be planned safely.
File identification notes
Standard raster image files.
Observed structure notes
- PNG stores chunks after an eight-byte signature. JPEG stores marker-delimited segments between SOI
FF D8and EOIFF D9. - Raster images are source/reference pixels. They need tracing or assisted digitizing before embroidery objects or stitches exist.
- PNG chunks use big-endian length, four-byte chunk type, payload, and CRC. The first critical chunks normally include
IHDR; image data lives in one or moreIDATchunks;IENDterminates the file. - JPEG files are marker streams. Dimensions and color information are discovered from frame and scan markers, not from a fixed header size.
Structure sketch
Raster images are reference artwork. Their bytes describe pixels, not stitches.
enum RasterArtwork<'a> {
Png { signature: [u8; 8], chunks: &'a [PngChunk<'a>] }, // 89 50 4E 47 0D 0A 1A 0A
Jpeg { soi: [u8; 2], segments: &'a [JpegSegment<'a>] }, // FF D8 ... FF D9
}
struct PngChunk<'a> {
length: u32,
chunk_type: [u8; 4],
data: &'a [u8],
crc: u32,
}
struct JpegSegment<'a> {
marker: u8,
payload: &'a [u8],
}
What we still need
Reference-layer UI and trace/vectorize workflows.