asciify-engine 1.0.111 → 1.0.113

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.111",
3
+ "version": "1.0.113",
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.111`
11
+ **Current version:** `1.0.112`
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.111
39
+ npm install asciify-engine@1.0.112
40
40
  ```
41
41
 
42
42
  ## Mental Model
@@ -113,11 +113,11 @@ Use top-level `asciifyVideo` layout options when the destination needs full-blee
113
113
  ```ts
114
114
  await asciifyVideo('/hero.mp4', canvas, {
115
115
  fitTo: hero,
116
- objectFit: 'cover',
117
- objectPosition: 'center 62%',
118
- scale: 1.06,
119
- width: '100%',
116
+ objectFit: 'contain',
117
+ objectPosition: 'center bottom',
118
+ width: '100vw',
120
119
  height: '100%',
120
+ bleed: { x: '2vw' },
121
121
  options: {
122
122
  sourceCrop: { top: 0.08, bottom: 0.14 },
123
123
  },
@@ -128,10 +128,11 @@ Mental split:
128
128
 
129
129
  - `sourceCrop` chooses the source window before ASCII conversion.
130
130
  - CSS-like insets change the crop aspect naturally; the engine keeps ASCII proportions intact.
131
- - `objectFit`, `objectPosition`, `scale`, `width`, and `height` place the rendered canvas in the page.
131
+ - `objectFit`, `objectPosition`, `scale`, `width`, `height`, and `bleed` place the rendered canvas in the page.
132
132
  - Use `objectFit: 'cover'` for full-width/full-bleed heroes and backgrounds.
133
133
  - Use `objectFit: 'contain'` for previews where the whole source should remain visible.
134
- - Use `scale` for gentle overfill instead of CSS width hacks like `110vw`.
134
+ - Use `bleed: { x: '2vw' }` for edge-tight ASCII heroes where the source is correct but glyph side bearings or cell quantization leave a thin visual edge gap. This is preferable to app CSS hacks like `width: 104vw`.
135
+ - Use `scale` only when you intentionally want the whole ASCII canvas visually larger.
135
136
 
136
137
  ## Visual Target
137
138
 
@@ -182,10 +183,11 @@ Recommended starting point:
182
183
  ```ts
183
184
  {
184
185
  fitTo: hero,
185
- objectFit: 'cover',
186
+ objectFit: 'contain',
186
187
  objectPosition: 'center bottom',
187
- width: '100%',
188
+ width: '100vw',
188
189
  height: '100%',
190
+ bleed: { x: '2vw' },
189
191
  fontSize: 5,
190
192
  fps: 60,
191
193
  maxRenderDimension: 1280,