apexify.js 4.2.10 → 4.3.1
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/dist/ai/utils.d.ts +2 -2
- package/dist/ai/utils.d.ts.map +1 -1
- package/dist/ai/utils.js +2 -1
- package/dist/ai/utils.js.map +1 -1
- package/dist/canvas/ApexPainter.d.ts.map +1 -1
- package/dist/canvas/ApexPainter.js +9 -3
- package/dist/canvas/ApexPainter.js.map +1 -1
- package/dist/canvas/utils/imageProperties.d.ts +5 -3
- package/dist/canvas/utils/imageProperties.d.ts.map +1 -1
- package/dist/canvas/utils/imageProperties.js +34 -19
- package/dist/canvas/utils/imageProperties.js.map +1 -1
- package/dist/canvas/utils/textProperties.d.ts +1 -0
- package/dist/canvas/utils/textProperties.d.ts.map +1 -1
- package/dist/canvas/utils/textProperties.js +58 -39
- package/dist/canvas/utils/textProperties.js.map +1 -1
- package/dist/canvas/utils/types.d.ts +30 -0
- package/dist/canvas/utils/types.d.ts.map +1 -1
- package/dist/canvas/utils/types.js.map +1 -1
- package/dist/index.d.ts +21 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/utils.d.ts +2 -9
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +2 -2
- package/dist/utils.js.map +1 -1
- package/lib/ai/utils.ts +2 -1
- package/lib/canvas/ApexPainter.ts +10 -3
- package/lib/canvas/utils/imageProperties.ts +95 -79
- package/lib/canvas/utils/textProperties.ts +86 -57
- package/lib/canvas/utils/types.ts +27 -3
- package/lib/index.ts +8 -2
- package/lib/utils.ts +2 -3
- package/package.json +1 -1
package/dist/ai/utils.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { toDraw } from "./functions/shouldDrawImage";
|
|
|
4
4
|
import { aiVoice } from "./functions/generateVoiceResponse";
|
|
5
5
|
import { aiImagine } from "./functions/draw";
|
|
6
6
|
import { readPdf, readTextFile } from "./functions/readFiles";
|
|
7
|
-
import { ApexChat, ApexImagine } from "./ApexModules";
|
|
7
|
+
import { ApexChat, ApexImagine, ApexListener } from "./ApexModules";
|
|
8
8
|
import { typeWriter } from "./functions/typeWriter";
|
|
9
9
|
import { readImage } from "./functions/readImagess";
|
|
10
10
|
import { geminiPro } from "./modals-chat/Gemini-pro";
|
|
@@ -12,5 +12,5 @@ import { mixtral } from "./modals-chat/mixtral";
|
|
|
12
12
|
import { openChat } from "./modals-chat/openChat";
|
|
13
13
|
import { llamaChat } from "./modals-chat/llama";
|
|
14
14
|
import { v4 } from "./modals-chat/v4";
|
|
15
|
-
export { chunkString, imageReader, readImage, toDraw, aiVoice, aiImagine, readPdf, readTextFile, ApexChat, ApexImagine, typeWriter, geminiPro, v4, llamaChat, mixtral, openChat };
|
|
15
|
+
export { chunkString, imageReader, readImage, toDraw, aiVoice, aiImagine, readPdf, readTextFile, ApexChat, ApexImagine, ApexListener, typeWriter, geminiPro, v4, llamaChat, mixtral, openChat };
|
|
16
16
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/ai/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/ai/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/ai/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAE;AACrD,OAAO,EAAE,SAAS,EAAE,MAAO,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC,OAAO,EACL,WAAW,EACX,WAAW,EACX,SAAS,EACT,MAAM,EACN,OAAO,EACP,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,EAAE,EACF,SAAS,EACT,OAAO,EACP,QAAQ,EACT,CAAC"}
|
package/dist/ai/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.openChat = exports.mixtral = exports.llamaChat = exports.v4 = exports.geminiPro = exports.typeWriter = exports.ApexImagine = exports.ApexChat = exports.readTextFile = exports.readPdf = exports.aiImagine = exports.aiVoice = exports.toDraw = exports.readImage = exports.imageReader = exports.chunkString = void 0;
|
|
3
|
+
exports.openChat = exports.mixtral = exports.llamaChat = exports.v4 = exports.geminiPro = exports.typeWriter = exports.ApexListener = exports.ApexImagine = exports.ApexChat = exports.readTextFile = exports.readPdf = exports.aiImagine = exports.aiVoice = exports.toDraw = exports.readImage = exports.imageReader = exports.chunkString = void 0;
|
|
4
4
|
const imageReader_1 = require("./functions/imageReader");
|
|
5
5
|
Object.defineProperty(exports, "imageReader", { enumerable: true, get: function () { return imageReader_1.imageReader; } });
|
|
6
6
|
const chunkString_1 = require("./functions/chunkString");
|
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "readTextFile", { enumerable: true, get: function
|
|
|
17
17
|
const ApexModules_1 = require("./ApexModules");
|
|
18
18
|
Object.defineProperty(exports, "ApexChat", { enumerable: true, get: function () { return ApexModules_1.ApexChat; } });
|
|
19
19
|
Object.defineProperty(exports, "ApexImagine", { enumerable: true, get: function () { return ApexModules_1.ApexImagine; } });
|
|
20
|
+
Object.defineProperty(exports, "ApexListener", { enumerable: true, get: function () { return ApexModules_1.ApexListener; } });
|
|
20
21
|
const typeWriter_1 = require("./functions/typeWriter");
|
|
21
22
|
Object.defineProperty(exports, "typeWriter", { enumerable: true, get: function () { return typeWriter_1.typeWriter; } });
|
|
22
23
|
const readImagess_1 = require("./functions/readImagess");
|
package/dist/ai/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/ai/utils.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAiBpD,4FAjBO,yBAAW,OAiBP;AAhBb,yDAAsD;AAepD,4FAfO,yBAAW,OAeP;AAdb,iEAAqD;AAiBnD,uFAjBO,wBAAM,OAiBP;AAhBR,6EAA4D;AAiB1D,wFAjBO,+BAAO,OAiBP;AAhBT,2CAA6C;AAiB3C,0FAjBO,gBAAS,OAiBP;AAhBX,qDAA8D;AAiB5D,wFAjBO,mBAAO,OAiBP;AACP,6FAlBgB,wBAAY,OAkBhB;AAjBd,+
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/ai/utils.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAiBpD,4FAjBO,yBAAW,OAiBP;AAhBb,yDAAsD;AAepD,4FAfO,yBAAW,OAeP;AAdb,iEAAqD;AAiBnD,uFAjBO,wBAAM,OAiBP;AAhBR,6EAA4D;AAiB1D,wFAjBO,+BAAO,OAiBP;AAhBT,2CAA6C;AAiB3C,0FAjBO,gBAAS,OAiBP;AAhBX,qDAA8D;AAiB5D,wFAjBO,mBAAO,OAiBP;AACP,6FAlBgB,wBAAY,OAkBhB;AAjBd,+CAAoE;AAkBlE,yFAlBO,sBAAQ,OAkBP;AACR,4FAnBiB,yBAAW,OAmBjB;AACX,6FApB8B,0BAAY,OAoB9B;AAnBd,uDAAqD;AAoBnD,2FApBO,uBAAU,OAoBP;AAnBZ,yDAAqD;AAUnD,0FAVO,uBAAS,OAUP;AATX,yDAAqD;AAmBnD,0FAnBO,sBAAS,OAmBP;AAlBX,mDAAgD;AAqB9C,wFArBO,iBAAO,OAqBP;AApBT,qDAAkD;AAqBhD,yFArBO,mBAAQ,OAqBP;AApBV,+CAAgD;AAkB9C,0FAlBO,iBAAS,OAkBP;AAjBX,yCAAsC;AAgBpC,mFAhBO,OAAE,OAgBP"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApexPainter.d.ts","sourceRoot":"","sources":["../../lib/canvas/ApexPainter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAS5H,MAAM,eAAe,CAAC;AAE3B,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,CAAe;gBAElB,EAAE,IAAI,EAAE,GAAE,YAAiC;IAIjD,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAmCjD,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA2B/E,UAAU,CAAC,gBAAgB,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkC3E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBvE,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC;IAiRhF,MAAM,CAAC,aAAa,EAAE;QAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;IAI7F,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAIpD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;IAI9C,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAInD,aAAa,CAAC,SAAS,EAAE,MAAM;;;;IAI/B,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;IAI5F,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAIjD,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAC;IA8CrE,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;YAkBzC,SAAS;
|
|
1
|
+
{"version":3,"file":"ApexPainter.d.ts","sourceRoot":"","sources":["../../lib/canvas/ApexPainter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAS5H,MAAM,eAAe,CAAC;AAE3B,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,CAAe;gBAElB,EAAE,IAAI,EAAE,GAAE,YAAiC;IAIjD,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAmCjD,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA2B/E,UAAU,CAAC,gBAAgB,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkC3E,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBvE,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,GAAG,CAAC;IAiRhF,MAAM,CAAC,aAAa,EAAE;QAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;IAI7F,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAIpD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;IAI9C,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAInD,aAAa,CAAC,SAAS,EAAE,MAAM;;;;IAI/B,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;IAI5F,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAIjD,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAC;IA8CrE,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;YAkBzC,SAAS;IAsDhB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG;IAQzB,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,iBAAiB,CAAC;CAoBxG"}
|
|
@@ -373,7 +373,7 @@ class ApexPainter {
|
|
|
373
373
|
}
|
|
374
374
|
}
|
|
375
375
|
async drawImage(ctx, image) {
|
|
376
|
-
const { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient } = image;
|
|
376
|
+
const { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient, borderPosition, opacity } = image;
|
|
377
377
|
if (!source || typeof x !== 'number' || typeof y !== 'number' || typeof width !== 'number' || typeof height !== 'number') {
|
|
378
378
|
throw new Error('Invalid image properties');
|
|
379
379
|
}
|
|
@@ -381,6 +381,9 @@ class ApexPainter {
|
|
|
381
381
|
let img;
|
|
382
382
|
const shapeNames = ['circle', 'square', 'triangle', 'pentagon', 'hexagon', 'heptagon', 'octagon', 'star', 'kite'];
|
|
383
383
|
const isShape = shapeNames.includes(source.toLowerCase());
|
|
384
|
+
if (opacity) {
|
|
385
|
+
ctx.globalAlpha = opacity;
|
|
386
|
+
}
|
|
384
387
|
if (source.startsWith('http')) {
|
|
385
388
|
const response = await fetch(source);
|
|
386
389
|
if (!response.ok) {
|
|
@@ -390,7 +393,7 @@ class ApexPainter {
|
|
|
390
393
|
img = await (0, canvas_1.loadImage)(Buffer.from(buffer));
|
|
391
394
|
}
|
|
392
395
|
else if (isShape) {
|
|
393
|
-
(0, utils_1.drawShape)(ctx, { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient });
|
|
396
|
+
(0, utils_1.drawShape)(ctx, { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient, borderPosition });
|
|
394
397
|
}
|
|
395
398
|
else {
|
|
396
399
|
const imagePath = path_1.default.join(process.cwd(), source);
|
|
@@ -405,7 +408,7 @@ class ApexPainter {
|
|
|
405
408
|
ctx.save();
|
|
406
409
|
(0, utils_1.applyRotation)(ctx, rotation || 0, x, y, width, height);
|
|
407
410
|
(0, utils_1.applyShadow)(ctx, shadow, x, y, width, height);
|
|
408
|
-
(0, utils_1.imageRadius)(ctx, img, x, y, width, height, borderRadius || 0);
|
|
411
|
+
(0, utils_1.imageRadius)(ctx, img, x, y, width, height, borderRadius || 0, borderPosition);
|
|
409
412
|
(0, utils_1.applyStroke)(ctx, stroke, x, y, width, height);
|
|
410
413
|
ctx.restore();
|
|
411
414
|
}
|
|
@@ -418,6 +421,9 @@ class ApexPainter {
|
|
|
418
421
|
catch (error) {
|
|
419
422
|
throw new Error(error.message);
|
|
420
423
|
}
|
|
424
|
+
finally {
|
|
425
|
+
ctx.globalAlpha = 1.0;
|
|
426
|
+
}
|
|
421
427
|
}
|
|
422
428
|
validHex(hexColor) {
|
|
423
429
|
const hexPattern = /^#[0-9a-fA-F]{6}$/;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApexPainter.js","sourceRoot":"","sources":["../../lib/canvas/ApexPainter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ApexPainter.js","sourceRoot":"","sources":["../../lib/canvas/ApexPainter.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export declare function applyShadow(ctx: any, shadow: ImageProperties['shadow'],
|
|
|
18
18
|
* @param width The width of the shape.
|
|
19
19
|
* @param height The height of the shape.
|
|
20
20
|
*/
|
|
21
|
-
export declare function applyStroke(ctx: any, stroke: ImageProperties['stroke'], x: number, y: number, width: number, height: number
|
|
21
|
+
export declare function applyStroke(ctx: any, stroke: ImageProperties['stroke'], x: number, y: number, width: number, height: number): void;
|
|
22
22
|
/**
|
|
23
23
|
* Draws a shape on the canvas context.
|
|
24
24
|
* @param ctx The canvas rendering context.
|
|
@@ -45,8 +45,9 @@ export declare function applyRotation(ctx: any, rotation: number, x: number, y:
|
|
|
45
45
|
* @param width The width of the shape.
|
|
46
46
|
* @param height The height of the shape.
|
|
47
47
|
* @param borderRadius The border radius value.
|
|
48
|
+
* @param borderPosition The border radius position to be applied on.
|
|
48
49
|
*/
|
|
49
|
-
export declare function imageRadius(ctx: any, image: any, x: number, y: number, width: number, height: number, borderRadius: any): void;
|
|
50
|
+
export declare function imageRadius(ctx: any, image: any, x: number, y: number, width: number, height: number, borderRadius: any, borderPosition?: string): void;
|
|
50
51
|
/**
|
|
51
52
|
* Applies border radius to the canvas context for objects.
|
|
52
53
|
* @param ctx The canvas rendering context.
|
|
@@ -55,6 +56,7 @@ export declare function imageRadius(ctx: any, image: any, x: number, y: number,
|
|
|
55
56
|
* @param width The width of the object.
|
|
56
57
|
* @param height The height of the object.
|
|
57
58
|
* @param borderRadius The border radius value.
|
|
59
|
+
* @param borderPosition The border radius position to be applied on.
|
|
58
60
|
*/
|
|
59
|
-
export declare function objectRadius(ctx: any, x: any, y: any, width: number, height: number, borderRadius?: any): void;
|
|
61
|
+
export declare function objectRadius(ctx: any, x: any, y: any, width: number, height: number, borderRadius?: any, borderPosition?: string): void;
|
|
60
62
|
//# sourceMappingURL=imageProperties.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imageProperties.d.ts","sourceRoot":"","sources":["../../../lib/canvas/utils/imageProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAyBlI;AAID;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"imageProperties.d.ts","sourceRoot":"","sources":["../../../lib/canvas/utils/imageProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAyBlI;AAID;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA+BlI;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,QAkKrD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,OA6DxH;AAGD;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQnH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,cAAc,GAAE,MAAc,GAAG,IAAI,CA4B9J;AAKD;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAE,GAAS,EAAE,cAAc,GAAE,MAAc,GAAG,IAAI,CA4BnJ"}
|
|
@@ -23,7 +23,7 @@ function applyShadow(ctx, shadow, x, y, width, height) {
|
|
|
23
23
|
ctx.filter = `blur(${shadow.blur || null}px)`;
|
|
24
24
|
const shadowX = x + (shadow.offsetX || 0);
|
|
25
25
|
const shadowY = y + (shadow.offsetY || 0);
|
|
26
|
-
objectRadius(ctx, shadowX, shadowY, width, height, shadow.borderRadius || 2);
|
|
26
|
+
objectRadius(ctx, shadowX, shadowY, width, height, shadow.borderRadius || 2, shadow.borderPosition);
|
|
27
27
|
ctx.fillStyle = shadow.color || "transparent";
|
|
28
28
|
ctx.fill();
|
|
29
29
|
}
|
|
@@ -40,11 +40,11 @@ function applyShadow(ctx, shadow, x, y, width, height) {
|
|
|
40
40
|
* @param width The width of the shape.
|
|
41
41
|
* @param height The height of the shape.
|
|
42
42
|
*/
|
|
43
|
-
function applyStroke(ctx, stroke, x, y, width, height
|
|
43
|
+
function applyStroke(ctx, stroke, x, y, width, height) {
|
|
44
44
|
ctx.save();
|
|
45
45
|
if (stroke) {
|
|
46
|
-
if (gradient) {
|
|
47
|
-
const gradientFill = createGradient(ctx, gradient, x, y, x + width, y + height);
|
|
46
|
+
if (stroke.gradient) {
|
|
47
|
+
const gradientFill = createGradient(ctx, stroke.gradient, x, y, x + width, y + height);
|
|
48
48
|
ctx.strokeStyle = gradientFill;
|
|
49
49
|
}
|
|
50
50
|
else {
|
|
@@ -55,7 +55,7 @@ function applyStroke(ctx, stroke, x, y, width, height, gradient) {
|
|
|
55
55
|
const adjustedY = y - (stroke.position || 0);
|
|
56
56
|
const adjustedWidth = width + (stroke.position || 0) * 2;
|
|
57
57
|
const adjustedHeight = height + (stroke.position || 0) * 2;
|
|
58
|
-
objectRadius(ctx, adjustedX, adjustedY, adjustedWidth, adjustedHeight, stroke.borderRadius || 2);
|
|
58
|
+
objectRadius(ctx, adjustedX, adjustedY, adjustedWidth, adjustedHeight, stroke.borderRadius || 2, stroke.borderPosition);
|
|
59
59
|
ctx.stroke();
|
|
60
60
|
}
|
|
61
61
|
ctx.restore();
|
|
@@ -66,7 +66,7 @@ function applyStroke(ctx, stroke, x, y, width, height, gradient) {
|
|
|
66
66
|
* @param shapeSettings The settings for the shape.
|
|
67
67
|
*/
|
|
68
68
|
function drawShape(ctx, shapeSettings) {
|
|
69
|
-
const { source, x, y, width, height, rotation, borderRadius, stroke, shadow, isFilled, color, gradient } = shapeSettings;
|
|
69
|
+
const { source, x, y, width, height, rotation, borderRadius, borderPosition, stroke, shadow, isFilled, color, gradient } = shapeSettings;
|
|
70
70
|
const shapeName = source.toLowerCase();
|
|
71
71
|
switch (shapeName) {
|
|
72
72
|
case 'circle':
|
|
@@ -166,7 +166,7 @@ function drawShape(ctx, shapeSettings) {
|
|
|
166
166
|
}
|
|
167
167
|
if (isFilled) {
|
|
168
168
|
if (borderRadius) {
|
|
169
|
-
objectRadius(ctx, x, y, width, height, borderRadius);
|
|
169
|
+
objectRadius(ctx, x, y, width, height, borderRadius, borderPosition);
|
|
170
170
|
if (gradient) {
|
|
171
171
|
const gradientFill = createGradient(ctx, gradient, x, y, x + width, y + height);
|
|
172
172
|
ctx.fillStyle = gradientFill;
|
|
@@ -194,19 +194,23 @@ function drawShape(ctx, shapeSettings) {
|
|
|
194
194
|
ctx.fill();
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
+
applyStroke(ctx, stroke, x, y, width, height);
|
|
197
198
|
}
|
|
198
199
|
else {
|
|
199
200
|
if (gradient) {
|
|
200
201
|
const gradientFill = createGradient(ctx, gradient, x, y, x + width, y + height);
|
|
201
202
|
ctx.fillStyle = gradientFill;
|
|
202
203
|
}
|
|
203
|
-
applyStroke(ctx, stroke, x, y, width, height
|
|
204
|
+
applyStroke(ctx, stroke, x, y, width, height);
|
|
204
205
|
}
|
|
205
206
|
ctx.restore();
|
|
206
207
|
}
|
|
207
208
|
function createGradient(ctx, gradientOptions, startX, startY, endX, endY) {
|
|
208
|
-
if (!gradientOptions || !gradientOptions.type) {
|
|
209
|
-
throw new Error("Invalid gradient options. Provide a valid object with
|
|
209
|
+
if (!gradientOptions || !gradientOptions.type || !gradientOptions.colors) {
|
|
210
|
+
throw new Error("Invalid gradient options. Provide a valid object with type and colors properties.");
|
|
211
|
+
}
|
|
212
|
+
if (!Array.isArray(gradientOptions.colors)) {
|
|
213
|
+
throw new Error("Invalid gradient options. The colors property should be an array of color stops.");
|
|
210
214
|
}
|
|
211
215
|
if (gradientOptions.type === "linear") {
|
|
212
216
|
if (typeof startX !== "number" ||
|
|
@@ -215,6 +219,14 @@ function createGradient(ctx, gradientOptions, startX, startY, endX, endY) {
|
|
|
215
219
|
typeof endY !== "number") {
|
|
216
220
|
throw new Error("Invalid gradient options for linear gradient. Numeric values are required for startX, startY, endX, and endY.");
|
|
217
221
|
}
|
|
222
|
+
const gradient = ctx.createLinearGradient(startX, startY, endX, endY);
|
|
223
|
+
for (const colorStop of gradientOptions.colors) {
|
|
224
|
+
if (typeof colorStop.stop !== "number" || typeof colorStop.color !== "string") {
|
|
225
|
+
throw new Error("Invalid color stop. Each color stop should have a numeric stop value and a color string.");
|
|
226
|
+
}
|
|
227
|
+
gradient.addColorStop(colorStop.stop, colorStop.color);
|
|
228
|
+
}
|
|
229
|
+
return gradient;
|
|
218
230
|
}
|
|
219
231
|
else if (gradientOptions.type === "radial") {
|
|
220
232
|
if (typeof gradientOptions.startX !== "number" ||
|
|
@@ -225,17 +237,18 @@ function createGradient(ctx, gradientOptions, startX, startY, endX, endY) {
|
|
|
225
237
|
typeof gradientOptions.endRadius !== "number") {
|
|
226
238
|
throw new Error("Invalid gradient options for radial gradient. Numeric values are required for startX, startY, startRadius, endX, endY, and endRadius.");
|
|
227
239
|
}
|
|
240
|
+
const gradient = ctx.createRadialGradient(gradientOptions.startX, gradientOptions.startY, gradientOptions.startRadius, gradientOptions.endX, gradientOptions.endY, gradientOptions.endRadius);
|
|
241
|
+
for (const colorStop of gradientOptions.colors) {
|
|
242
|
+
if (typeof colorStop.stop !== "number" || typeof colorStop.color !== "string") {
|
|
243
|
+
throw new Error("Invalid color stop. Each color stop should have a numeric stop value and a color string.");
|
|
244
|
+
}
|
|
245
|
+
gradient.addColorStop(colorStop.stop, colorStop.color);
|
|
246
|
+
}
|
|
247
|
+
return gradient;
|
|
228
248
|
}
|
|
229
249
|
else {
|
|
230
250
|
throw new Error('Unsupported gradient type. Use "linear" or "radial".');
|
|
231
251
|
}
|
|
232
|
-
const gradient = gradientOptions.type === "linear"
|
|
233
|
-
? ctx.createLinearGradient(startX, startY, endX, endY)
|
|
234
|
-
: ctx.createRadialGradient(gradientOptions.startX, gradientOptions.startY, gradientOptions.startRadius, gradientOptions.endX, gradientOptions.endY, gradientOptions.endRadius);
|
|
235
|
-
for (const colorStop of gradientOptions.colors) {
|
|
236
|
-
gradient.addColorStop(colorStop.stop, colorStop.color);
|
|
237
|
-
}
|
|
238
|
-
return gradient;
|
|
239
252
|
}
|
|
240
253
|
/**
|
|
241
254
|
* Applies rotation to the canvas context.
|
|
@@ -264,8 +277,9 @@ function applyRotation(ctx, rotation, x, y, width, height) {
|
|
|
264
277
|
* @param width The width of the shape.
|
|
265
278
|
* @param height The height of the shape.
|
|
266
279
|
* @param borderRadius The border radius value.
|
|
280
|
+
* @param borderPosition The border radius position to be applied on.
|
|
267
281
|
*/
|
|
268
|
-
function imageRadius(ctx, image, x, y, width, height, borderRadius) {
|
|
282
|
+
function imageRadius(ctx, image, x, y, width, height, borderRadius, borderPosition = 'all') {
|
|
269
283
|
ctx.save();
|
|
270
284
|
ctx.beginPath();
|
|
271
285
|
if (borderRadius === "circular") {
|
|
@@ -296,8 +310,9 @@ function imageRadius(ctx, image, x, y, width, height, borderRadius) {
|
|
|
296
310
|
* @param width The width of the object.
|
|
297
311
|
* @param height The height of the object.
|
|
298
312
|
* @param borderRadius The border radius value.
|
|
313
|
+
* @param borderPosition The border radius position to be applied on.
|
|
299
314
|
*/
|
|
300
|
-
function objectRadius(ctx, x, y, width, height, borderRadius = 0.1) {
|
|
315
|
+
function objectRadius(ctx, x, y, width, height, borderRadius = 0.1, borderPosition = 'all') {
|
|
301
316
|
ctx.save();
|
|
302
317
|
if (borderRadius === "circular") {
|
|
303
318
|
const circleRadius = Math.min(width, height) / 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imageProperties.js","sourceRoot":"","sources":["../../../lib/canvas/utils/imageProperties.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imageProperties.js","sourceRoot":"","sources":["../../../lib/canvas/utils/imageProperties.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,4 +15,5 @@ export declare function drawText(ctx: any, textOptions: TextObject, size: any):
|
|
|
15
15
|
* @param textOptions The options for the text.
|
|
16
16
|
*/
|
|
17
17
|
export declare function WrappedText(ctx: any, text: string, x: number, y: number, maxWidth: number, textOptions: TextObject): void;
|
|
18
|
+
export declare function createGradient(ctx: any, gradientOptions: any, startX: number, startY: number, endX: number, endY: number): any;
|
|
18
19
|
//# sourceMappingURL=textProperties.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textProperties.d.ts","sourceRoot":"","sources":["../../../lib/canvas/utils/textProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"textProperties.d.ts","sourceRoot":"","sources":["../../../lib/canvas/utils/textProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,QAiFpE;AACD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,QAgDlH;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,OA+BxH"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.drawText = drawText;
|
|
4
4
|
exports.WrappedText = WrappedText;
|
|
5
|
+
exports.createGradient = createGradient;
|
|
5
6
|
/**
|
|
6
7
|
* Draws text on the canvas context.
|
|
7
8
|
* @param ctx The canvas rendering context.
|
|
@@ -9,66 +10,63 @@ exports.WrappedText = WrappedText;
|
|
|
9
10
|
*/
|
|
10
11
|
function drawText(ctx, textOptions, size) {
|
|
11
12
|
ctx.save();
|
|
13
|
+
// Apply rotation if specified
|
|
12
14
|
if (textOptions.rotation && textOptions.rotation !== 0) {
|
|
13
|
-
ctx.translate(textOptions.x || 0, textOptions
|
|
15
|
+
ctx.translate(textOptions.x || 0, textOptions.y || 0);
|
|
14
16
|
ctx.rotate(textOptions.rotation * Math.PI / 180);
|
|
15
17
|
}
|
|
16
18
|
ctx.font = `${textOptions.isBold ? 'bold ' : ''}${textOptions.fontSize || 16}px "${textOptions.fontName || 'Arial'}"`;
|
|
17
19
|
ctx.textAlign = textOptions.textAlign || 'left';
|
|
18
20
|
ctx.textBaseline = textOptions.textBaseline || 'alphabetic';
|
|
21
|
+
// Apply shadow
|
|
19
22
|
if (textOptions.shadow) {
|
|
20
23
|
const { color, offsetX, offsetY, blur, opacity } = textOptions.shadow;
|
|
21
24
|
ctx.shadowColor = color || "transparent";
|
|
22
25
|
ctx.shadowOffsetX = offsetX || 0;
|
|
23
26
|
ctx.shadowOffsetY = offsetY || 0;
|
|
24
27
|
ctx.shadowBlur = blur || 0;
|
|
25
|
-
ctx.globalAlpha = opacity ||
|
|
28
|
+
ctx.globalAlpha = opacity || 1;
|
|
26
29
|
}
|
|
27
|
-
|
|
30
|
+
// Apply opacity
|
|
31
|
+
if (textOptions.opacity !== undefined) {
|
|
28
32
|
if (textOptions.opacity > 1 || textOptions.opacity < 0)
|
|
29
33
|
throw new Error("Text opacity Error: the value can't be smaller than 0 or bigger than 1.");
|
|
30
34
|
ctx.globalAlpha = textOptions.opacity;
|
|
31
35
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
36
|
+
const textWidth = ctx.measureText(textOptions.text).width;
|
|
37
|
+
const textHeight = textOptions.fontSize || 16; // Rough estimate for height
|
|
38
|
+
// Apply gradient fill
|
|
39
|
+
if (textOptions.gradient) {
|
|
40
|
+
const gradientFill = createGradient(ctx, textOptions.gradient, textOptions.x || 0, textOptions.y || 0 - textHeight, (textOptions.x || 0) + textWidth, (textOptions.y || 0));
|
|
41
|
+
console.log("Gradient Fill Created:", gradientFill);
|
|
42
|
+
ctx.fillStyle = gradientFill;
|
|
35
43
|
}
|
|
36
44
|
else {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
else if (textOptions.gradient.type === 'radial') {
|
|
46
|
-
const gradient = ctx.createRadialGradient(textOptions.gradient?.startX || 0, textOptions.gradient?.startY || 10, textOptions.gradient?.startRadius || 0, textOptions.gradient?.endX || 20, textOptions.gradient?.endY || 30, textOptions.gradient?.endRadius || 30);
|
|
47
|
-
textOptions.gradient.colors.forEach(({ stop, color }) => {
|
|
48
|
-
gradient.addColorStop(stop, color);
|
|
49
|
-
});
|
|
50
|
-
ctx.fillStyle = gradient;
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
throw new Error("Error Gradient: Invalid gradient type. Valid types: `radial` or `linear`.");
|
|
54
|
-
}
|
|
45
|
+
ctx.fillStyle = textOptions.color || 'darkgray';
|
|
46
|
+
}
|
|
47
|
+
// Apply stroke with gradient
|
|
48
|
+
if (textOptions.outlined || textOptions.stroke) {
|
|
49
|
+
if (textOptions.stroke?.gradient) {
|
|
50
|
+
const gradientStroke = createGradient(ctx, textOptions.stroke.gradient, textOptions.x || 0, textOptions.y || 0 - textHeight, (textOptions.x || 0) + textWidth, (textOptions.y || 0));
|
|
51
|
+
console.log("Gradient Stroke Created:", gradientStroke);
|
|
52
|
+
ctx.strokeStyle = gradientStroke;
|
|
55
53
|
}
|
|
56
54
|
else {
|
|
57
|
-
ctx.
|
|
55
|
+
ctx.strokeStyle = textOptions.stroke?.color || textOptions.color;
|
|
58
56
|
}
|
|
57
|
+
ctx.lineWidth = textOptions.stroke?.width || 1;
|
|
58
|
+
ctx.strokeText(textOptions.text, textOptions.x || 0, textOptions.y || 0);
|
|
59
59
|
}
|
|
60
|
+
// Draw the text
|
|
60
61
|
if (textOptions.maxWidth) {
|
|
61
62
|
WrappedText(ctx, textOptions.text || 'Hello World', textOptions.x || 0, textOptions.y || 0, textOptions.maxWidth, textOptions);
|
|
62
63
|
}
|
|
63
64
|
else {
|
|
64
|
-
if (textOptions.
|
|
65
|
-
ctx.
|
|
65
|
+
if (!textOptions.rotation) {
|
|
66
|
+
ctx.fillText(textOptions.text, textOptions.x || 0, textOptions.y || 0);
|
|
66
67
|
}
|
|
67
68
|
else {
|
|
68
|
-
|
|
69
|
-
ctx.fillText(textOptions.text, textOptions.x, textOptions.y);
|
|
70
|
-
if (textOptions.rotation)
|
|
71
|
-
ctx.fillText(textOptions.text, 0, 0);
|
|
69
|
+
ctx.fillText(textOptions.text, 0, 0);
|
|
72
70
|
}
|
|
73
71
|
}
|
|
74
72
|
ctx.restore();
|
|
@@ -88,12 +86,10 @@ function WrappedText(ctx, text, x, y, maxWidth, textOptions) {
|
|
|
88
86
|
const fontSize = textOptions.fontSize || 16;
|
|
89
87
|
const lineHeight = textOptions.lineHeight || fontSize;
|
|
90
88
|
ctx.save();
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
ctx.
|
|
94
|
-
|
|
95
|
-
else {
|
|
96
|
-
ctx.fillStyle = textOptions.color || 'darkgray';
|
|
89
|
+
ctx.fillStyle = textOptions.color || 'darkgray';
|
|
90
|
+
if (textOptions.outlined || textOptions.stroke) {
|
|
91
|
+
ctx.strokeStyle = textOptions.stroke?.color || textOptions.color;
|
|
92
|
+
ctx.lineWidth = textOptions.stroke?.width || 1;
|
|
97
93
|
}
|
|
98
94
|
if (textOptions.rotation && textOptions.rotation !== 0) {
|
|
99
95
|
ctx.translate(x, y);
|
|
@@ -107,7 +103,7 @@ function WrappedText(ctx, text, x, y, maxWidth, textOptions) {
|
|
|
107
103
|
const testWidth = metrics.width;
|
|
108
104
|
if (testWidth > maxWidth && n > 0) {
|
|
109
105
|
const adjustedY = y + lineHeight;
|
|
110
|
-
if (textOptions.outlined) {
|
|
106
|
+
if (textOptions.outlined || textOptions.stroke) {
|
|
111
107
|
ctx.strokeText(currentLine.trim(), x, adjustedY);
|
|
112
108
|
}
|
|
113
109
|
else {
|
|
@@ -121,7 +117,7 @@ function WrappedText(ctx, text, x, y, maxWidth, textOptions) {
|
|
|
121
117
|
}
|
|
122
118
|
}
|
|
123
119
|
const adjustedY = y + lineHeight;
|
|
124
|
-
if (textOptions.outlined) {
|
|
120
|
+
if (textOptions.outlined || textOptions.stroke) {
|
|
125
121
|
ctx.strokeText(currentLine.trim(), x, adjustedY);
|
|
126
122
|
}
|
|
127
123
|
else {
|
|
@@ -129,4 +125,27 @@ function WrappedText(ctx, text, x, y, maxWidth, textOptions) {
|
|
|
129
125
|
}
|
|
130
126
|
ctx.restore();
|
|
131
127
|
}
|
|
128
|
+
function createGradient(ctx, gradientOptions, startX, startY, endX, endY) {
|
|
129
|
+
if (!gradientOptions || !gradientOptions.type || !gradientOptions.colors) {
|
|
130
|
+
throw new Error("Invalid gradient options. Provide a valid object with type and colors properties.");
|
|
131
|
+
}
|
|
132
|
+
if (!Array.isArray(gradientOptions.colors)) {
|
|
133
|
+
throw new Error("Invalid gradient options. The colors property should be an array of color stops.");
|
|
134
|
+
}
|
|
135
|
+
let gradient;
|
|
136
|
+
if (gradientOptions.type === "linear") {
|
|
137
|
+
gradient = ctx.createLinearGradient(startX, startY, endX, endY);
|
|
138
|
+
}
|
|
139
|
+
else if (gradientOptions.type === "radial") {
|
|
140
|
+
gradient = ctx.createRadialGradient(gradientOptions.startX || startX, gradientOptions.startY || startY, gradientOptions.startRadius || 0, gradientOptions.endX || endX, gradientOptions.endY || endY, gradientOptions.endRadius || 0);
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
throw new Error('Unsupported gradient type. Use "linear" or "radial".');
|
|
144
|
+
}
|
|
145
|
+
for (const colorStop of gradientOptions.colors) {
|
|
146
|
+
console.log(`Adding color stop: ${colorStop.stop} ${colorStop.color}`);
|
|
147
|
+
gradient.addColorStop(colorStop.stop, colorStop.color);
|
|
148
|
+
}
|
|
149
|
+
return gradient;
|
|
150
|
+
}
|
|
132
151
|
//# sourceMappingURL=textProperties.js.map
|