# 15.1.0 버전 릴리스 노트

## Content

# 이전 릴리스에서의 개선 사항

이번 버전에는 다음과 같은 기능 및 개선 사항이 포함되었습니다.

* SpreadJS 테이블 시트가 이제 [다중 헤더용 열 캡션](/spreadjs/docs/features/tablesheet/tablesheet-views#column-caption-multiple-headers)을 지원하여, 기존 열들과 함께 관련 열에 대한 공통 헤더를 표시할 수 있습니다.
* 테이블 시트 뷰에 [헤더 영역 추가](/spreadjs/docs/features/tablesheet/tablesheet-views#strong%EC%9E%90%EC%9C%A0-%ED%97%A4%EB%8D%94-%EC%98%81%EC%97%ADstrong)가 가능해져 테이블시트 정보를 설명하고 표시할 수 있습니다.
* SpreadJS 디자이너에 다중 열 헤더 캡션과 자유 헤더 영역을 추가할 수 있는 [테이블 시트 디자인 모드](/spreadjs/docs/spreadjs-designer-component/spdesignerwork/tablesheet-designer/DesignMode)가 도입되었습니다.
* 여러 관련 테이블의 필드를 한 행에 보여주는 [테이블 시트 교차 열](/spreadjs/docs/features/tablesheet/tablesheet-relationships/ts-crosscolumn)을 생성할 수 있습니다.
* 테이블 시트 뷰의 [스택 헤더 맞춤 모드](/spreadjs/docs/features/tablesheet/tablesheet-views#strong%EC%97%B4-%ED%97%A4%EB%8D%94-%EB%A7%9E%EC%B6%A4-%EB%AA%A8%EB%93%9Cstrong)가 개선되어, 인접한 열들이 있을 때 세로 모드와 함께 크로스핏 방식으로 표시됩니다. 또한 스택 행 높이를 설정하는 새로운 API 옵션이 추가되었습니다.
* 피벗 테이블이 이제 [데이터가 없는 항목 표시](/spreadjs/docs/features/pivot-table/pivot-table-settings#%EB%8D%B0%EC%9D%B4%ED%84%B0%EA%B0%80-%EC%97%86%EB%8A%94-%ED%95%AD%EB%AA%A9-%ED%91%9C%EC%8B%9C)를 지원하여, 필드에 빈 셀을 보여줄 수 있습니다.
* 날짜, 월, 연도, 분기별로 데이터를 빠르게 필터링할 수 있는 [피벗 테이블 타임라인 슬라이서](/spreadjs/docs/features/pivot-table/pt-slicer/pivot-table-timeline-slicer)가 도입되었습니다.
* SpreadJS가 이제 [테이블 시트를 데이터 소스로 사용](/spreadjs/docs/features/pivot-table/create-pivot-table#%ED%85%8C%EC%9D%B4%EB%B8%94-%EC%8B%9C%ED%8A%B8%EB%A5%BC-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%86%8C%EC%8A%A4%EB%A1%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0)한 피벗 테이블 생성을 지원합니다.
* 사용자가 원래 필터 범위를 넘어 [필터 범위를 자동 확장할지 여부](/spreadjs/docs/features/rows-columns/filter/filter-operations#%ED%95%84%ED%84%B0-%EB%B2%94%EC%9C%84-%EC%9E%90%EB%8F%99-%ED%99%95%EC%9E%A5)를 선택할 수 있습니다.
* PROPERTY 수식 함수가 [점 연산자 “.”](/spreadjs/docs/formulareference/FormulaFunctions/other-functions/property-function#%EC%A0%90-%EC%97%B0%EC%82%B0%EC%9E%90)을 지원하여 축약형으로 사용할 수 있습니다.
* 사용자가 인쇄 영역을 정의할 때마다 커스텀 이름 “Print\_Area”를 생성하고 유지하는 [인쇄 영역](/spreadjs/docs/features/printing/PrintArea)이 개선되었습니다.
* SpreadJS가 이제 워크북 내 특정 시트로 더 빠르게 이동할 수 있도록 탭 스트립에 [“모든 시트” 버튼](/spreadjs/docs/features/workbook/tabstrip#%EB%AA%A8%EB%93%A0-%EC%8B%9C%ED%8A%B8all-sheets-%EB%B2%84%ED%8A%BC)을 제공합니다.
* 서로 다른 워크북의 데이터를 참조해 값을 계산하는 [통합 문서 간 수식](/spreadjs/docs/formulareference/formulaoverview/CrossWorkbookFormula)이 도입되었습니다.
* 사용자가 UI를 통해 다시 표시할 수 없는 방식으로 Spread 컴포넌트 내 [워크시트를 숨길 수 있는 기능](/spreadjs/docs/features/worksheet/work-with-worksheets#%EC%9B%8C%ED%81%AC%EC%8B%9C%ED%8A%B8-%EC%88%A8%EA%B8%B0%EA%B8%B0-%EB%98%90%EB%8A%94-%EB%8B%A4%EC%8B%9C-%ED%91%9C%EC%8B%9C%ED%95%98%EA%B8%B0)이 추가되었습니다.
* [도형의 속성](/spreadjs/docs/features/UnderstandingShapes/ShapePropertyLinks)을 수식 내에서 참조해 워크시트 셀과 연결할 수 있습니다.
* SpreadJS가 시트 내 [데이터 유형에 따라 셀 범위를 얻는 기능](/spreadjs/docs/features/cells/cell-range#%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%9C%A0%ED%98%95%EC%97%90-%EB%94%B0%EB%A5%B8-%EB%B2%94%EC%9C%84-%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0)을 지원합니다.
* 비연속 데이터 범위도 지원하는 [스파크라인 추가 메서드](/spreadjs/docs/features/sparkmain/createspark#%EB%B9%84%EC%97%B0%EC%86%8D-%EB%B2%94%EC%9C%84%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94-%EC%8A%A4%ED%8C%8C%ED%81%AC%EB%9D%BC%EC%9D%B8)가 도입되어, 워크시트 내 임의 값으로 스파크라인을 생성할 수 있습니다.
* 새로운 [CellRange](/spreadjs/api/classes/GC.Spread.Sheets.CellRange) 메서드가 도입되어 셀 범위 내에서 [스타일 및 명명된 스타일 설정](/spreadjs/docs/features/cells/styles)이 가능합니다.
* SpreadJS 내 [드래그 앤 드롭 동작](/spreadjs/docs/features/cells/dragdrop)이 강화되어 시트 및 테이블 내 셀 삽입을 위한 새로운 Shift 동작이 추가되었습니다.
* [SpreadJS 세계화](/spreadjs/docs/features/culture/globalization) 자바스크립트 라이브러리를 통해 워크시트에 추가적인 문화권 정보를 사용할 수 있습니다.
* SpreadJS 디자이너 컴포넌트에서 [형식 문화 대화상자](/spreadjs/docs/spreadjs-designer-component/customizations/designer-customize-culture)를 사용자 정의하여 [CultureInfo](/spreadjs/api/classes/GC.Spread.Common.CultureInfo) 클래스를 사용해 새로운 문화권 옵션을 정의할 수 있습니다.
* SpreadJS 디자이너 컴포넌트가 이제 Vue 3를 지원합니다. Vue 애플리케이션에 SpreadJS 디자이너 컴포넌트를 추가하는 방법은 [여기](/spreadjs/docs/spreadjs-designer-component/designer-javaScript-frameworks/designer-vue)를 참조하세요.

# 해결된 문제

이번 버전에서 해결된 주요 사항은 다음과 같습니다.

* 피벗 테이블 필드의 글자색(forecolor)이 SpreadJS에서 올바르게 임포트됩니다.
* 모바일 뷰에서 콘텐츠 영역이 정상적으로 유지됩니다.
* XY 산점도 차트의 추세선 방정식에 대해 올바른 글자색이 표시됩니다.
* `moveTo` 메서드 사용 시 셀 값이 유지됩니다.
* 필터 범위 내 복사된 셀 삽입 시 필터 박스가 값을 정확히 표시합니다.
* 하이퍼링크가 배열을 올바르게 처리하며 Excel 파일 임포트 시도 포함됩니다.
* 테이블에 열 삽입 시 사용자 정의 이름 참조가 영향을 받지 않습니다.
* React 환경에서 SpreadJS 디자이너 컴포넌트가 콘텐츠 보안 정책(CSP) 설정 오류 문제를 해결했습니다.
* COUNTIF 함수가 사용자 지정 문화권 환경에서 올바른 결과를 반환합니다.
* JSON 데이터 로딩 시 댓글(Comment) 클래스 메서드가 올바르게 구현됩니다.
* `fromJSON` 메서드 사용 후 재필터링 시 모든 행이 유지됩니다.
* 테이블 시트에 새 행 추가 시 유효성 검사기가 올바르게 작동합니다.
* 양수 및 음수 백분율 입력에 대해 Excel과 동일한 로직으로 업데이트 되었습니다.
* `changeFormulaReference` 명령이 커서가 처음에 위치할 때도 정상 작동합니다.
* 고정 행이 있을 때 스크롤 시 테이블 헤더가 올바르게 표시됩니다.
* SpreadJS 디자이너 툴바 모드가 컨테이너 너비에 따라 자동 조정됩니다.
* 인쇄 미리보기 성능이 향상되었습니다.
* `ROWS` 함수가 행 수 변경 후에도 정확히 동작합니다.
* Excel 임포트 시 차트 스타일과 데이터 레이블 값이 유지됩니다.
* 헤더 텍스트 수정 시 인쇄 미리보기에서 헤더 영역이 올바르게 표시됩니다.
* 숨겨진 셀이 많은 Excel 파일의 성능이 개선되었습니다.
* SSJON 내보내기 후 데이터 바인딩이 유지됩니다.
* 셀 서식 대화상자의 줄 바꿈 옵션이 자동 줄 높이 조정 기능을 지원하도록 업데이트 되었습니다.
* Excel 임포트 시 `FILTER` 함수가 올바르게 작동합니다.
* Excel 임포트 후 테이블 필터가 정상 작동합니다.
* `doNotRecalculateAfterLoad` 속성 미설정 시 수식 미계산 문제를 수정했습니다.
* 한 테이블에서 다른 시트의 테이블로 복사-붙여넣기 시 테이블 스타일이 유지됩니다.
* `IHitTestCellTypeHitInfo` 인터페이스에 시트 속성이 추가되었습니다.
* Windows OS에서 리치 텍스트 폰트 문제로 Excel 임포트 실패 문제를 수정했습니다.
* 테이블시트 데이터 삭제 후에도 참조가 유지됩니다.
* `IFERROR` 함수가 null 결과 표현식을 정확히 평가합니다.
* 아이콘 세트 규칙(IconSetRule)에서 셀 아이콘 미선택 시 조건부 서식이 올바르게 적용됩니다.
* 시트 리셋 후 피벗 테이블 추가가 가능해졌습니다.
* 워터마크 색상 변경 시 셀 스타일이 유지됩니다.
* `fitPagesWide` 및 `fitPagesTall` 옵션 사용 시 PDF 내보내기 기능이 정상 작동합니다.
* 이벤트로 인한 댓글 삭제가 올바르게 처리됩니다.
* 피벗 테이블 정렬 로직이 Excel과 동일하게 수정되었습니다.
* 제거된 열 참조로 인한 테이블 시트 수식 오류가 발생합니다.
* 바인딩 소스에 영역 필드 미설정 시 해당 셀 내용이 null로 표시됩니다.
* 열 제거 시 테이블 바인딩이 올바르게 업데이트됩니다.
* 데이터 바인딩 테이블 내 신규 및 기존 열 이름 지정 기능이 개선되었습니다.
* Angular V13 컴파일러 버그를 해결했습니다.
* SpreadJS 디자이너의 수식 텍스트 박스가 `unbindAll` 명령 호출 시 올바르게 작동합니다.
* Excel 파일 내 피벗 테이블 임포트가 정상 작동합니다.
* 인쇄 미리보기 페이지와 대화상자에 사용자 정의 용지 종류 추가가 가능합니다.
* 날짜 유효성 검사가 Chrome과 Safari 브라우저에서 일관되게 작동합니다.
* 임포트된 워크북 설정 대화상자의 서식 목록이 데이터 형식을 정확히 참조합니다.
* 그룹 윤곽선이 올바르게 확장 및 축소됩니다.
* 계산 필드 삽입 시 중복 텍스트 추가 문제를 수정했습니다.
* 수식이 많은 Excel 파일 로딩 시 SpreadJS 성능이 향상되었습니다.
* SpreadJS 디자이너에서 새 폰트 선택 시 글꼴 대화상자의 이름이 올바르게 갱신됩니다.
* 테이블 열 이름 변경 시 연결된 슬라이서의 원본 이름과 캡션 이름이 유지됩니다.