Skip to main content
띄우기 메서드에 줄 수 있는 옵션입니다. 자주 쓰는 것만 먼저 보시려면 편집기 띄우기를 보세요.

편집기 공통 옵션

createProject, openProject, recycleProject가 공통으로 받습니다. parent_element와 token을 빼면 모두 선택입니다. 선택 옵션은 값이 있을 때만 URL에 들어갑니다. false, 0, 빈 문자열처럼 falsy인 값도 넣지 않습니다. 예를 들어 no_update: false는 생략한 것과 같습니다.

그 밖의 공통 옵션

아래 옵션도 CommonLaunchOptions에 있습니다. SDK는 값을 그대로 URL 쿼리에 싣습니다. 타입에 적힌 값 말고 다른 문자열도 받습니다. edit_lock도 문자열에 값이 들어 있는지로 판단하므로 'edit-group,edit-page'처럼 함께 넣습니다.

cal_date 형식

year-month 또는 year-month-this-prev-next 형태입니다.

지연 파라미터

URL에 싣지 않고, 띄우는 시점에 저장했다가 편집기가 요청하면 답하는 옵션입니다. 값이 크거나 URL에 넣기 곤란한 것들입니다. 다른 옵션과 같은 객체에 넣으면 됩니다. 지연 파라미터가 있으면 편집기가 그 값을 요청할 때까지 기다리라는 wait_* 플래그가 URL에 붙습니다. 대부분 원래 옵션 이름을 따릅니다(private_css → wait_private_css). SDK는 어느 세션에서든 편집기가 요청한 이름에 답합니다. 다만 URL에 붙는 플래그는 띄우는 메서드마다 다릅니다. 그래서 편집기 계열에 data_row를 주거나 TnView에 ddp_block을 줘도 플래그가 붙지 않습니다.
ddp_block만 예외입니다. 플래그 이름이 wait_ddp_block이 아니라 wait_ddp로 축약돼 있습니다.

options 키

편집기 계열이 읽는 options의 키입니다. 각 키의 필드는 설명 페이지에 있습니다. 표에 없는 키는 공개 연동 대상이 아닙니다. 같은 이름의 키를 사이즈 edicus options에도 둘 수 있습니다. 둘 다 있으면 아래 합치는 방식을 따릅니다. “키 단위”는 객체의 맨 위 키끼리 합치고 겹치는 키는 띄우기 옵션이 이긴다는 뜻입니다. 안쪽 객체는 합치지 않고 통째로 바뀝니다.

options.sizing

createProject의 options로 템플릿의 페이지 사이즈를 바꿀 수 있습니다.
대지 크기는 재단 점 크기입니다.

option_string

option_string은 상품 설정 일부를 이 프로젝트에 한해 바꾸는 문자열입니다. options와 같은 지연 파라미터라 URL에 싣지 않고, 편집기가 요청할 때 SDK가 보냅니다.

형식

  • 키=값 쌍을 &로 잇습니다. 값은 첫 = 뒤부터 다음 = 앞까지이므로 값에 =와 &를 넣을 수 없습니다.
  • 편집기는 퍼센트 인코딩을 풀지 않고 값을 그대로 씁니다.
  • promo, sizing, single_strict_palette는 값 안에 항목:값을 ;로 이은 묶음을 받습니다. 예: promo=url:<인코딩한 주소>;width:300;height:400
  • 묶음 값 안의 항목 값에는 :와 ;를 쓸 수 없습니다. 예외는 이름이 url인 항목으로, 어느 묶음에 있든 편집기가 퍼센트 인코딩을 풀어 씁니다. 주소는 encodeURIComponent로 인코딩해 넣습니다.
  • 접두사가 붙은 키는 한 객체로 모입니다. prodinfo_<저장 키>는 상품 설정 값, sizing_<키>와 sizing*modify_<키>는 크기 설정, composition_<키>는 조판 그룹, sticut_<키>, sticut*stand_<키>, sticut*multi_sticut_stand_<키>는 스티컷 설정, paging*growth_<키>, paging*spine_<키>, paging*config_<키>는 페이징 규칙의 같은 키를 바꿉니다.

값 변환

편집기는 정해 둔 키만 숫자나 불리언으로 바꾸고, 나머지는 문자열 그대로 씁니다. 불리언은 정확히 true일 때만 참입니다. 1이나 TRUE는 거짓입니다. 방향별 테두리 border_left_mm, border_top_mm, border_right_mm, border_bottom_mm은 변환 대상이 아니어서 문자열 그대로 들어갑니다.
group_hide_total_count는 불리언 변환 대상이 아닙니다. false도 비어 있지 않은 문자열이라 값과 상관없이 켜집니다. 끄려면 키를 빼세요.
prodinfo_keepPhotoBrowseValue는 쓰지 마세요. 이 값은 default나 over-3 같은 문자열이어야 하는데, option_string은 불리언으로 바꿔 넣으므로 상품 설정의 keep-imgpool-mode가 깨집니다.

적용 시점과 저장

  • 편집기는 상품 설정과 사이즈의 product override를 읽은 뒤 option_string을 적용합니다. 다른 층과의 우선순위는 상품 설정 한눈에 보기에 있습니다.
  • 새 프로젝트를 만들 때 받은 option_string은 프로젝트 문서에 저장됩니다.
  • 저장된 프로젝트를 다시 열 때는 문서에 저장된 option_string을 쓰고, 이번에 넘긴 값은 무시합니다. 문서에 저장된 값이 없을 때만 이번 값을 씁니다.
  • pscode와 template_uri 키를 주면 createProject의 ps_code, template_uri 대신 이 값으로 프로젝트를 만듭니다. ui_style, num_page, cal_date 키는 같은 이름의 띄우기 옵션을 대신합니다.

예시

키별 설명

TnView와 Preview 공통 옵션

parent_element와 token은 필수입니다. 편집기 공통 옵션은 받지 않습니다. TnView의 세 메서드는 rotate?: boolean과 show3d?: boolean도 받습니다. 둘 다 명시적으로 지정했을 때만 URL에 실립니다. openTnview는 project_id가 필수이고 ps_code가 선택입니다. createTnview와 showTnview는 ps_code와 template_uri가 필수입니다. Preview는 project_id와 partner와 uid가 추가로 필수입니다. ps_code는 선택이고, mode?: string(기본값 'default')을 받습니다.
편집기의 num_page와 TnView, Preview의 npage는 다른 개념입니다. num_page는 포토북 내지 스프레드 장수이고, npage는 한 화면에 보여줄 페이지 수입니다.

experimental 메서드

v2 표면에 있던 메서드 일부가 v2와 같은 동작으로 구현돼 있습니다. 옵션 타입이 느슨하고(ExperimentalLaunchOptions), 안정 계약으로 보장하지 않습니다. 새 연동에는 정식 메서드를 쓰세요. SDK가 확인하는 필수 옵션은 parent_element와 token뿐입니다. 메서드가 실제로 쓰는 다른 값(ps_code, project_id 등)이 빠져도 예외를 던지지 않고, v2처럼 URL에 undefined라는 글자가 그대로 들어갈 수 있습니다. ExperimentalSession은 이벤트와 커맨드에 타입이 없는 세션입니다. 주고받는 메시지를 Record<string, unknown>으로만 다룹니다.

다음 단계

편집기 띄우기

자주 쓰는 옵션만 다시 봅니다.

상품 설정 한눈에 보기

띄우기 옵션과 상품 설정 중 어느 값이 이기는지 봅니다.