kordoc 4.24.7 → 4.24.9
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/README.md +8 -9
- package/dist/{-GQDQXRQN.js → -6LXREJIR.js} +11 -11
- package/dist/{chunk-OMJPCWKS.js → chunk-2A54AIAG.js} +2 -2
- package/dist/{chunk-AYGMF6H5.cjs → chunk-2WWQ6NU5.cjs} +3 -3
- package/dist/chunk-2WWQ6NU5.cjs.map +1 -0
- package/dist/{chunk-7BZBMXWD.cjs → chunk-4BPHV36H.cjs} +6 -6
- package/dist/chunk-4BPHV36H.cjs.map +1 -0
- package/dist/{chunk-C4AY47C5.js → chunk-7NEBICPS.js} +2 -2
- package/dist/{chunk-7ICC55XY.js → chunk-A4TUSLGL.js} +2 -2
- package/dist/{chunk-FIS3WY5Q.js → chunk-BEPBXIKP.js} +2 -2
- package/dist/{chunk-E35YPWOX.js → chunk-C6QK3PY2.js} +2 -2
- package/dist/{chunk-MLFPEETP.js → chunk-D5S5S6OP.js} +2 -2
- package/dist/{chunk-JKZY6FX5.js → chunk-DF3YCAK6.js} +2 -2
- package/dist/{chunk-DZRXJEOF.js → chunk-EF4MEYFE.js} +3 -3
- package/dist/{chunk-ZQQGV7K2.js → chunk-ESSLFMY3.js} +6 -6
- package/dist/{chunk-BLWDQEBY.js → chunk-GINSLCL7.js} +2 -2
- package/dist/chunk-GS7T56RP.cjs.map +1 -1
- package/dist/chunk-J55UQC5H.cjs.map +1 -1
- package/dist/{chunk-WVZXPEHX.js → chunk-LVEY2XHM.js} +7 -5
- package/dist/chunk-LVEY2XHM.js.map +1 -0
- package/dist/{chunk-FQVWYJNM.js → chunk-MSPBBDR5.js} +2 -2
- package/dist/{chunk-EIGCAAVM.js → chunk-NDC4AGLX.js} +61 -16
- package/dist/chunk-NDC4AGLX.js.map +1 -0
- package/dist/{chunk-YQB3LPKQ.cjs → chunk-NSCYUL4P.cjs} +2 -2
- package/dist/chunk-NSCYUL4P.cjs.map +1 -0
- package/dist/{chunk-OPNMXBUR.js → chunk-O34AXZ4G.js} +2 -2
- package/dist/{chunk-EJPPVB2Y.js → chunk-R3DNJRDD.js} +2 -2
- package/dist/{chunk-GMKFXPEI.js → chunk-SB4VN4TR.js} +7 -5
- package/dist/chunk-SB4VN4TR.js.map +1 -0
- package/dist/{chunk-O4RQCDN2.js → chunk-SQCECEOH.js} +62 -17
- package/dist/chunk-SQCECEOH.js.map +1 -0
- package/dist/chunk-TK3FDAEE.cjs.map +1 -1
- package/dist/{chunk-MNG25FK4.cjs → chunk-TMHPNZ37.cjs} +222 -177
- package/dist/chunk-TMHPNZ37.cjs.map +1 -0
- package/dist/{chunk-EIUXBJZP.js → chunk-TO4T2M7R.js} +3 -3
- package/dist/{chunk-CG2Z6NB3.js → chunk-TY4PED6S.js} +2 -2
- package/dist/{chunk-VHAOAQZZ.cjs → chunk-UVMVLE3M.cjs} +3 -3
- package/dist/chunk-UVMVLE3M.cjs.map +1 -0
- package/dist/{chunk-DEDUWANG.js → chunk-VAR3NCSE.js} +151 -20
- package/dist/chunk-VAR3NCSE.js.map +1 -0
- package/dist/{chunk-N2JZGYFK.js → chunk-W6R7HH2Q.js} +4 -4
- package/dist/chunk-W6R7HH2Q.js.map +1 -0
- package/dist/{chunk-UDUEOBS5.js → chunk-WPA45TPL.js} +2 -2
- package/dist/{chunk-BNIXSB6D.js → chunk-YAKEEIR2.js} +2 -2
- package/dist/{chunk-V4PS653P.cjs → chunk-ZFM7UP72.cjs} +59 -57
- package/dist/chunk-ZFM7UP72.cjs.map +1 -0
- package/dist/chunks-L66VMJHU.js +10 -0
- package/dist/cli.js +30 -30
- package/dist/{formula-C55TRBHH.cjs → formula-3SARACGW.cjs} +9 -9
- package/dist/formula-3SARACGW.cjs.map +1 -0
- package/dist/{formula-6XLWGUCB.js → formula-MDHYCNKI.js} +4 -4
- package/dist/{formula-DCC5EOSX.js → formula-S7CTLTGZ.js} +3 -3
- package/dist/{image-ocr-EV7GVD3W.cjs → image-ocr-2T4NBJ73.cjs} +17 -17
- package/dist/image-ocr-2T4NBJ73.cjs.map +1 -0
- package/dist/{image-ocr-K3ZXDUNU.js → image-ocr-V6AQ4IAY.js} +6 -6
- package/dist/{image-ocr-L736MGYD.js → image-ocr-VDMEI7TD.js} +9 -9
- package/dist/index.cjs +826 -695
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +146 -15
- package/dist/index.js.map +1 -1
- package/dist/mcp.js +23 -23
- package/dist/{model-bundle-OOOJFMGR.js → model-bundle-HCTCHMA2.js} +5 -5
- package/dist/{models-ELFZII4R.js → models-NJROM7JD.js} +5 -5
- package/dist/page-range-QHHFTL7X.cjs.map +1 -1
- package/dist/{parse-worker-v2-WS35WZY5.js → parse-worker-v2-ALTGW2J3.js} +12 -12
- package/dist/{parser-K7Y44QHS.js → parser-6J5HFER5.js} +13 -12
- package/dist/parser-6J5HFER5.js.map +1 -0
- package/dist/{parser-X6P3JBT2.cjs → parser-L3G6ON4U.cjs} +160 -159
- package/dist/parser-L3G6ON4U.cjs.map +1 -0
- package/dist/{parser-CNRI55MG.js → parser-MY4WE64G.js} +10 -9
- package/dist/parser-MY4WE64G.js.map +1 -0
- package/dist/{pdf-ocr-QQPZLIHM.js → pdf-ocr-3VVSR4LN.js} +9 -9
- package/dist/{pdf-ocr-MVNHXGPS.js → pdf-ocr-HUSU2XMV.js} +6 -6
- package/dist/pdf-ocr-RF2SCGXD.cjs +31 -0
- package/dist/pdf-ocr-RF2SCGXD.cjs.map +1 -0
- package/dist/{profile-io-GSRLMU4D.js → profile-io-SQI3X7MD.js} +3 -3
- package/dist/{rasterize-3H5QKDH2.js → rasterize-BHW5UZY2.js} +3 -3
- package/dist/{redact-doc-TLBF7J7W.js → redact-doc-KJ6M63BP.js} +11 -11
- package/dist/{render-FTCOQ6WO.js → render-Z6N2GGKL.js} +7 -7
- package/dist/seal-PM4624BB.js +10 -0
- package/dist/{setup-WVZ47AKV.js → setup-MUBZ674O.js} +3 -3
- package/dist/visual-AV46N5ZN.js +21 -0
- package/dist/{watch-CA32Z7XB.js → watch-D4AUDKVN.js} +12 -12
- package/package.json +4 -4
- package/dist/chunk-7BZBMXWD.cjs.map +0 -1
- package/dist/chunk-AYGMF6H5.cjs.map +0 -1
- package/dist/chunk-DEDUWANG.js.map +0 -1
- package/dist/chunk-EIGCAAVM.js.map +0 -1
- package/dist/chunk-GMKFXPEI.js.map +0 -1
- package/dist/chunk-MNG25FK4.cjs.map +0 -1
- package/dist/chunk-N2JZGYFK.js.map +0 -1
- package/dist/chunk-O4RQCDN2.js.map +0 -1
- package/dist/chunk-V4PS653P.cjs.map +0 -1
- package/dist/chunk-VHAOAQZZ.cjs.map +0 -1
- package/dist/chunk-WVZXPEHX.js.map +0 -1
- package/dist/chunk-YQB3LPKQ.cjs.map +0 -1
- package/dist/chunks-XURCANPP.js +0 -10
- package/dist/formula-C55TRBHH.cjs.map +0 -1
- package/dist/image-ocr-EV7GVD3W.cjs.map +0 -1
- package/dist/parser-CNRI55MG.js.map +0 -1
- package/dist/parser-K7Y44QHS.js.map +0 -1
- package/dist/parser-X6P3JBT2.cjs.map +0 -1
- package/dist/pdf-ocr-S6GSKOPT.cjs +0 -31
- package/dist/pdf-ocr-S6GSKOPT.cjs.map +0 -1
- package/dist/seal-74R7KDRY.js +0 -10
- package/dist/visual-TEW6Y3NH.js +0 -21
- /package/dist/{-GQDQXRQN.js.map → -6LXREJIR.js.map} +0 -0
- /package/dist/{chunk-OMJPCWKS.js.map → chunk-2A54AIAG.js.map} +0 -0
- /package/dist/{chunk-C4AY47C5.js.map → chunk-7NEBICPS.js.map} +0 -0
- /package/dist/{chunk-7ICC55XY.js.map → chunk-A4TUSLGL.js.map} +0 -0
- /package/dist/{chunk-FIS3WY5Q.js.map → chunk-BEPBXIKP.js.map} +0 -0
- /package/dist/{chunk-E35YPWOX.js.map → chunk-C6QK3PY2.js.map} +0 -0
- /package/dist/{chunk-MLFPEETP.js.map → chunk-D5S5S6OP.js.map} +0 -0
- /package/dist/{chunk-JKZY6FX5.js.map → chunk-DF3YCAK6.js.map} +0 -0
- /package/dist/{chunk-DZRXJEOF.js.map → chunk-EF4MEYFE.js.map} +0 -0
- /package/dist/{chunk-ZQQGV7K2.js.map → chunk-ESSLFMY3.js.map} +0 -0
- /package/dist/{chunk-BLWDQEBY.js.map → chunk-GINSLCL7.js.map} +0 -0
- /package/dist/{chunk-FQVWYJNM.js.map → chunk-MSPBBDR5.js.map} +0 -0
- /package/dist/{chunk-OPNMXBUR.js.map → chunk-O34AXZ4G.js.map} +0 -0
- /package/dist/{chunk-EJPPVB2Y.js.map → chunk-R3DNJRDD.js.map} +0 -0
- /package/dist/{chunk-EIUXBJZP.js.map → chunk-TO4T2M7R.js.map} +0 -0
- /package/dist/{chunk-CG2Z6NB3.js.map → chunk-TY4PED6S.js.map} +0 -0
- /package/dist/{chunk-UDUEOBS5.js.map → chunk-WPA45TPL.js.map} +0 -0
- /package/dist/{chunk-BNIXSB6D.js.map → chunk-YAKEEIR2.js.map} +0 -0
- /package/dist/{chunks-XURCANPP.js.map → chunks-L66VMJHU.js.map} +0 -0
- /package/dist/{formula-6XLWGUCB.js.map → formula-MDHYCNKI.js.map} +0 -0
- /package/dist/{formula-DCC5EOSX.js.map → formula-S7CTLTGZ.js.map} +0 -0
- /package/dist/{image-ocr-K3ZXDUNU.js.map → image-ocr-V6AQ4IAY.js.map} +0 -0
- /package/dist/{image-ocr-L736MGYD.js.map → image-ocr-VDMEI7TD.js.map} +0 -0
- /package/dist/{model-bundle-OOOJFMGR.js.map → model-bundle-HCTCHMA2.js.map} +0 -0
- /package/dist/{models-ELFZII4R.js.map → models-NJROM7JD.js.map} +0 -0
- /package/dist/{parse-worker-v2-WS35WZY5.js.map → parse-worker-v2-ALTGW2J3.js.map} +0 -0
- /package/dist/{pdf-ocr-MVNHXGPS.js.map → pdf-ocr-3VVSR4LN.js.map} +0 -0
- /package/dist/{pdf-ocr-QQPZLIHM.js.map → pdf-ocr-HUSU2XMV.js.map} +0 -0
- /package/dist/{profile-io-GSRLMU4D.js.map → profile-io-SQI3X7MD.js.map} +0 -0
- /package/dist/{rasterize-3H5QKDH2.js.map → rasterize-BHW5UZY2.js.map} +0 -0
- /package/dist/{redact-doc-TLBF7J7W.js.map → redact-doc-KJ6M63BP.js.map} +0 -0
- /package/dist/{render-FTCOQ6WO.js.map → render-Z6N2GGKL.js.map} +0 -0
- /package/dist/{seal-74R7KDRY.js.map → seal-PM4624BB.js.map} +0 -0
- /package/dist/{setup-WVZ47AKV.js.map → setup-MUBZ674O.js.map} +0 -0
- /package/dist/{visual-TEW6Y3NH.js.map → visual-AV46N5ZN.js.map} +0 -0
- /package/dist/{watch-CA32Z7XB.js.map → watch-D4AUDKVN.js.map} +0 -0
|
@@ -5,15 +5,15 @@ import {
|
|
|
5
5
|
HEADING_RATIO_H3,
|
|
6
6
|
tidyScriptTags,
|
|
7
7
|
toTex
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-YAKEEIR2.js";
|
|
9
9
|
import {
|
|
10
10
|
ensureModelsIn,
|
|
11
11
|
getModelsDir
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-R3DNJRDD.js";
|
|
13
13
|
import {
|
|
14
14
|
safeMax,
|
|
15
15
|
safeMin
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-DF3YCAK6.js";
|
|
17
17
|
|
|
18
18
|
// src/ocr/models.ts
|
|
19
19
|
import { join } from "path";
|
|
@@ -616,6 +616,7 @@ function gapGlyphs(gray, w, h, ink) {
|
|
|
616
616
|
if (ch >= bh * 0.9 && cw <= bh * 0.15) continue;
|
|
617
617
|
const others = comps.filter((o) => o !== c && inBand(o) && !(o.x0 >= c.x0 && o.x1 <= c.x1 && o.y0 >= c.y0 && o.y1 <= c.y1));
|
|
618
618
|
const apart = !others.some((o) => o.x0 < c.x1 + 1 && o.x1 > c.x0 - 1);
|
|
619
|
+
const abut = !apart && ch >= bh * 0.3 && ch <= bh * 0.65 && !others.some((o) => o.x0 < c.x1 && o.x1 > c.x0);
|
|
619
620
|
const nearlyApart = !others.some((o) => Math.min(o.x1, c.x1) - Math.max(o.x0, c.x0) > 2);
|
|
620
621
|
const spans = [], runs = [];
|
|
621
622
|
let n = 0;
|
|
@@ -640,18 +641,11 @@ function gapGlyphs(gray, w, h, ink) {
|
|
|
640
641
|
const speck = Math.max(3, bh * 0.08);
|
|
641
642
|
const dot = ch <= bh * 0.25 && cw <= bh * 0.25 && ch >= speck && cw >= speck && cw >= ch * 0.6 && cw <= ch * 1.6;
|
|
642
643
|
const small = ch <= bh * 0.25 && cw <= bh * 0.25 && ch >= 2 && cw >= 2 && cw >= ch * 0.6 && cw <= ch * 1.6 && fill >= 0.6 && cy >= 0.3 && cy <= 0.7;
|
|
643
|
-
if (!apart && !(nearlyApart && ch >= bh * 0.6)) {
|
|
644
|
+
if (!apart && !abut && !(nearlyApart && ch >= bh * 0.6)) {
|
|
644
645
|
if (small) out.push({ x0: c.x0, x1: c.x1, mark: "\xB7" });
|
|
645
646
|
continue;
|
|
646
647
|
}
|
|
647
|
-
|
|
648
|
-
} else if (dot && fill >= 0.6 && cy >= 0.3 && cy <= 0.7) mark = "\xB7";
|
|
649
|
-
else if (small) mark = "\xB7";
|
|
650
|
-
else if (dot && fill >= 0.6 && cy >= 0.75 && cw >= ch * 0.8) mark = ".";
|
|
651
|
-
else if (ch <= bh * 0.4 && ch >= speck && cw >= ch * 0.75 && cw <= ch * 1.3 && fill < 0.6 && runs[ch >> 1] === 2 && cy >= 0.6) mark = "\u3002";
|
|
652
|
-
else if (ch <= bh * 0.15 && cw >= ch * 2 && cw <= bh * 0.8 && fill >= 0.7 && cy >= 0.35 && cy <= 0.75) mark = "-";
|
|
653
|
-
else if (ch >= bh * 0.5 && cw >= ch * 0.9 && cw <= ch * 1.4 && fill >= 0.4 && runs.every((r) => r <= 1) && top <= 0.4 && bottom >= 0.8) mark = "\u25B2";
|
|
654
|
-
else if (ch >= bh * 0.3 && ch <= bh * 0.65 && fill < 0.5) {
|
|
648
|
+
const bracket = () => {
|
|
655
649
|
const stem = (from, to) => {
|
|
656
650
|
let sx = 0, k = 0;
|
|
657
651
|
for (let y = from; y < to; y++) for (let x = c.x0; x < c.x1; x++) if (label[y * w + x] === c.id) {
|
|
@@ -660,9 +654,21 @@ function gapGlyphs(gray, w, h, ink) {
|
|
|
660
654
|
}
|
|
661
655
|
return k ? sx / k / cw : 0.5;
|
|
662
656
|
};
|
|
663
|
-
if (c.y0 <= bandT + bh * 0.15 && top >= 0.7 && bottom <= 0.5 && stem(c.y0 + band, c.y1) <= 0.35)
|
|
664
|
-
|
|
665
|
-
|
|
657
|
+
if (c.y0 <= bandT + bh * 0.15 && top >= 0.7 && bottom <= 0.5 && stem(c.y0 + band, c.y1) <= 0.35) return "\u300C";
|
|
658
|
+
if (c.y1 >= bandB - bh * 0.15 && bottom >= 0.7 && top <= 0.5 && stem(c.y0, c.y1 - band) >= 0.65) return "\u300D";
|
|
659
|
+
return null;
|
|
660
|
+
};
|
|
661
|
+
if (!apart && !abut) {
|
|
662
|
+
} else if (abut) {
|
|
663
|
+
if (fill < 0.5) mark = bracket();
|
|
664
|
+
} else if (dot && fill >= 0.6 && cy >= 0.3 && cy <= 0.7) mark = "\xB7";
|
|
665
|
+
else if (small) mark = "\xB7";
|
|
666
|
+
else if (dot && fill >= 0.6 && cy >= 0.75 && cw >= ch * 0.8) mark = ".";
|
|
667
|
+
else if (ch <= bh * 0.4 && ch >= speck && cw >= ch * 0.75 && cw <= ch * 1.3 && fill < 0.6 && runs[ch >> 1] === 2 && cy >= 0.6) mark = "\u3002";
|
|
668
|
+
else if (ch <= bh * 0.15 && cw >= ch * 2 && cw <= bh * 0.8 && fill >= 0.7 && cy >= 0.35 && cy <= 0.75) mark = "-";
|
|
669
|
+
else if (ch >= bh * 0.5 && cw >= ch * 0.9 && cw <= ch * 1.4 && fill >= 0.4 && runs.every((r) => r <= 1) && top <= 0.4 && bottom >= 0.8) mark = "\u25B2";
|
|
670
|
+
else if (ch >= bh * 0.3 && ch <= bh * 0.65 && fill < 0.5) mark = bracket();
|
|
671
|
+
else if (ch >= charH * 0.6 && cw >= ch * 0.8 && cw <= ch * 1.25 && fill < 0.5 && top >= 0.8 && bottom >= 0.8 && runs[ch >> 1] === 2) mark = ch <= charH * 0.92 ? "\u25A1" : "\u25A1\0";
|
|
666
672
|
if (!mark && ch >= bh * 0.6 && cw >= ch * 0.25 && cw <= ch * 0.7 && fill <= 0.4 && runs.every((r) => r <= 1)) {
|
|
667
673
|
const mx = (y) => {
|
|
668
674
|
let sx = 0, k = 0;
|
|
@@ -732,6 +738,34 @@ function dashRatio(gray, w, h, ink, cx) {
|
|
|
732
738
|
const dash = comps.filter((c) => c.y1 - c.y0 <= bh * 0.25 && c.x1 - c.x0 >= (c.y1 - c.y0) * 2 && Math.abs((c.x0 + c.x1) / 2 - cx) <= bh * 0.6).sort((a, b) => Math.abs((a.x0 + a.x1) / 2 - cx) - Math.abs((b.x0 + b.x1) / 2 - cx))[0];
|
|
733
739
|
return dash ? (dash.x1 - dash.x0) / bh : null;
|
|
734
740
|
}
|
|
741
|
+
function leadingRing(gray, w, h, ink, firstX) {
|
|
742
|
+
if (firstX < h * 0.8) return false;
|
|
743
|
+
const isInk = (v) => ink.darkInk ? v <= ink.threshold : v > ink.threshold;
|
|
744
|
+
let left = -1;
|
|
745
|
+
for (let x = 0; x < w && left < 0; x++) for (let y = 0; y < h; y++) if (isInk(gray[y * w + x])) {
|
|
746
|
+
left = x;
|
|
747
|
+
break;
|
|
748
|
+
}
|
|
749
|
+
if (left < 0 || ringBullet(gray, w, h, ink, left + h * 0.25) !== "\u25CB") return false;
|
|
750
|
+
const colInk = (x) => {
|
|
751
|
+
for (let y = 0; y < h; y++) if (isInk(gray[y * w + x])) return true;
|
|
752
|
+
return false;
|
|
753
|
+
};
|
|
754
|
+
let right = left;
|
|
755
|
+
while (right + 1 < w && colInk(right + 1)) right++;
|
|
756
|
+
let top = h, bottom = -1;
|
|
757
|
+
for (let y = 0; y < h; y++) for (let x = left; x <= right; x++) if (isInk(gray[y * w + x])) {
|
|
758
|
+
top = Math.min(top, y);
|
|
759
|
+
bottom = Math.max(bottom, y);
|
|
760
|
+
break;
|
|
761
|
+
}
|
|
762
|
+
const cw = right - left + 1, ch = bottom - top + 1, kx = Math.max(1, Math.round(cw * 0.1)), ky = Math.max(1, Math.round(ch * 0.1));
|
|
763
|
+
const corner = (x0, y0) => {
|
|
764
|
+
for (let y = y0; y < y0 + ky; y++) for (let x = x0; x < x0 + kx; x++) if (isInk(gray[y * w + x])) return true;
|
|
765
|
+
return false;
|
|
766
|
+
};
|
|
767
|
+
return !corner(left, top) && !corner(right + 1 - kx, top) && !corner(left, bottom + 1 - ky) && !corner(right + 1 - kx, bottom + 1 - ky);
|
|
768
|
+
}
|
|
735
769
|
function discAt(gray, w, h, ink, cx) {
|
|
736
770
|
const { comps, label } = components(gray, w, h, ink);
|
|
737
771
|
let charH = 0;
|
|
@@ -2007,7 +2041,17 @@ function dropHeadBandClipGrids(clipGrids, lineGrids) {
|
|
|
2007
2041
|
if (clipGrids.length === 0 || lineGrids.length === 0) return clipGrids;
|
|
2008
2042
|
const near2 = (a, b) => Math.abs(a - b) <= SHADE_CLIP_TOL;
|
|
2009
2043
|
const overlaps = (a, b) => Math.min(a.x2, b.x2) > Math.max(a.x1, b.x1) && Math.min(a.y2, b.y2) > Math.max(a.y1, b.y1);
|
|
2010
|
-
|
|
2044
|
+
const kept = clipGrids.filter((c) => c.clipParent || !c.cells?.length || !lineGrids.some((l) => l.rowYs.length > c.rowYs.length && l.colXs.length === c.colXs.length && c.colXs.every((x, k) => near2(x, l.colXs[k])) && c.rowYs.every((y, k) => near2(y, l.rowYs[k])) && !clipGrids.some((o) => o !== c && overlaps(o.bbox, l.bbox))));
|
|
2045
|
+
return kept.filter((c) => !lineGrids.some((l) => headBandTiles(kept, l, near2, overlaps).includes(c)));
|
|
2046
|
+
}
|
|
2047
|
+
function headBandTiles(clips, l, near2, overlaps) {
|
|
2048
|
+
const onRow = (y) => l.rowYs.some((r) => near2(r, y));
|
|
2049
|
+
const band = clips.filter((c) => !c.clipParent && c.cells?.length && near2(c.bbox.y2, l.bbox.y2) && c.bbox.y1 > l.bbox.y1 + SHADE_CLIP_TOL && c.bbox.x1 >= l.bbox.x1 - SHADE_CLIP_TOL && c.bbox.x2 <= l.bbox.x2 + SHADE_CLIP_TOL && c.rowYs.every(onRow)).sort((a, b) => a.bbox.x1 - b.bbox.x1);
|
|
2050
|
+
if (band.length < 2 || !near2(band[0].bbox.x1, l.bbox.x1) || !near2(band[band.length - 1].bbox.x2, l.bbox.x2)) return [];
|
|
2051
|
+
if (band.some((c, k) => k > 0 && c.bbox.x1 > band[k - 1].bbox.x2 + SHADE_CLIP_TOL)) return [];
|
|
2052
|
+
const bottom = Math.min(...band.map((c) => c.bbox.y1));
|
|
2053
|
+
const body = { ...l.bbox, y2: bottom };
|
|
2054
|
+
return clips.some((o) => !band.includes(o) && overlaps(o.bbox, body)) ? [] : band;
|
|
2011
2055
|
}
|
|
2012
2056
|
function enforceMinWidth(colXs, minWidth, narrowRuns = true) {
|
|
2013
2057
|
if (colXs.length <= 2) return colXs;
|
|
@@ -10129,6 +10173,7 @@ export {
|
|
|
10129
10173
|
gapGlyphs,
|
|
10130
10174
|
ringBullet,
|
|
10131
10175
|
dashRatio,
|
|
10176
|
+
leadingRing,
|
|
10132
10177
|
discAt,
|
|
10133
10178
|
serifOne,
|
|
10134
10179
|
starRun,
|
|
@@ -10191,4 +10236,4 @@ export {
|
|
|
10191
10236
|
UNRULED_REGION_TABLES,
|
|
10192
10237
|
mergeOcrImageRegions
|
|
10193
10238
|
};
|
|
10194
|
-
//# sourceMappingURL=chunk-
|
|
10239
|
+
//# sourceMappingURL=chunk-SQCECEOH.js.map
|