@rhwp/core 0.7.17 → 0.7.19

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": "@rhwp/core",
3
- "version": "0.7.17",
3
+ "version": "0.7.19",
4
4
  "description": "HWP/HWPX file parser and renderer — Rust + WebAssembly",
5
5
  "type": "module",
6
6
  "main": "rhwp.js",
package/rhwp.d.ts CHANGED
@@ -59,6 +59,18 @@ export class HwpDocument {
59
59
  * 스타일을 적용한다 (본문 문단).
60
60
  */
61
61
  applyStyle(sec_idx: number, para_idx: number, style_id: number): string;
62
+ /**
63
+ * [Task #2230] 기존 Picture 컨트롤에 이미지를 지정한다 — 그림 미지정
64
+ * placeholder(missing image 컨트롤)의 편집 뷰 그림 삽입.
65
+ *
66
+ * `cell_path_json` 이 빈 문자열 또는 `"[]"` 면 본문 문단의 컨트롤,
67
+ * 그 외에는 셀/글상자 안 문단의 컨트롤을 대상으로 한다. 개체 틀 크기는
68
+ * 유지되고(한컴 placeholder 는 틀에 그림을 맞춤) BinData 등록 규칙은
69
+ * insertPicture 와 공유한다.
70
+ *
71
+ * 반환: `{"ok":true,"binDataId":<N>}`
72
+ */
73
+ assignPictureImage(section_idx: number, parent_para_idx: number, cell_path_json: string, control_idx: number, image_data: Uint8Array, natural_width_px: number, natural_height_px: number, extension: string): string;
62
74
  /**
63
75
  * Batch 모드를 시작한다. 이후 Command 호출 시 paginate()를 건너뛴다.
64
76
  */
@@ -110,6 +122,12 @@ export class HwpDocument {
110
122
  * startCharOffset, endCellParaIdx, endCharOffset }`. positional 과 동일 동작.
111
123
  */
112
124
  copySelectionInCellEx(options_json: string): string;
125
+ /**
126
+ * 선택된 표 셀 범위를 행/열 바꿈 복사용 내부 버퍼에 저장한다.
127
+ *
128
+ * 반환값: JSON `{"ok":true,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
129
+ */
130
+ copyTableCellsTransposed(section_idx: number, parent_para_idx: number, control_idx: number, start_row: number, start_col: number, end_row: number, end_col: number): string;
113
131
  /**
114
132
  * 내장 템플릿에서 빈 문서를 생성한다.
115
133
  *
@@ -314,6 +332,10 @@ export class HwpDocument {
314
332
  * 컨트롤 객체를 HTML 문자열로 변환한다.
315
333
  */
316
334
  exportControlHtml(section_idx: number, para_idx: number, cell_path_json: string, control_idx: number): string;
335
+ /**
336
+ * HML 원본의 공통 IR을 HWPML 2.91 XML로 직렬화하여 반환한다.
337
+ */
338
+ exportHml(): Uint8Array;
317
339
  /**
318
340
  * 문서를 HWP 바이너리로 내보낸다.
319
341
  *
@@ -383,6 +405,10 @@ export class HwpDocument {
383
405
  * 특정 언어 카테고리에서 글꼴 이름으로 ID를 찾거나 등록한다.
384
406
  */
385
407
  findOrCreateFontIdForLang(lang: number, name: string): number;
408
+ /**
409
+ * 지연된 페이지네이션을 즉시 flush하고 최신 페이지 수를 반환한다.
410
+ */
411
+ flushDeferredPagination(): string;
386
412
  /**
387
413
  * 문서 내 모든 책갈피 목록 반환
388
414
  */
@@ -402,6 +428,7 @@ export class HwpDocument {
402
428
  * `compat` 는 API/URL 호환성과 이후 보수적인 direct replay 튜닝을 위해 남겨 둔 선택지다.
403
429
  */
404
430
  getCanvasKitReplayPlan(page_num: number, mode: string): string;
431
+ getCanvasKitReplayPlanWithProfile(page_num: number, mode: string, profile: string): string;
405
432
  /**
406
433
  * 문서에 저장된 캐럿 위치를 반환한다 (문서 로딩 시 캐럿 자동 배치용).
407
434
  *
@@ -424,6 +451,12 @@ export class HwpDocument {
424
451
  * 반환: JSON `{"row":N,"col":N,"rowSpan":N,"colSpan":N}`
425
452
  */
426
453
  getCellInfoByPath(section_idx: number, parent_para_idx: number, path_json: string): string;
454
+ /**
455
+ * 셀 고유 속성을 조회한다.
456
+ *
457
+ * cellzone overlay를 합성하지 않고 셀 자체의 borderFill만 반환한다.
458
+ */
459
+ getCellOwnProperties(section_idx: number, parent_para_idx: number, control_idx: number, cell_idx: number): string;
427
460
  /**
428
461
  * 셀 내부 문단의 문단 속성을 조회한다.
429
462
  */
@@ -511,6 +544,12 @@ export class HwpDocument {
511
544
  * 반환: JSON `{"pageIndex":N,"x":F,"y":F,"height":F}`
512
545
  */
513
546
  getCursorRectByPath(section_idx: number, parent_para_idx: number, path_json: string, char_offset: number): string;
547
+ /**
548
+ * [#2021] 경로 기반 커서 좌표 조회 + 페이지 힌트 — 직전 캐럿 페이지를 전달하면
549
+ * 해당 페이지(±1)를 먼저 탐색해, 거대 표 문서에서 캐시 무효화 직후의 선형 페이지
550
+ * 재빌드 비용을 피한다. 힌트가 틀려도 종전 전체 탐색으로 fallback (좌표 불변).
551
+ */
552
+ getCursorRectByPathNear(section_idx: number, parent_para_idx: number, path_json: string, char_offset: number, hint_page: number): string;
514
553
  /**
515
554
  * 표 셀 내부 커서 위치의 픽셀 좌표를 반환한다.
516
555
  *
@@ -671,6 +710,15 @@ export class HwpDocument {
671
710
  * → .paragraphs[inner_para].controls[inner_ctrl] = Picture
672
711
  */
673
712
  getHeaderFooterPictureProperties(section_idx: number, outer_para_idx: number, outer_control_idx: number, inner_para_idx: number, inner_control_idx: number): string;
713
+ /**
714
+ * HML 열기 메타데이터와 손실 진단을 JSON으로 반환한다.
715
+ * 다른 입력 포맷에서는 `null`을 반환한다.
716
+ */
717
+ getHmlOpenMetadata(): string;
718
+ /**
719
+ * HML 저장 가능 여부와 모든 차단 진단을 canonical JSON DTO로 반환한다.
720
+ */
721
+ getHmlSaveState(): string;
674
722
  /**
675
723
  * 문단 내 줄 정보를 반환한다 (커서 수직 이동/Home/End용).
676
724
  *
@@ -730,6 +778,7 @@ export class HwpDocument {
730
778
  * 페이지 레이어 트리를 JSON 문자열로 반환한다.
731
779
  */
732
780
  getPageLayerTree(page_num: number): string;
781
+ getPageLayerTreeWithProfile(page_num: number, profile: string): string;
733
782
  /**
734
783
  * 위치에 해당하는 글로벌 쪽 번호 반환
735
784
  */
@@ -837,9 +886,15 @@ export class HwpDocument {
837
886
  */
838
887
  getShowTransparentBorders(): boolean;
839
888
  /**
840
- * 원본 파일 형식을 반환한다 ("hwp" 또는 "hwpx").
889
+ * 원본 파일 형식을 반환한다 ("hwp", "hwpx", 또는 "hml").
841
890
  */
842
891
  getSourceFormat(): string;
892
+ /**
893
+ * 문서 구조(개요/조문) 트리를 JSON으로 반환 (사이드바 목차 네비게이션용)
894
+ *
895
+ * `mode`: `"auto"` | `"outline"` | `"clause"` (인식 불가 시 `auto`).
896
+ */
897
+ getStructure(mode: string): string;
843
898
  /**
844
899
  * 특정 문단의 스타일을 조회한다.
845
900
  *
@@ -955,6 +1010,10 @@ export class HwpDocument {
955
1010
  * 내부 클립보드에 데이터가 있는지 확인한다.
956
1011
  */
957
1012
  hasInternalClipboard(): boolean;
1013
+ /**
1014
+ * 행/열 바꿈 복사 버퍼 보유 여부를 반환한다.
1015
+ */
1016
+ hasTableTransposeClipboard(): boolean;
958
1017
  /**
959
1018
  * 페이지 좌표에서 문서 위치를 찾는다.
960
1019
  *
@@ -1129,6 +1188,14 @@ export class HwpDocument {
1129
1188
  */
1130
1189
  insertTextInCell(section_idx: number, parent_para_idx: number, control_idx: number, cell_idx: number, cell_para_idx: number, char_offset: number, text: string): string;
1131
1190
  insertTextInCellByPath(section_idx: number, parent_para_idx: number, path_json: string, char_offset: number, text: string): string;
1191
+ /**
1192
+ * 표 셀 내부 문단에 텍스트를 삽입하되 전체 페이지네이션은 호출자가 지연한다.
1193
+ *
1194
+ * Studio의 page-local 단일 입력처럼 현재 페이지를 먼저 갱신하고 idle 시점에
1195
+ * 전체 페이지네이션을 한 번만 수행하는 경로에서 사용한다.
1196
+ * 결과 JSON은 `charOffset`과 상대 cell-flow 변화 신호 `cellFlowChanged`를 포함한다.
1197
+ */
1198
+ insertTextInCellDeferredPagination(section_idx: number, parent_para_idx: number, control_idx: number, cell_idx: number, cell_para_idx: number, char_offset: number, text: string): string;
1132
1199
  /**
1133
1200
  * `insertTextInCell` 의 options object 변형 (#1413).
1134
1201
  *
@@ -1304,6 +1371,18 @@ export class HwpDocument {
1304
1371
  * 반환값: JSON `{"ok":true,"cellParaIdx":<idx>,"charOffset":<offset>}`
1305
1372
  */
1306
1373
  pasteInternalInCellByPath(section_idx: number, parent_para_idx: number, path_json: string, char_offset: number): string;
1374
+ /**
1375
+ * 행/열 바꿈 복사 버퍼를 대상 시작 셀부터 붙여넣는다.
1376
+ *
1377
+ * 반환값: JSON `{"ok":true,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
1378
+ */
1379
+ pasteTableCellsTransposed(section_idx: number, parent_para_idx: number, control_idx: number, start_row: number, start_col: number): string;
1380
+ /**
1381
+ * 행/열 바꿈 복사 버퍼를 커서 위치에 새 표로 생성해 붙여넣는다.
1382
+ *
1383
+ * 반환값: JSON `{"ok":true,"paraIdx":N,"controlIdx":N,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
1384
+ */
1385
+ pasteTableCellsTransposedAsTable(section_idx: number, para_idx: number, char_offset: number): string;
1307
1386
  /**
1308
1387
  * 사용자 명시 요청에 의한 lineseg 전체 reflow (#177).
1309
1388
  *
@@ -1365,12 +1444,15 @@ export class HwpDocument {
1365
1444
  * - `"all"` → 모든 PaintOp 렌더 (기본 `renderPageToCanvas` 와 동일)
1366
1445
  * - `"background"` → page background layer
1367
1446
  * - `"flow"` → 본문 layer (BehindText / InFrontOfText plane 제외)
1447
+ * - `"flow-dynamic"` → 본문 layer 중 Image/RawSvg 제외
1448
+ * - `"flow-static"` → page background + 본문 Image/RawSvg layer
1368
1449
  * - `"behind"` → BehindText overlay layer
1369
1450
  * - `"front"` → InFrontOfText overlay layer
1370
1451
  *
1371
1452
  * 본문 Canvas 와 overlay 컨테이너를 분리하는 다층 layer 아키텍처에서 사용.
1372
1453
  */
1373
1454
  renderPageToCanvasFiltered(page_num: number, canvas: HTMLCanvasElement, scale: number, layer_kind: string): void;
1455
+ renderPageToCanvasFilteredWithProfile(page_num: number, canvas: HTMLCanvasElement, scale: number, layer_kind: string, profile: string): void;
1374
1456
  /**
1375
1457
  * 특정 페이지를 기존 PageRenderTree 경로로 Canvas 2D에 직접 렌더링한다.
1376
1458
  */
@@ -1448,6 +1530,12 @@ export class HwpDocument {
1448
1530
  * [Task #1138] 표 셀 내 Shape 속성 변경 (by_path).
1449
1531
  */
1450
1532
  setCellShapePropertiesByPath(section_idx: number, parent_para_idx: number, cell_path_json: string, inner_control_idx: number, props_json: string): string;
1533
+ /**
1534
+ * 선택 영역을 하나의 셀처럼 취급하는 cellzone 테두리/배경 속성을 적용한다.
1535
+ *
1536
+ * 반환: JSON `{"ok":true,"startRow":...,"borderFillId":...}`
1537
+ */
1538
+ setCellZoneProperties(section_idx: number, parent_para_idx: number, control_idx: number, start_row: number, start_col: number, end_row: number, end_col: number, json: string): string;
1451
1539
  /**
1452
1540
  * 글자 서식 ID를 직접 복원한다 (본문 문단).
1453
1541
  */
@@ -1682,6 +1770,12 @@ export class HwpDocument {
1682
1770
  * 반환: JSON `{"hidden":true/false}` — 토글 후 상태
1683
1771
  */
1684
1772
  toggleHideHeaderFooter(page_index: number, is_header: boolean): string;
1773
+ /**
1774
+ * 선택된 전체 표를 제자리에서 전치한다.
1775
+ *
1776
+ * 반환값: JSON `{"ok":true,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
1777
+ */
1778
+ transposeTableCellsInPlace(section_idx: number, parent_para_idx: number, control_idx: number): string;
1685
1779
  /**
1686
1780
  * GroupShape를 풀어 자식 개체들을 개별로 복원한다.
1687
1781
  */
@@ -1784,6 +1878,7 @@ export interface InitOutput {
1784
1878
  readonly hwpdocument_applyParaFormatInFootnote: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
1785
1879
  readonly hwpdocument_applyParaFormatInHf: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
1786
1880
  readonly hwpdocument_applyStyle: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1881
+ readonly hwpdocument_assignPictureImage: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number) => [number, number, number, number];
1787
1882
  readonly hwpdocument_beginBatch: (a: number) => [number, number, number, number];
1788
1883
  readonly hwpdocument_changeShapeZOrder: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1789
1884
  readonly hwpdocument_clearActiveField: (a: number) => void;
@@ -1794,6 +1889,7 @@ export interface InitOutput {
1794
1889
  readonly hwpdocument_copySelection: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1795
1890
  readonly hwpdocument_copySelectionInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
1796
1891
  readonly hwpdocument_copySelectionInCellEx: (a: number, b: number, c: number) => [number, number, number, number];
1892
+ readonly hwpdocument_copyTableCellsTransposed: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
1797
1893
  readonly hwpdocument_createBlankDocument: (a: number) => [number, number, number, number];
1798
1894
  readonly hwpdocument_createEmpty: () => number;
1799
1895
  readonly hwpdocument_createHeaderFooter: (a: number, b: number, c: number, d: number) => [number, number, number, number];
@@ -1830,6 +1926,7 @@ export interface InitOutput {
1830
1926
  readonly hwpdocument_evaluateTableFormula: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
1831
1927
  readonly hwpdocument_evaluateTableFormulaEx: (a: number, b: number, c: number) => [number, number, number, number];
1832
1928
  readonly hwpdocument_exportControlHtml: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1929
+ readonly hwpdocument_exportHml: (a: number) => [number, number, number, number];
1833
1930
  readonly hwpdocument_exportHwp: (a: number) => [number, number, number, number];
1834
1931
  readonly hwpdocument_exportHwpVerify: (a: number) => [number, number, number, number];
1835
1932
  readonly hwpdocument_exportHwpx: (a: number) => [number, number, number, number];
@@ -1841,13 +1938,16 @@ export interface InitOutput {
1841
1938
  readonly hwpdocument_findNextEditableControl: (a: number, b: number, c: number, d: number, e: number) => [number, number];
1842
1939
  readonly hwpdocument_findOrCreateFontId: (a: number, b: number, c: number) => number;
1843
1940
  readonly hwpdocument_findOrCreateFontIdForLang: (a: number, b: number, c: number, d: number) => number;
1941
+ readonly hwpdocument_flushDeferredPagination: (a: number) => [number, number, number, number];
1844
1942
  readonly hwpdocument_getBookmarks: (a: number) => [number, number, number, number];
1845
1943
  readonly hwpdocument_getBulletList: (a: number) => [number, number];
1846
1944
  readonly hwpdocument_getCanvasKitReplayPlan: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1945
+ readonly hwpdocument_getCanvasKitReplayPlanWithProfile: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1847
1946
  readonly hwpdocument_getCaretPosition: (a: number) => [number, number, number, number];
1848
1947
  readonly hwpdocument_getCellCharPropertiesAt: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
1849
1948
  readonly hwpdocument_getCellInfo: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
1850
1949
  readonly hwpdocument_getCellInfoByPath: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
1950
+ readonly hwpdocument_getCellOwnProperties: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
1851
1951
  readonly hwpdocument_getCellParaPropertiesAt: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1852
1952
  readonly hwpdocument_getCellParagraphCount: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
1853
1953
  readonly hwpdocument_getCellParagraphCountByPath: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
@@ -1867,6 +1967,7 @@ export interface InitOutput {
1867
1967
  readonly hwpdocument_getControlTextPositions: (a: number, b: number, c: number) => [number, number];
1868
1968
  readonly hwpdocument_getCursorRect: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1869
1969
  readonly hwpdocument_getCursorRectByPath: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1970
+ readonly hwpdocument_getCursorRectByPathNear: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
1870
1971
  readonly hwpdocument_getCursorRectInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
1871
1972
  readonly hwpdocument_getCursorRectInFootnote: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
1872
1973
  readonly hwpdocument_getCursorRectInHeaderFooter: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
@@ -1896,6 +1997,8 @@ export interface InitOutput {
1896
1997
  readonly hwpdocument_getHeaderFooterList: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1897
1998
  readonly hwpdocument_getHeaderFooterParaInfo: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
1898
1999
  readonly hwpdocument_getHeaderFooterPictureProperties: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
2000
+ readonly hwpdocument_getHmlOpenMetadata: (a: number) => [number, number];
2001
+ readonly hwpdocument_getHmlSaveState: (a: number) => [number, number];
1899
2002
  readonly hwpdocument_getLineInfo: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1900
2003
  readonly hwpdocument_getLineInfoInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
1901
2004
  readonly hwpdocument_getLogicalLength: (a: number, b: number, c: number) => [number, number, number];
@@ -1909,6 +2012,7 @@ export interface InitOutput {
1909
2012
  readonly hwpdocument_getPageHide: (a: number, b: number, c: number) => [number, number, number, number];
1910
2013
  readonly hwpdocument_getPageInfo: (a: number, b: number) => [number, number, number, number];
1911
2014
  readonly hwpdocument_getPageLayerTree: (a: number, b: number) => [number, number, number, number];
2015
+ readonly hwpdocument_getPageLayerTreeWithProfile: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1912
2016
  readonly hwpdocument_getPageOfPosition: (a: number, b: number, c: number) => [number, number, number, number];
1913
2017
  readonly hwpdocument_getPageOverlayImages: (a: number, b: number) => [number, number, number, number];
1914
2018
  readonly hwpdocument_getPageRenderTree: (a: number, b: number) => [number, number, number, number];
@@ -1932,6 +2036,7 @@ export interface InitOutput {
1932
2036
  readonly hwpdocument_getShowParagraphMarks: (a: number) => number;
1933
2037
  readonly hwpdocument_getShowTransparentBorders: (a: number) => number;
1934
2038
  readonly hwpdocument_getSourceFormat: (a: number) => [number, number];
2039
+ readonly hwpdocument_getStructure: (a: number, b: number, c: number) => [number, number, number, number];
1935
2040
  readonly hwpdocument_getStyleAt: (a: number, b: number, c: number) => [number, number];
1936
2041
  readonly hwpdocument_getStyleDetail: (a: number, b: number) => [number, number];
1937
2042
  readonly hwpdocument_getStyleList: (a: number) => [number, number];
@@ -1949,6 +2054,7 @@ export interface InitOutput {
1949
2054
  readonly hwpdocument_getValidationWarnings: (a: number) => [number, number];
1950
2055
  readonly hwpdocument_groupShapes: (a: number, b: number, c: number) => [number, number, number, number];
1951
2056
  readonly hwpdocument_hasInternalClipboard: (a: number) => number;
2057
+ readonly hwpdocument_hasTableTransposeClipboard: (a: number) => number;
1952
2058
  readonly hwpdocument_hitTest: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1953
2059
  readonly hwpdocument_hitTestBodyFootnoteMarker: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1954
2060
  readonly hwpdocument_hitTestFootnote: (a: number, b: number, c: number, d: number) => [number, number, number, number];
@@ -1978,6 +2084,7 @@ export interface InitOutput {
1978
2084
  readonly hwpdocument_insertText: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1979
2085
  readonly hwpdocument_insertTextInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
1980
2086
  readonly hwpdocument_insertTextInCellByPath: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
2087
+ readonly hwpdocument_insertTextInCellDeferredPagination: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
1981
2088
  readonly hwpdocument_insertTextInCellEx: (a: number, b: number, c: number) => [number, number, number, number];
1982
2089
  readonly hwpdocument_insertTextInFootnote: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
1983
2090
  readonly hwpdocument_insertTextInHeaderFooter: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
@@ -2009,6 +2116,8 @@ export interface InitOutput {
2009
2116
  readonly hwpdocument_pasteInternal: (a: number, b: number, c: number, d: number) => [number, number, number, number];
2010
2117
  readonly hwpdocument_pasteInternalInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
2011
2118
  readonly hwpdocument_pasteInternalInCellByPath: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
2119
+ readonly hwpdocument_pasteTableCellsTransposed: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
2120
+ readonly hwpdocument_pasteTableCellsTransposedAsTable: (a: number, b: number, c: number, d: number) => [number, number, number, number];
2012
2121
  readonly hwpdocument_reflowLinesegs: (a: number) => number;
2013
2122
  readonly hwpdocument_removeFieldAt: (a: number, b: number, c: number, d: number) => [number, number];
2014
2123
  readonly hwpdocument_removeFieldAtInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
@@ -2021,6 +2130,7 @@ export interface InitOutput {
2021
2130
  readonly hwpdocument_renderPageSvg: (a: number, b: number) => [number, number, number, number];
2022
2131
  readonly hwpdocument_renderPageToCanvas: (a: number, b: number, c: any, d: number) => [number, number];
2023
2132
  readonly hwpdocument_renderPageToCanvasFiltered: (a: number, b: number, c: any, d: number, e: number, f: number) => [number, number];
2133
+ readonly hwpdocument_renderPageToCanvasFilteredWithProfile: (a: number, b: number, c: any, d: number, e: number, f: number, g: number, h: number) => [number, number];
2024
2134
  readonly hwpdocument_renderPageToCanvasLegacy: (a: number, b: number, c: any, d: number) => [number, number];
2025
2135
  readonly hwpdocument_replaceAll: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
2026
2136
  readonly hwpdocument_replaceOne: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
@@ -2038,6 +2148,7 @@ export interface InitOutput {
2038
2148
  readonly hwpdocument_setCellPicturePropertiesByPath: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
2039
2149
  readonly hwpdocument_setCellProperties: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
2040
2150
  readonly hwpdocument_setCellShapePropertiesByPath: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
2151
+ readonly hwpdocument_setCellZoneProperties: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number, number, number];
2041
2152
  readonly hwpdocument_setCharShapeId: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
2042
2153
  readonly hwpdocument_setCharShapeIdInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
2043
2154
  readonly hwpdocument_setCharShapeIdInCellEx: (a: number, b: number, c: number) => [number, number, number, number];
@@ -2083,6 +2194,7 @@ export interface InitOutput {
2083
2194
  readonly hwpdocument_splitTableCellsInRangeEx: (a: number, b: number, c: number) => [number, number, number, number];
2084
2195
  readonly hwpdocument_textToLogicalOffset: (a: number, b: number, c: number, d: number) => [number, number, number];
2085
2196
  readonly hwpdocument_toggleHideHeaderFooter: (a: number, b: number, c: number) => [number, number, number, number];
2197
+ readonly hwpdocument_transposeTableCellsInPlace: (a: number, b: number, c: number, d: number) => [number, number, number, number];
2086
2198
  readonly hwpdocument_ungroupShape: (a: number, b: number, c: number, d: number) => [number, number, number, number];
2087
2199
  readonly hwpdocument_updateClickHereProps: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
2088
2200
  readonly hwpdocument_updateConnectorsInSection: (a: number, b: number) => void;
package/rhwp.js CHANGED
@@ -360,6 +360,50 @@ export class HwpDocument {
360
360
  wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
361
361
  }
362
362
  }
363
+ /**
364
+ * [Task #2230] 기존 Picture 컨트롤에 이미지를 지정한다 — 그림 미지정
365
+ * placeholder(missing image 컨트롤)의 편집 뷰 그림 삽입.
366
+ *
367
+ * `cell_path_json` 이 빈 문자열 또는 `"[]"` 면 본문 문단의 컨트롤,
368
+ * 그 외에는 셀/글상자 안 문단의 컨트롤을 대상으로 한다. 개체 틀 크기는
369
+ * 유지되고(한컴 placeholder 는 틀에 그림을 맞춤) BinData 등록 규칙은
370
+ * insertPicture 와 공유한다.
371
+ *
372
+ * 반환: `{"ok":true,"binDataId":<N>}`
373
+ * @param {number} section_idx
374
+ * @param {number} parent_para_idx
375
+ * @param {string} cell_path_json
376
+ * @param {number} control_idx
377
+ * @param {Uint8Array} image_data
378
+ * @param {number} natural_width_px
379
+ * @param {number} natural_height_px
380
+ * @param {string} extension
381
+ * @returns {string}
382
+ */
383
+ assignPictureImage(section_idx, parent_para_idx, cell_path_json, control_idx, image_data, natural_width_px, natural_height_px, extension) {
384
+ let deferred5_0;
385
+ let deferred5_1;
386
+ try {
387
+ const ptr0 = passStringToWasm0(cell_path_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
388
+ const len0 = WASM_VECTOR_LEN;
389
+ const ptr1 = passArray8ToWasm0(image_data, wasm.__wbindgen_malloc);
390
+ const len1 = WASM_VECTOR_LEN;
391
+ const ptr2 = passStringToWasm0(extension, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
392
+ const len2 = WASM_VECTOR_LEN;
393
+ const ret = wasm.hwpdocument_assignPictureImage(this.__wbg_ptr, section_idx, parent_para_idx, ptr0, len0, control_idx, ptr1, len1, natural_width_px, natural_height_px, ptr2, len2);
394
+ var ptr4 = ret[0];
395
+ var len4 = ret[1];
396
+ if (ret[3]) {
397
+ ptr4 = 0; len4 = 0;
398
+ throw takeFromExternrefTable0(ret[2]);
399
+ }
400
+ deferred5_0 = ptr4;
401
+ deferred5_1 = len4;
402
+ return getStringFromWasm0(ptr4, len4);
403
+ } finally {
404
+ wasm.__wbindgen_free(deferred5_0, deferred5_1, 1);
405
+ }
406
+ }
363
407
  /**
364
408
  * Batch 모드를 시작한다. 이후 Command 호출 시 paginate()를 건너뛴다.
365
409
  * @returns {string}
@@ -573,6 +617,37 @@ export class HwpDocument {
573
617
  wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
574
618
  }
575
619
  }
620
+ /**
621
+ * 선택된 표 셀 범위를 행/열 바꿈 복사용 내부 버퍼에 저장한다.
622
+ *
623
+ * 반환값: JSON `{"ok":true,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
624
+ * @param {number} section_idx
625
+ * @param {number} parent_para_idx
626
+ * @param {number} control_idx
627
+ * @param {number} start_row
628
+ * @param {number} start_col
629
+ * @param {number} end_row
630
+ * @param {number} end_col
631
+ * @returns {string}
632
+ */
633
+ copyTableCellsTransposed(section_idx, parent_para_idx, control_idx, start_row, start_col, end_row, end_col) {
634
+ let deferred2_0;
635
+ let deferred2_1;
636
+ try {
637
+ const ret = wasm.hwpdocument_copyTableCellsTransposed(this.__wbg_ptr, section_idx, parent_para_idx, control_idx, start_row, start_col, end_row, end_col);
638
+ var ptr1 = ret[0];
639
+ var len1 = ret[1];
640
+ if (ret[3]) {
641
+ ptr1 = 0; len1 = 0;
642
+ throw takeFromExternrefTable0(ret[2]);
643
+ }
644
+ deferred2_0 = ptr1;
645
+ deferred2_1 = len1;
646
+ return getStringFromWasm0(ptr1, len1);
647
+ } finally {
648
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
649
+ }
650
+ }
576
651
  /**
577
652
  * 내장 템플릿에서 빈 문서를 생성한다.
578
653
  *
@@ -1458,6 +1533,19 @@ export class HwpDocument {
1458
1533
  wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
1459
1534
  }
1460
1535
  }
1536
+ /**
1537
+ * HML 원본의 공통 IR을 HWPML 2.91 XML로 직렬화하여 반환한다.
1538
+ * @returns {Uint8Array}
1539
+ */
1540
+ exportHml() {
1541
+ const ret = wasm.hwpdocument_exportHml(this.__wbg_ptr);
1542
+ if (ret[3]) {
1543
+ throw takeFromExternrefTable0(ret[2]);
1544
+ }
1545
+ var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
1546
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
1547
+ return v1;
1548
+ }
1461
1549
  /**
1462
1550
  * 문서를 HWP 바이너리로 내보낸다.
1463
1551
  *
@@ -1694,6 +1782,28 @@ export class HwpDocument {
1694
1782
  const ret = wasm.hwpdocument_findOrCreateFontIdForLang(this.__wbg_ptr, lang, ptr0, len0);
1695
1783
  return ret;
1696
1784
  }
1785
+ /**
1786
+ * 지연된 페이지네이션을 즉시 flush하고 최신 페이지 수를 반환한다.
1787
+ * @returns {string}
1788
+ */
1789
+ flushDeferredPagination() {
1790
+ let deferred2_0;
1791
+ let deferred2_1;
1792
+ try {
1793
+ const ret = wasm.hwpdocument_flushDeferredPagination(this.__wbg_ptr);
1794
+ var ptr1 = ret[0];
1795
+ var len1 = ret[1];
1796
+ if (ret[3]) {
1797
+ ptr1 = 0; len1 = 0;
1798
+ throw takeFromExternrefTable0(ret[2]);
1799
+ }
1800
+ deferred2_0 = ptr1;
1801
+ deferred2_1 = len1;
1802
+ return getStringFromWasm0(ptr1, len1);
1803
+ } finally {
1804
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
1805
+ }
1806
+ }
1697
1807
  /**
1698
1808
  * 문서 내 모든 책갈피 목록 반환
1699
1809
  * @returns {string}
@@ -1765,6 +1875,34 @@ export class HwpDocument {
1765
1875
  wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
1766
1876
  }
1767
1877
  }
1878
+ /**
1879
+ * @param {number} page_num
1880
+ * @param {string} mode
1881
+ * @param {string} profile
1882
+ * @returns {string}
1883
+ */
1884
+ getCanvasKitReplayPlanWithProfile(page_num, mode, profile) {
1885
+ let deferred4_0;
1886
+ let deferred4_1;
1887
+ try {
1888
+ const ptr0 = passStringToWasm0(mode, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1889
+ const len0 = WASM_VECTOR_LEN;
1890
+ const ptr1 = passStringToWasm0(profile, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1891
+ const len1 = WASM_VECTOR_LEN;
1892
+ const ret = wasm.hwpdocument_getCanvasKitReplayPlanWithProfile(this.__wbg_ptr, page_num, ptr0, len0, ptr1, len1);
1893
+ var ptr3 = ret[0];
1894
+ var len3 = ret[1];
1895
+ if (ret[3]) {
1896
+ ptr3 = 0; len3 = 0;
1897
+ throw takeFromExternrefTable0(ret[2]);
1898
+ }
1899
+ deferred4_0 = ptr3;
1900
+ deferred4_1 = len3;
1901
+ return getStringFromWasm0(ptr3, len3);
1902
+ } finally {
1903
+ wasm.__wbindgen_free(deferred4_0, deferred4_1, 1);
1904
+ }
1905
+ }
1768
1906
  /**
1769
1907
  * 문서에 저장된 캐럿 위치를 반환한다 (문서 로딩 시 캐럿 자동 배치용).
1770
1908
  *
@@ -1874,6 +2012,34 @@ export class HwpDocument {
1874
2012
  wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
1875
2013
  }
1876
2014
  }
2015
+ /**
2016
+ * 셀 고유 속성을 조회한다.
2017
+ *
2018
+ * cellzone overlay를 합성하지 않고 셀 자체의 borderFill만 반환한다.
2019
+ * @param {number} section_idx
2020
+ * @param {number} parent_para_idx
2021
+ * @param {number} control_idx
2022
+ * @param {number} cell_idx
2023
+ * @returns {string}
2024
+ */
2025
+ getCellOwnProperties(section_idx, parent_para_idx, control_idx, cell_idx) {
2026
+ let deferred2_0;
2027
+ let deferred2_1;
2028
+ try {
2029
+ const ret = wasm.hwpdocument_getCellOwnProperties(this.__wbg_ptr, section_idx, parent_para_idx, control_idx, cell_idx);
2030
+ var ptr1 = ret[0];
2031
+ var len1 = ret[1];
2032
+ if (ret[3]) {
2033
+ ptr1 = 0; len1 = 0;
2034
+ throw takeFromExternrefTable0(ret[2]);
2035
+ }
2036
+ deferred2_0 = ptr1;
2037
+ deferred2_1 = len1;
2038
+ return getStringFromWasm0(ptr1, len1);
2039
+ } finally {
2040
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
2041
+ }
2042
+ }
1877
2043
  /**
1878
2044
  * 셀 내부 문단의 문단 속성을 조회한다.
1879
2045
  * @param {number} sec_idx
@@ -2292,6 +2458,37 @@ export class HwpDocument {
2292
2458
  wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
2293
2459
  }
2294
2460
  }
2461
+ /**
2462
+ * [#2021] 경로 기반 커서 좌표 조회 + 페이지 힌트 — 직전 캐럿 페이지를 전달하면
2463
+ * 해당 페이지(±1)를 먼저 탐색해, 거대 표 문서에서 캐시 무효화 직후의 선형 페이지
2464
+ * 재빌드 비용을 피한다. 힌트가 틀려도 종전 전체 탐색으로 fallback (좌표 불변).
2465
+ * @param {number} section_idx
2466
+ * @param {number} parent_para_idx
2467
+ * @param {string} path_json
2468
+ * @param {number} char_offset
2469
+ * @param {number} hint_page
2470
+ * @returns {string}
2471
+ */
2472
+ getCursorRectByPathNear(section_idx, parent_para_idx, path_json, char_offset, hint_page) {
2473
+ let deferred3_0;
2474
+ let deferred3_1;
2475
+ try {
2476
+ const ptr0 = passStringToWasm0(path_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
2477
+ const len0 = WASM_VECTOR_LEN;
2478
+ const ret = wasm.hwpdocument_getCursorRectByPathNear(this.__wbg_ptr, section_idx, parent_para_idx, ptr0, len0, char_offset, hint_page);
2479
+ var ptr2 = ret[0];
2480
+ var len2 = ret[1];
2481
+ if (ret[3]) {
2482
+ ptr2 = 0; len2 = 0;
2483
+ throw takeFromExternrefTable0(ret[2]);
2484
+ }
2485
+ deferred3_0 = ptr2;
2486
+ deferred3_1 = len2;
2487
+ return getStringFromWasm0(ptr2, len2);
2488
+ } finally {
2489
+ wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
2490
+ }
2491
+ }
2295
2492
  /**
2296
2493
  * 표 셀 내부 커서 위치의 픽셀 좌표를 반환한다.
2297
2494
  *
@@ -2991,6 +3188,39 @@ export class HwpDocument {
2991
3188
  wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
2992
3189
  }
2993
3190
  }
3191
+ /**
3192
+ * HML 열기 메타데이터와 손실 진단을 JSON으로 반환한다.
3193
+ * 다른 입력 포맷에서는 `null`을 반환한다.
3194
+ * @returns {string}
3195
+ */
3196
+ getHmlOpenMetadata() {
3197
+ let deferred1_0;
3198
+ let deferred1_1;
3199
+ try {
3200
+ const ret = wasm.hwpdocument_getHmlOpenMetadata(this.__wbg_ptr);
3201
+ deferred1_0 = ret[0];
3202
+ deferred1_1 = ret[1];
3203
+ return getStringFromWasm0(ret[0], ret[1]);
3204
+ } finally {
3205
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
3206
+ }
3207
+ }
3208
+ /**
3209
+ * HML 저장 가능 여부와 모든 차단 진단을 canonical JSON DTO로 반환한다.
3210
+ * @returns {string}
3211
+ */
3212
+ getHmlSaveState() {
3213
+ let deferred1_0;
3214
+ let deferred1_1;
3215
+ try {
3216
+ const ret = wasm.hwpdocument_getHmlSaveState(this.__wbg_ptr);
3217
+ deferred1_0 = ret[0];
3218
+ deferred1_1 = ret[1];
3219
+ return getStringFromWasm0(ret[0], ret[1]);
3220
+ } finally {
3221
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
3222
+ }
3223
+ }
2994
3224
  /**
2995
3225
  * 문단 내 줄 정보를 반환한다 (커서 수직 이동/Home/End용).
2996
3226
  *
@@ -3298,6 +3528,31 @@ export class HwpDocument {
3298
3528
  wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
3299
3529
  }
3300
3530
  }
3531
+ /**
3532
+ * @param {number} page_num
3533
+ * @param {string} profile
3534
+ * @returns {string}
3535
+ */
3536
+ getPageLayerTreeWithProfile(page_num, profile) {
3537
+ let deferred3_0;
3538
+ let deferred3_1;
3539
+ try {
3540
+ const ptr0 = passStringToWasm0(profile, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
3541
+ const len0 = WASM_VECTOR_LEN;
3542
+ const ret = wasm.hwpdocument_getPageLayerTreeWithProfile(this.__wbg_ptr, page_num, ptr0, len0);
3543
+ var ptr2 = ret[0];
3544
+ var len2 = ret[1];
3545
+ if (ret[3]) {
3546
+ ptr2 = 0; len2 = 0;
3547
+ throw takeFromExternrefTable0(ret[2]);
3548
+ }
3549
+ deferred3_0 = ptr2;
3550
+ deferred3_1 = len2;
3551
+ return getStringFromWasm0(ptr2, len2);
3552
+ } finally {
3553
+ wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
3554
+ }
3555
+ }
3301
3556
  /**
3302
3557
  * 위치에 해당하는 글로벌 쪽 번호 반환
3303
3558
  * @param {number} section_idx
@@ -3774,7 +4029,7 @@ export class HwpDocument {
3774
4029
  return ret !== 0;
3775
4030
  }
3776
4031
  /**
3777
- * 원본 파일 형식을 반환한다 ("hwp" 또는 "hwpx").
4032
+ * 원본 파일 형식을 반환한다 ("hwp", "hwpx", 또는 "hml").
3778
4033
  * @returns {string}
3779
4034
  */
3780
4035
  getSourceFormat() {
@@ -3789,6 +4044,33 @@ export class HwpDocument {
3789
4044
  wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
3790
4045
  }
3791
4046
  }
4047
+ /**
4048
+ * 문서 구조(개요/조문) 트리를 JSON으로 반환 (사이드바 목차 네비게이션용)
4049
+ *
4050
+ * `mode`: `"auto"` | `"outline"` | `"clause"` (인식 불가 시 `auto`).
4051
+ * @param {string} mode
4052
+ * @returns {string}
4053
+ */
4054
+ getStructure(mode) {
4055
+ let deferred3_0;
4056
+ let deferred3_1;
4057
+ try {
4058
+ const ptr0 = passStringToWasm0(mode, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
4059
+ const len0 = WASM_VECTOR_LEN;
4060
+ const ret = wasm.hwpdocument_getStructure(this.__wbg_ptr, ptr0, len0);
4061
+ var ptr2 = ret[0];
4062
+ var len2 = ret[1];
4063
+ if (ret[3]) {
4064
+ ptr2 = 0; len2 = 0;
4065
+ throw takeFromExternrefTable0(ret[2]);
4066
+ }
4067
+ deferred3_0 = ptr2;
4068
+ deferred3_1 = len2;
4069
+ return getStringFromWasm0(ptr2, len2);
4070
+ } finally {
4071
+ wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
4072
+ }
4073
+ }
3792
4074
  /**
3793
4075
  * 특정 문단의 스타일을 조회한다.
3794
4076
  *
@@ -4212,6 +4494,14 @@ export class HwpDocument {
4212
4494
  const ret = wasm.hwpdocument_hasInternalClipboard(this.__wbg_ptr);
4213
4495
  return ret !== 0;
4214
4496
  }
4497
+ /**
4498
+ * 행/열 바꿈 복사 버퍼 보유 여부를 반환한다.
4499
+ * @returns {boolean}
4500
+ */
4501
+ hasTableTransposeClipboard() {
4502
+ const ret = wasm.hwpdocument_hasTableTransposeClipboard(this.__wbg_ptr);
4503
+ return ret !== 0;
4504
+ }
4215
4505
  /**
4216
4506
  * 페이지 좌표에서 문서 위치를 찾는다.
4217
4507
  *
@@ -5069,6 +5359,41 @@ export class HwpDocument {
5069
5359
  wasm.__wbindgen_free(deferred4_0, deferred4_1, 1);
5070
5360
  }
5071
5361
  }
5362
+ /**
5363
+ * 표 셀 내부 문단에 텍스트를 삽입하되 전체 페이지네이션은 호출자가 지연한다.
5364
+ *
5365
+ * Studio의 page-local 단일 입력처럼 현재 페이지를 먼저 갱신하고 idle 시점에
5366
+ * 전체 페이지네이션을 한 번만 수행하는 경로에서 사용한다.
5367
+ * 결과 JSON은 `charOffset`과 상대 cell-flow 변화 신호 `cellFlowChanged`를 포함한다.
5368
+ * @param {number} section_idx
5369
+ * @param {number} parent_para_idx
5370
+ * @param {number} control_idx
5371
+ * @param {number} cell_idx
5372
+ * @param {number} cell_para_idx
5373
+ * @param {number} char_offset
5374
+ * @param {string} text
5375
+ * @returns {string}
5376
+ */
5377
+ insertTextInCellDeferredPagination(section_idx, parent_para_idx, control_idx, cell_idx, cell_para_idx, char_offset, text) {
5378
+ let deferred3_0;
5379
+ let deferred3_1;
5380
+ try {
5381
+ const ptr0 = passStringToWasm0(text, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
5382
+ const len0 = WASM_VECTOR_LEN;
5383
+ const ret = wasm.hwpdocument_insertTextInCellDeferredPagination(this.__wbg_ptr, section_idx, parent_para_idx, control_idx, cell_idx, cell_para_idx, char_offset, ptr0, len0);
5384
+ var ptr2 = ret[0];
5385
+ var len2 = ret[1];
5386
+ if (ret[3]) {
5387
+ ptr2 = 0; len2 = 0;
5388
+ throw takeFromExternrefTable0(ret[2]);
5389
+ }
5390
+ deferred3_0 = ptr2;
5391
+ deferred3_1 = len2;
5392
+ return getStringFromWasm0(ptr2, len2);
5393
+ } finally {
5394
+ wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
5395
+ }
5396
+ }
5072
5397
  /**
5073
5398
  * `insertTextInCell` 의 options object 변형 (#1413).
5074
5399
  *
@@ -5916,6 +6241,62 @@ export class HwpDocument {
5916
6241
  wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
5917
6242
  }
5918
6243
  }
6244
+ /**
6245
+ * 행/열 바꿈 복사 버퍼를 대상 시작 셀부터 붙여넣는다.
6246
+ *
6247
+ * 반환값: JSON `{"ok":true,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
6248
+ * @param {number} section_idx
6249
+ * @param {number} parent_para_idx
6250
+ * @param {number} control_idx
6251
+ * @param {number} start_row
6252
+ * @param {number} start_col
6253
+ * @returns {string}
6254
+ */
6255
+ pasteTableCellsTransposed(section_idx, parent_para_idx, control_idx, start_row, start_col) {
6256
+ let deferred2_0;
6257
+ let deferred2_1;
6258
+ try {
6259
+ const ret = wasm.hwpdocument_pasteTableCellsTransposed(this.__wbg_ptr, section_idx, parent_para_idx, control_idx, start_row, start_col);
6260
+ var ptr1 = ret[0];
6261
+ var len1 = ret[1];
6262
+ if (ret[3]) {
6263
+ ptr1 = 0; len1 = 0;
6264
+ throw takeFromExternrefTable0(ret[2]);
6265
+ }
6266
+ deferred2_0 = ptr1;
6267
+ deferred2_1 = len1;
6268
+ return getStringFromWasm0(ptr1, len1);
6269
+ } finally {
6270
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
6271
+ }
6272
+ }
6273
+ /**
6274
+ * 행/열 바꿈 복사 버퍼를 커서 위치에 새 표로 생성해 붙여넣는다.
6275
+ *
6276
+ * 반환값: JSON `{"ok":true,"paraIdx":N,"controlIdx":N,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
6277
+ * @param {number} section_idx
6278
+ * @param {number} para_idx
6279
+ * @param {number} char_offset
6280
+ * @returns {string}
6281
+ */
6282
+ pasteTableCellsTransposedAsTable(section_idx, para_idx, char_offset) {
6283
+ let deferred2_0;
6284
+ let deferred2_1;
6285
+ try {
6286
+ const ret = wasm.hwpdocument_pasteTableCellsTransposedAsTable(this.__wbg_ptr, section_idx, para_idx, char_offset);
6287
+ var ptr1 = ret[0];
6288
+ var len1 = ret[1];
6289
+ if (ret[3]) {
6290
+ ptr1 = 0; len1 = 0;
6291
+ throw takeFromExternrefTable0(ret[2]);
6292
+ }
6293
+ deferred2_0 = ptr1;
6294
+ deferred2_1 = len1;
6295
+ return getStringFromWasm0(ptr1, len1);
6296
+ } finally {
6297
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
6298
+ }
6299
+ }
5919
6300
  /**
5920
6301
  * 사용자 명시 요청에 의한 lineseg 전체 reflow (#177).
5921
6302
  *
@@ -6141,6 +6522,8 @@ export class HwpDocument {
6141
6522
  * - `"all"` → 모든 PaintOp 렌더 (기본 `renderPageToCanvas` 와 동일)
6142
6523
  * - `"background"` → page background layer
6143
6524
  * - `"flow"` → 본문 layer (BehindText / InFrontOfText plane 제외)
6525
+ * - `"flow-dynamic"` → 본문 layer 중 Image/RawSvg 제외
6526
+ * - `"flow-static"` → page background + 본문 Image/RawSvg layer
6144
6527
  * - `"behind"` → BehindText overlay layer
6145
6528
  * - `"front"` → InFrontOfText overlay layer
6146
6529
  *
@@ -6158,6 +6541,23 @@ export class HwpDocument {
6158
6541
  throw takeFromExternrefTable0(ret[0]);
6159
6542
  }
6160
6543
  }
6544
+ /**
6545
+ * @param {number} page_num
6546
+ * @param {HTMLCanvasElement} canvas
6547
+ * @param {number} scale
6548
+ * @param {string} layer_kind
6549
+ * @param {string} profile
6550
+ */
6551
+ renderPageToCanvasFilteredWithProfile(page_num, canvas, scale, layer_kind, profile) {
6552
+ const ptr0 = passStringToWasm0(layer_kind, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
6553
+ const len0 = WASM_VECTOR_LEN;
6554
+ const ptr1 = passStringToWasm0(profile, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
6555
+ const len1 = WASM_VECTOR_LEN;
6556
+ const ret = wasm.hwpdocument_renderPageToCanvasFilteredWithProfile(this.__wbg_ptr, page_num, canvas, scale, ptr0, len0, ptr1, len1);
6557
+ if (ret[1]) {
6558
+ throw takeFromExternrefTable0(ret[0]);
6559
+ }
6560
+ }
6161
6561
  /**
6162
6562
  * 특정 페이지를 기존 PageRenderTree 경로로 Canvas 2D에 직접 렌더링한다.
6163
6563
  * @param {number} page_num
@@ -6552,6 +6952,40 @@ export class HwpDocument {
6552
6952
  wasm.__wbindgen_free(deferred4_0, deferred4_1, 1);
6553
6953
  }
6554
6954
  }
6955
+ /**
6956
+ * 선택 영역을 하나의 셀처럼 취급하는 cellzone 테두리/배경 속성을 적용한다.
6957
+ *
6958
+ * 반환: JSON `{"ok":true,"startRow":...,"borderFillId":...}`
6959
+ * @param {number} section_idx
6960
+ * @param {number} parent_para_idx
6961
+ * @param {number} control_idx
6962
+ * @param {number} start_row
6963
+ * @param {number} start_col
6964
+ * @param {number} end_row
6965
+ * @param {number} end_col
6966
+ * @param {string} json
6967
+ * @returns {string}
6968
+ */
6969
+ setCellZoneProperties(section_idx, parent_para_idx, control_idx, start_row, start_col, end_row, end_col, json) {
6970
+ let deferred3_0;
6971
+ let deferred3_1;
6972
+ try {
6973
+ const ptr0 = passStringToWasm0(json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
6974
+ const len0 = WASM_VECTOR_LEN;
6975
+ const ret = wasm.hwpdocument_setCellZoneProperties(this.__wbg_ptr, section_idx, parent_para_idx, control_idx, start_row, start_col, end_row, end_col, ptr0, len0);
6976
+ var ptr2 = ret[0];
6977
+ var len2 = ret[1];
6978
+ if (ret[3]) {
6979
+ ptr2 = 0; len2 = 0;
6980
+ throw takeFromExternrefTable0(ret[2]);
6981
+ }
6982
+ deferred3_0 = ptr2;
6983
+ deferred3_1 = len2;
6984
+ return getStringFromWasm0(ptr2, len2);
6985
+ } finally {
6986
+ wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
6987
+ }
6988
+ }
6555
6989
  /**
6556
6990
  * 글자 서식 ID를 직접 복원한다 (본문 문단).
6557
6991
  * @param {number} sec_idx
@@ -7648,6 +8082,33 @@ export class HwpDocument {
7648
8082
  wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
7649
8083
  }
7650
8084
  }
8085
+ /**
8086
+ * 선택된 전체 표를 제자리에서 전치한다.
8087
+ *
8088
+ * 반환값: JSON `{"ok":true,"sourceRows":N,"sourceCols":N,"targetRows":N,"targetCols":N}`
8089
+ * @param {number} section_idx
8090
+ * @param {number} parent_para_idx
8091
+ * @param {number} control_idx
8092
+ * @returns {string}
8093
+ */
8094
+ transposeTableCellsInPlace(section_idx, parent_para_idx, control_idx) {
8095
+ let deferred2_0;
8096
+ let deferred2_1;
8097
+ try {
8098
+ const ret = wasm.hwpdocument_transposeTableCellsInPlace(this.__wbg_ptr, section_idx, parent_para_idx, control_idx);
8099
+ var ptr1 = ret[0];
8100
+ var len1 = ret[1];
8101
+ if (ret[3]) {
8102
+ ptr1 = 0; len1 = 0;
8103
+ throw takeFromExternrefTable0(ret[2]);
8104
+ }
8105
+ deferred2_0 = ptr1;
8106
+ deferred2_1 = len1;
8107
+ return getStringFromWasm0(ptr1, len1);
8108
+ } finally {
8109
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
8110
+ }
8111
+ }
7651
8112
  /**
7652
8113
  * GroupShape를 풀어 자식 개체들을 개별로 복원한다.
7653
8114
  * @param {number} section_idx
@@ -7956,6 +8417,12 @@ function __wbg_get_imports() {
7956
8417
  const ret = arg0.document;
7957
8418
  return isLikeNone(ret) ? 0 : addToExternrefTable0(ret);
7958
8419
  },
8420
+ __wbg_drawImage_09ec9d21672d9050: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) {
8421
+ arg0.drawImage(arg1, arg2, arg3, arg4, arg5);
8422
+ }, arguments); },
8423
+ __wbg_drawImage_73c15f7176721ca4: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
8424
+ arg0.drawImage(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
8425
+ }, arguments); },
7959
8426
  __wbg_drawImage_7a34d4ec316e9b66: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
7960
8427
  arg0.drawImage(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
7961
8428
  }, arguments); },
@@ -8049,6 +8516,10 @@ function __wbg_get_imports() {
8049
8516
  const ret = new Image();
8050
8517
  return ret;
8051
8518
  }, arguments); },
8519
+ __wbg_new_with_u8_clamped_array_and_sh_adb3f647b0414eb2: function() { return handleError(function (arg0, arg1, arg2, arg3) {
8520
+ const ret = new ImageData(getClampedArrayU8FromWasm0(arg0, arg1), arg2 >>> 0, arg3 >>> 0);
8521
+ return ret;
8522
+ }, arguments); },
8052
8523
  __wbg_of_3ed679d45555e384: function(arg0, arg1) {
8053
8524
  const ret = Array.of(arg0, arg1);
8054
8525
  return ret;
@@ -8057,6 +8528,9 @@ function __wbg_get_imports() {
8057
8528
  const ret = arg0.push(arg1);
8058
8529
  return ret;
8059
8530
  },
8531
+ __wbg_putImageData_d36ffa8305aea239: function() { return handleError(function (arg0, arg1, arg2, arg3) {
8532
+ arg0.putImageData(arg1, arg2, arg3);
8533
+ }, arguments); },
8060
8534
  __wbg_quadraticCurveTo_fbe34acd0fc81443: function(arg0, arg1, arg2, arg3, arg4) {
8061
8535
  arg0.quadraticCurveTo(arg1, arg2, arg3, arg4);
8062
8536
  },
@@ -8230,6 +8704,11 @@ function getArrayU8FromWasm0(ptr, len) {
8230
8704
  return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
8231
8705
  }
8232
8706
 
8707
+ function getClampedArrayU8FromWasm0(ptr, len) {
8708
+ ptr = ptr >>> 0;
8709
+ return getUint8ClampedArrayMemory0().subarray(ptr / 1, ptr / 1 + len);
8710
+ }
8711
+
8233
8712
  let cachedDataViewMemory0 = null;
8234
8713
  function getDataViewMemory0() {
8235
8714
  if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
@@ -8258,6 +8737,14 @@ function getUint8ArrayMemory0() {
8258
8737
  return cachedUint8ArrayMemory0;
8259
8738
  }
8260
8739
 
8740
+ let cachedUint8ClampedArrayMemory0 = null;
8741
+ function getUint8ClampedArrayMemory0() {
8742
+ if (cachedUint8ClampedArrayMemory0 === null || cachedUint8ClampedArrayMemory0.byteLength === 0) {
8743
+ cachedUint8ClampedArrayMemory0 = new Uint8ClampedArray(wasm.memory.buffer);
8744
+ }
8745
+ return cachedUint8ClampedArrayMemory0;
8746
+ }
8747
+
8261
8748
  function handleError(f, args) {
8262
8749
  try {
8263
8750
  return f.apply(this, args);
@@ -8358,6 +8845,7 @@ function __wbg_finalize_init(instance, module) {
8358
8845
  cachedDataViewMemory0 = null;
8359
8846
  cachedUint32ArrayMemory0 = null;
8360
8847
  cachedUint8ArrayMemory0 = null;
8848
+ cachedUint8ClampedArrayMemory0 = null;
8361
8849
  wasm.__wbindgen_start();
8362
8850
  return wasm;
8363
8851
  }
package/rhwp_bg.wasm CHANGED
Binary file
package/rhwp_bg.wasm.d.ts CHANGED
@@ -16,6 +16,7 @@ export const hwpdocument_applyParaFormatInCell: (a: number, b: number, c: number
16
16
  export const hwpdocument_applyParaFormatInFootnote: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
17
17
  export const hwpdocument_applyParaFormatInHf: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
18
18
  export const hwpdocument_applyStyle: (a: number, b: number, c: number, d: number) => [number, number, number, number];
19
+ export const hwpdocument_assignPictureImage: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number) => [number, number, number, number];
19
20
  export const hwpdocument_beginBatch: (a: number) => [number, number, number, number];
20
21
  export const hwpdocument_changeShapeZOrder: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
21
22
  export const hwpdocument_clearActiveField: (a: number) => void;
@@ -26,6 +27,7 @@ export const hwpdocument_copyControl: (a: number, b: number, c: number, d: numbe
26
27
  export const hwpdocument_copySelection: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
27
28
  export const hwpdocument_copySelectionInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
28
29
  export const hwpdocument_copySelectionInCellEx: (a: number, b: number, c: number) => [number, number, number, number];
30
+ export const hwpdocument_copyTableCellsTransposed: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
29
31
  export const hwpdocument_createBlankDocument: (a: number) => [number, number, number, number];
30
32
  export const hwpdocument_createEmpty: () => number;
31
33
  export const hwpdocument_createHeaderFooter: (a: number, b: number, c: number, d: number) => [number, number, number, number];
@@ -62,6 +64,7 @@ export const hwpdocument_ensureDefaultNumbering: (a: number) => number;
62
64
  export const hwpdocument_evaluateTableFormula: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
63
65
  export const hwpdocument_evaluateTableFormulaEx: (a: number, b: number, c: number) => [number, number, number, number];
64
66
  export const hwpdocument_exportControlHtml: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
67
+ export const hwpdocument_exportHml: (a: number) => [number, number, number, number];
65
68
  export const hwpdocument_exportHwp: (a: number) => [number, number, number, number];
66
69
  export const hwpdocument_exportHwpVerify: (a: number) => [number, number, number, number];
67
70
  export const hwpdocument_exportHwpx: (a: number) => [number, number, number, number];
@@ -73,13 +76,16 @@ export const hwpdocument_findNearestControlForward: (a: number, b: number, c: nu
73
76
  export const hwpdocument_findNextEditableControl: (a: number, b: number, c: number, d: number, e: number) => [number, number];
74
77
  export const hwpdocument_findOrCreateFontId: (a: number, b: number, c: number) => number;
75
78
  export const hwpdocument_findOrCreateFontIdForLang: (a: number, b: number, c: number, d: number) => number;
79
+ export const hwpdocument_flushDeferredPagination: (a: number) => [number, number, number, number];
76
80
  export const hwpdocument_getBookmarks: (a: number) => [number, number, number, number];
77
81
  export const hwpdocument_getBulletList: (a: number) => [number, number];
78
82
  export const hwpdocument_getCanvasKitReplayPlan: (a: number, b: number, c: number, d: number) => [number, number, number, number];
83
+ export const hwpdocument_getCanvasKitReplayPlanWithProfile: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
79
84
  export const hwpdocument_getCaretPosition: (a: number) => [number, number, number, number];
80
85
  export const hwpdocument_getCellCharPropertiesAt: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
81
86
  export const hwpdocument_getCellInfo: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
82
87
  export const hwpdocument_getCellInfoByPath: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
88
+ export const hwpdocument_getCellOwnProperties: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
83
89
  export const hwpdocument_getCellParaPropertiesAt: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
84
90
  export const hwpdocument_getCellParagraphCount: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
85
91
  export const hwpdocument_getCellParagraphCountByPath: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
@@ -99,6 +105,7 @@ export const hwpdocument_getControlImageMime: (a: number, b: number, c: number,
99
105
  export const hwpdocument_getControlTextPositions: (a: number, b: number, c: number) => [number, number];
100
106
  export const hwpdocument_getCursorRect: (a: number, b: number, c: number, d: number) => [number, number, number, number];
101
107
  export const hwpdocument_getCursorRectByPath: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
108
+ export const hwpdocument_getCursorRectByPathNear: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
102
109
  export const hwpdocument_getCursorRectInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
103
110
  export const hwpdocument_getCursorRectInFootnote: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
104
111
  export const hwpdocument_getCursorRectInHeaderFooter: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
@@ -128,6 +135,8 @@ export const hwpdocument_getHeaderFooter: (a: number, b: number, c: number, d: n
128
135
  export const hwpdocument_getHeaderFooterList: (a: number, b: number, c: number, d: number) => [number, number, number, number];
129
136
  export const hwpdocument_getHeaderFooterParaInfo: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
130
137
  export const hwpdocument_getHeaderFooterPictureProperties: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
138
+ export const hwpdocument_getHmlOpenMetadata: (a: number) => [number, number];
139
+ export const hwpdocument_getHmlSaveState: (a: number) => [number, number];
131
140
  export const hwpdocument_getLineInfo: (a: number, b: number, c: number, d: number) => [number, number, number, number];
132
141
  export const hwpdocument_getLineInfoInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
133
142
  export const hwpdocument_getLogicalLength: (a: number, b: number, c: number) => [number, number, number];
@@ -141,6 +150,7 @@ export const hwpdocument_getPageFootnoteInfo: (a: number, b: number, c: number)
141
150
  export const hwpdocument_getPageHide: (a: number, b: number, c: number) => [number, number, number, number];
142
151
  export const hwpdocument_getPageInfo: (a: number, b: number) => [number, number, number, number];
143
152
  export const hwpdocument_getPageLayerTree: (a: number, b: number) => [number, number, number, number];
153
+ export const hwpdocument_getPageLayerTreeWithProfile: (a: number, b: number, c: number, d: number) => [number, number, number, number];
144
154
  export const hwpdocument_getPageOfPosition: (a: number, b: number, c: number) => [number, number, number, number];
145
155
  export const hwpdocument_getPageOverlayImages: (a: number, b: number) => [number, number, number, number];
146
156
  export const hwpdocument_getPageRenderTree: (a: number, b: number) => [number, number, number, number];
@@ -164,6 +174,7 @@ export const hwpdocument_getShowControlCodes: (a: number) => number;
164
174
  export const hwpdocument_getShowParagraphMarks: (a: number) => number;
165
175
  export const hwpdocument_getShowTransparentBorders: (a: number) => number;
166
176
  export const hwpdocument_getSourceFormat: (a: number) => [number, number];
177
+ export const hwpdocument_getStructure: (a: number, b: number, c: number) => [number, number, number, number];
167
178
  export const hwpdocument_getStyleAt: (a: number, b: number, c: number) => [number, number];
168
179
  export const hwpdocument_getStyleDetail: (a: number, b: number) => [number, number];
169
180
  export const hwpdocument_getStyleList: (a: number) => [number, number];
@@ -181,6 +192,7 @@ export const hwpdocument_getTextRange: (a: number, b: number, c: number, d: numb
181
192
  export const hwpdocument_getValidationWarnings: (a: number) => [number, number];
182
193
  export const hwpdocument_groupShapes: (a: number, b: number, c: number) => [number, number, number, number];
183
194
  export const hwpdocument_hasInternalClipboard: (a: number) => number;
195
+ export const hwpdocument_hasTableTransposeClipboard: (a: number) => number;
184
196
  export const hwpdocument_hitTest: (a: number, b: number, c: number, d: number) => [number, number, number, number];
185
197
  export const hwpdocument_hitTestBodyFootnoteMarker: (a: number, b: number, c: number, d: number) => [number, number, number, number];
186
198
  export const hwpdocument_hitTestFootnote: (a: number, b: number, c: number, d: number) => [number, number, number, number];
@@ -210,6 +222,7 @@ export const hwpdocument_insertTableRow: (a: number, b: number, c: number, d: nu
210
222
  export const hwpdocument_insertText: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
211
223
  export const hwpdocument_insertTextInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
212
224
  export const hwpdocument_insertTextInCellByPath: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
225
+ export const hwpdocument_insertTextInCellDeferredPagination: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
213
226
  export const hwpdocument_insertTextInCellEx: (a: number, b: number, c: number) => [number, number, number, number];
214
227
  export const hwpdocument_insertTextInFootnote: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
215
228
  export const hwpdocument_insertTextInHeaderFooter: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
@@ -241,6 +254,8 @@ export const hwpdocument_pasteHtmlInCellEx: (a: number, b: number, c: number) =>
241
254
  export const hwpdocument_pasteInternal: (a: number, b: number, c: number, d: number) => [number, number, number, number];
242
255
  export const hwpdocument_pasteInternalInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
243
256
  export const hwpdocument_pasteInternalInCellByPath: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
257
+ export const hwpdocument_pasteTableCellsTransposed: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
258
+ export const hwpdocument_pasteTableCellsTransposedAsTable: (a: number, b: number, c: number, d: number) => [number, number, number, number];
244
259
  export const hwpdocument_reflowLinesegs: (a: number) => number;
245
260
  export const hwpdocument_removeFieldAt: (a: number, b: number, c: number, d: number) => [number, number];
246
261
  export const hwpdocument_removeFieldAtInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
@@ -253,6 +268,7 @@ export const hwpdocument_renderPageHtml: (a: number, b: number) => [number, numb
253
268
  export const hwpdocument_renderPageSvg: (a: number, b: number) => [number, number, number, number];
254
269
  export const hwpdocument_renderPageToCanvas: (a: number, b: number, c: any, d: number) => [number, number];
255
270
  export const hwpdocument_renderPageToCanvasFiltered: (a: number, b: number, c: any, d: number, e: number, f: number) => [number, number];
271
+ export const hwpdocument_renderPageToCanvasFilteredWithProfile: (a: number, b: number, c: any, d: number, e: number, f: number, g: number, h: number) => [number, number];
256
272
  export const hwpdocument_renderPageToCanvasLegacy: (a: number, b: number, c: any, d: number) => [number, number];
257
273
  export const hwpdocument_replaceAll: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
258
274
  export const hwpdocument_replaceOne: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
@@ -270,6 +286,7 @@ export const hwpdocument_setCellParaShapeId: (a: number, b: number, c: number, d
270
286
  export const hwpdocument_setCellPicturePropertiesByPath: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
271
287
  export const hwpdocument_setCellProperties: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number, number];
272
288
  export const hwpdocument_setCellShapePropertiesByPath: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
289
+ export const hwpdocument_setCellZoneProperties: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number, number, number];
273
290
  export const hwpdocument_setCharShapeId: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
274
291
  export const hwpdocument_setCharShapeIdInCell: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number, number, number];
275
292
  export const hwpdocument_setCharShapeIdInCellEx: (a: number, b: number, c: number) => [number, number, number, number];
@@ -315,6 +332,7 @@ export const hwpdocument_splitTableCellsInRange: (a: number, b: number, c: numbe
315
332
  export const hwpdocument_splitTableCellsInRangeEx: (a: number, b: number, c: number) => [number, number, number, number];
316
333
  export const hwpdocument_textToLogicalOffset: (a: number, b: number, c: number, d: number) => [number, number, number];
317
334
  export const hwpdocument_toggleHideHeaderFooter: (a: number, b: number, c: number) => [number, number, number, number];
335
+ export const hwpdocument_transposeTableCellsInPlace: (a: number, b: number, c: number, d: number) => [number, number, number, number];
318
336
  export const hwpdocument_ungroupShape: (a: number, b: number, c: number, d: number) => [number, number, number, number];
319
337
  export const hwpdocument_updateClickHereProps: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
320
338
  export const hwpdocument_updateConnectorsInSection: (a: number, b: number) => void;