안녕하세요 그레이프시티입니다.
먼저 답변이 늦어진 점 죄송합니다.
1. toJSON에서 사용자 서식이 적용된 값을 가져오는 방법 문의
=> 해당 문의와 관련하여 해당 현상은 Excel 동작을 따르고 디자인된 결과물이며 셀로 형식을 설정할 때, 내부에 영향을 미치게 됩니다.
또한, toJSON을 사용하여 글씨 크기, 글씨체, 배경색 및 포매터 문자열과 같은 스타일 정보는 원본 파일을 함께 모두 저장됩니다. SpreadJS의 fromJSON을 사용할 때마다, 데이터 테이블을 불러오고 해당 데이터 테이블에 스타일을 적용합니다. 따라서 원본 값은 설정된 값이며 형식은 원본 값에 내장된 스타일 정보에 불과합니다.
다만 원본에서 포맷된 값을 얻고자 할 경우, format 메서드를 사용할 수 있습니다. 아래 샘플 및 코드 스피넷은 GeneralFormatter 을 사용하여 형식에 따라 값을 포맷하고 그 값을 가져오고 있습니다.
let formatter = new GC.Spread.Formatter.GeneralFormatter(null, null);
formatter.formatString(inpFormat);
let result = formatter.format(inpNum);
2. formatter 정보를 가져오는 방법 문의
=> 단순히 formatter 정보를 가져오기 위해서는 backColor, formatter 정보를 포함한 style 객체를 반환하는 getStyle 메서드를 사용하시면 됩니다. 아래 코드 스니펫을 참고해주시기 바랍니다.
let style = sheet.getStyle(0, 0);
console.log(style.foramtter);
혹은 아래와 같이 toJSON의 결과물에 직접 접근하여 style 및 formatter 정보를 가져오실 수 있습니다.
spread.toJSON(false).sheets.Sheet1.data.dataTable[0][0].style.formatter
[GeneralFormatter]
https://www.grapecity.com/spreadjs/docs/v13/online/SpreadJS~GC.Spread.Formatter.GeneralFormatter.html
[getStyle]
https://www.grapecity.com/spreadjs/docs/v13/online/SpreadJS~GC.Spread.Sheets.Worksheet~getStyle.html
도움말 문서도 같이 전달 드리오니 참고 부탁 드립니다.
다른 궁금한 점이 생기면, 언제든 문의 주시기 바랍니다.
감사합니다.
그레이프시티 드림
* 그레이프시티(GrapeCity)는 개발자를 위하여 ComponentOne(컴포넌트원), Spread(스프레드), ActiveReports(액티브리포츠), SpreadJS(스프레드JS), Wijmo(위즈모)와 같은 엑셀 스프레드시트 리포팅 그리드와 차트 등 다양한 종류의 .NET JavaScript(자바스크립트) 컴포넌트 툴을 생산하고있는 개발툴 전문 회사 입니다.