@pixldocs/canvas-renderer 0.5.383 → 0.5.385
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/{index-BOr3yt00.cjs → index-BoNuF4Yx.cjs} +52 -5
- package/dist/{index-BOr3yt00.cjs.map → index-BoNuF4Yx.cjs.map} +1 -1
- package/dist/{index-BHS16lGJ.js → index-Y4ydIPau.js} +52 -5
- package/dist/{index-BHS16lGJ.js.map → index-Y4ydIPau.js.map} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/{vectorPdfExport-BegTwE0k.js → vectorPdfExport-CqGfBDhF.js} +4 -4
- package/dist/{vectorPdfExport-BegTwE0k.js.map → vectorPdfExport-CqGfBDhF.js.map} +1 -1
- package/dist/{vectorPdfExport-DxRLDNdM.cjs → vectorPdfExport-PfyXnorA.cjs} +4 -4
- package/dist/{vectorPdfExport-DxRLDNdM.cjs.map → vectorPdfExport-PfyXnorA.cjs.map} +1 -1
- package/package.json +1 -1
|
@@ -15419,6 +15419,14 @@ const PageCanvas = react.forwardRef(
|
|
|
15419
15419
|
finalHeight = 0;
|
|
15420
15420
|
finalScaleX = 1;
|
|
15421
15421
|
finalScaleY = 1;
|
|
15422
|
+
} else if (obj instanceof fabric__namespace.Textbox && isActiveSelection && (sourceElement == null ? void 0 : sourceElement.type) === "text" && (activeSelectionResizeHandle === "ml" || activeSelectionResizeHandle === "mr" || activeSelectionResizeHandle === "mt" || activeSelectionResizeHandle === "mb") && Math.min(
|
|
15423
|
+
((sourceElement.angle ?? obj.angle ?? 0) % 360 + 360) % 360,
|
|
15424
|
+
360 - ((sourceElement.angle ?? obj.angle ?? 0) % 360 + 360) % 360
|
|
15425
|
+
) > 0.5) {
|
|
15426
|
+
finalWidth = Math.max(1, intrinsicWidth);
|
|
15427
|
+
finalHeight = Math.max(1, intrinsicHeight);
|
|
15428
|
+
finalScaleX = 1;
|
|
15429
|
+
finalScaleY = 1;
|
|
15422
15430
|
} else if (obj instanceof fabric__namespace.Textbox && isActiveSelection && (Math.abs((decomposed.scaleX ?? 1) - 1) > 1e-3 || Math.abs((decomposed.scaleY ?? 1) - 1) > 1e-3)) {
|
|
15423
15431
|
const sx = Math.abs(decomposed.scaleX || 1);
|
|
15424
15432
|
const sy = Math.abs(decomposed.scaleY || 1);
|
|
@@ -15618,6 +15626,45 @@ const PageCanvas = react.forwardRef(
|
|
|
15618
15626
|
if (sourceElement && sourceElement.opacity !== void 0) {
|
|
15619
15627
|
elementUpdate.opacity = sourceElement.opacity;
|
|
15620
15628
|
}
|
|
15629
|
+
const isActiveSelectionSideHandle = activeSelectionResizeHandle === "ml" || activeSelectionResizeHandle === "mr" || activeSelectionResizeHandle === "mt" || activeSelectionResizeHandle === "mb";
|
|
15630
|
+
if (isActiveSelection && isActiveSelectionSideHandle && obj instanceof fabric__namespace.Textbox && (sourceElement == null ? void 0 : sourceElement.type) === "text") {
|
|
15631
|
+
const cleanAngle = Number.isFinite(sourceElement.angle) ? sourceElement.angle ?? 0 : obj.angle ?? decomposed.angle ?? 0;
|
|
15632
|
+
const normalizedTextAngle = (cleanAngle % 360 + 360) % 360;
|
|
15633
|
+
const isRotatedText = Math.min(normalizedTextAngle, 360 - normalizedTextAngle) > 0.5;
|
|
15634
|
+
if (isRotatedText) {
|
|
15635
|
+
try {
|
|
15636
|
+
const cleanW = Math.max(1, Number(obj.width ?? elementUpdate.width ?? finalWidth));
|
|
15637
|
+
const cleanH = Math.max(1, Number(elementUpdate.height ?? obj.height ?? finalHeight));
|
|
15638
|
+
const cx = decomposed.translateX ?? absoluteLeft + cleanW / 2;
|
|
15639
|
+
const cy = decomposed.translateY ?? absoluteTop + cleanH / 2;
|
|
15640
|
+
const theta = fabric__namespace.util.degreesToRadians(cleanAngle);
|
|
15641
|
+
const cos = Math.cos(theta);
|
|
15642
|
+
const sin = Math.sin(theta);
|
|
15643
|
+
const cleanAbsLeft = cx - (cos * cleanW / 2 - sin * cleanH / 2);
|
|
15644
|
+
const cleanAbsTop = cy - (sin * cleanW / 2 + cos * cleanH / 2);
|
|
15645
|
+
const cleanStorePos = absoluteToStorePosition(cleanAbsLeft, cleanAbsTop, objId, pageChildrenForSave);
|
|
15646
|
+
elementUpdate.left = cleanStorePos.left;
|
|
15647
|
+
elementUpdate.top = cleanStorePos.top;
|
|
15648
|
+
elementUpdate.width = cleanW;
|
|
15649
|
+
elementUpdate.height = cleanH;
|
|
15650
|
+
elementUpdate.angle = cleanAngle;
|
|
15651
|
+
elementUpdate.scaleX = 1;
|
|
15652
|
+
elementUpdate.scaleY = 1;
|
|
15653
|
+
elementUpdate.skewX = 0;
|
|
15654
|
+
elementUpdate.skewY = 0;
|
|
15655
|
+
elementUpdate.transformMatrix = fabric__namespace.util.composeMatrix({
|
|
15656
|
+
translateX: cx,
|
|
15657
|
+
translateY: cy,
|
|
15658
|
+
angle: cleanAngle,
|
|
15659
|
+
scaleX: 1,
|
|
15660
|
+
scaleY: 1,
|
|
15661
|
+
skewX: 0,
|
|
15662
|
+
skewY: 0
|
|
15663
|
+
});
|
|
15664
|
+
} catch {
|
|
15665
|
+
}
|
|
15666
|
+
}
|
|
15667
|
+
}
|
|
15621
15668
|
if (debugGroupTextCornerResize && obj instanceof fabric__namespace.Textbox) {
|
|
15622
15669
|
logGroupTextResizeDebug("store-update-text", {
|
|
15623
15670
|
time: Math.round(performance.now()),
|
|
@@ -24834,9 +24881,9 @@ function captureFabricCanvasSvgForPdf(fabricInstance, canvasWidth, canvasHeight)
|
|
|
24834
24881
|
}
|
|
24835
24882
|
return svgString;
|
|
24836
24883
|
}
|
|
24837
|
-
const resolvedPackageVersion = "0.5.
|
|
24884
|
+
const resolvedPackageVersion = "0.5.385";
|
|
24838
24885
|
const PACKAGE_VERSION = resolvedPackageVersion;
|
|
24839
|
-
const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.
|
|
24886
|
+
const DEPLOYMENT_VERSION_MARKER = "__PIXLDOCS_CANVAS_RENDERER_VERSION__:0.5.385";
|
|
24840
24887
|
const roundParityValue = (value) => {
|
|
24841
24888
|
if (typeof value !== "number") return value;
|
|
24842
24889
|
return Number.isFinite(value) ? Number(value.toFixed(3)) : value;
|
|
@@ -25650,7 +25697,7 @@ class PixldocsRenderer {
|
|
|
25650
25697
|
await this.waitForCanvasScene(container, cloned, i);
|
|
25651
25698
|
}
|
|
25652
25699
|
console.log(`[canvas-renderer][pdf-unified] mounted ${cloned.pages.length} page(s), handing off to client exportMultiPagePdf`);
|
|
25653
|
-
const { exportMultiPagePdf, preparePagesForExport } = await Promise.resolve().then(() => require("./vectorPdfExport-
|
|
25700
|
+
const { exportMultiPagePdf, preparePagesForExport } = await Promise.resolve().then(() => require("./vectorPdfExport-PfyXnorA.cjs"));
|
|
25654
25701
|
const prepared = preparePagesForExport(
|
|
25655
25702
|
cloned.pages,
|
|
25656
25703
|
canvasWidth,
|
|
@@ -27970,7 +28017,7 @@ async function prepareLiveCanvasSvgForPdf(rawSvg, pageWidth, pageHeight, pageKey
|
|
|
27970
28017
|
if (options == null ? void 0 : options.stripPageBackground) stripRootPageBackgroundFromSvg(svgToDraw);
|
|
27971
28018
|
sanitizeSvgTreeForPdf(svgToDraw);
|
|
27972
28019
|
try {
|
|
27973
|
-
const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await Promise.resolve().then(() => require("./vectorPdfExport-
|
|
28020
|
+
const { bakeTextAnchorPositionsFromLiveSvg, logTextMeasurementDiagnostic } = await Promise.resolve().then(() => require("./vectorPdfExport-PfyXnorA.cjs"));
|
|
27974
28021
|
try {
|
|
27975
28022
|
await logTextMeasurementDiagnostic(svgToDraw);
|
|
27976
28023
|
} catch {
|
|
@@ -28367,4 +28414,4 @@ exports.setAutoShrinkDebug = setAutoShrinkDebug;
|
|
|
28367
28414
|
exports.setBundledAssetPrefixes = setBundledAssetPrefixes;
|
|
28368
28415
|
exports.warmResolvedTemplateForPreview = warmResolvedTemplateForPreview;
|
|
28369
28416
|
exports.warmTemplateFromForm = warmTemplateFromForm;
|
|
28370
|
-
//# sourceMappingURL=index-
|
|
28417
|
+
//# sourceMappingURL=index-BoNuF4Yx.cjs.map
|