fix(pdf): add extern hints for pdfjs apis

This commit is contained in:
charlie
2025-12-15 18:05:32 +08:00
parent 98fad292eb
commit b107535024
3 changed files with 6 additions and 14 deletions

View File

@@ -32,27 +32,22 @@
(defn vw-to-scaled-pos
[^js viewer {:keys [page bounding rects]}]
(when-let [^js viewport (some-> viewer (.getPageView (dec page)) (.-viewport))]
(when-let [^js viewport (some-> viewer ^js (.getPageView (dec page)) (.-viewport))]
{:bounding (viewport-to-scaled bounding viewport)
:rects (for [rect rects] (viewport-to-scaled rect viewport))
:page page}))
(defn scaled-to-vw-pos
[^js viewer {:keys [page bounding rects]}]
(when-let [^js viewport (some-> viewer (.getPageView (dec page)) (.-viewport))]
(when-let [^js viewport (some-> viewer ^js (.getPageView (dec page)) (.-viewport))]
{:bounding (scaled-to-viewport bounding viewport)
:rects (for [rect rects] (scaled-to-viewport rect viewport))
:page page}))
(defn get-page-bounding
[^js viewer page-number]
(when-let [^js el (and page-number (.. viewer (getPageView (dec page-number)) -div))]
(bean/->clj (.toJSON (.getBoundingClientRect el)))))
(defn resolve-hls-layer!
[^js viewer page]
(when-let [^js text-layer (some-> viewer (.getPageView (dec page)) (.-textLayer))]
(let [cnt (.-div text-layer)
(when-let [^js text-layer (some-> viewer ^js (.getPageView (dec page)) (.-textLayer))]
(let [^js cnt (.-div text-layer)
cls "extensions__pdf-hls-layer"
doc js/document
layer (.querySelector cnt (str "." cls))]