asciify-engine 1.0.106 → 1.0.108

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "asciify-engine",
3
- "version": "1.0.106",
3
+ "version": "1.0.108",
4
4
  "description": "Framework-agnostic ASCII art engine. Convert images, videos, and GIFs into ASCII art rendered on canvas.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -8,7 +8,7 @@ description: Convert images, videos, GIFs, webcam streams, text, and animated ba
8
8
  Use this skill for the `asciify-engine` npm package.
9
9
 
10
10
  **Package:** `asciify-engine`
11
- **Current version:** `1.0.106`
11
+ **Current version:** `1.0.108`
12
12
  **Playground:** https://asciify.org
13
13
  **GitHub:** https://github.com/ayangabryl/asciify-engine
14
14
 
@@ -36,7 +36,7 @@ npm install asciify-engine
36
36
  For existing apps, install the latest tested version:
37
37
 
38
38
  ```bash
39
- npm install asciify-engine@1.0.106
39
+ npm install asciify-engine@1.0.108
40
40
  ```
41
41
 
42
42
  ## Mental Model
@@ -90,7 +90,9 @@ options: {
90
90
 
91
91
  For centered crops, `sourceCrop: { height: 0.7 }` keeps 70% of the source and preserves the original source aspect. `preserveAspect` is only for single-dimension `width`/`height` crops; do not use it to force hero bands. For wide heroes, crop with `top`/`bottom` and let the engine derive the cropped aspect. `sourceCrop` is opt-in; when omitted, the engine samples the full source exactly as older versions did.
92
92
 
93
- When `sourceCrop` and `chromaKey` are both enabled for video, `asciifyVideo` does a one-time foreground trim inside the crop window. This removes keyed empty margins before layout sizing, which is the right fix when the canvas is full width but the visible ASCII subject still appears short on one side.
93
+ When `sourceCrop` and `chromaKey` are both enabled for video, `asciifyVideo` does a one-time foreground trim inside the crop window. For scrubbed or trimmed video it samples the playback range and uses the union of the keyed foreground bounds. This removes keyed empty margins before layout sizing, which is the right fix when the canvas is full width but the visible ASCII subject still appears short on one side.
94
+
95
+ Use `chromaKeyTrimPadding: 0` for edge-tight marketing heroes. Leave the default `0.002` when preserving a tiny safety margin matters more than touching the exact viewport edge.
94
96
 
95
97
  Use top-level `asciifyVideo` layout options when the destination needs full-bleed framing. These affect the visible canvas only, not the sampled media:
96
98
 
@@ -113,7 +115,7 @@ Mental split:
113
115
  - `sourceCrop` chooses the source window before ASCII conversion.
114
116
  - CSS-like insets change the crop aspect naturally; the engine keeps ASCII proportions intact.
115
117
  - `objectFit`, `objectPosition`, `scale`, `width`, and `height` place the rendered canvas in the page.
116
- - Use `objectFit: 'cover'` for full-width/full-bleed heroes.
118
+ - Use `objectFit: 'cover'` for full-width/full-bleed heroes and backgrounds.
117
119
  - Use `objectFit: 'contain'` for previews where the whole source should remain visible.
118
120
  - Use `scale` for gentle overfill instead of CSS width hacks like `110vw`.
119
121
 
@@ -166,7 +168,7 @@ Recommended starting point:
166
168
  ```ts
167
169
  {
168
170
  fitTo: hero,
169
- objectFit: 'contain',
171
+ objectFit: 'cover',
170
172
  objectPosition: 'center bottom',
171
173
  width: '100%',
172
174
  height: '100%',