입력 파일 고르기
이미지 가이드는 89바이트 소스로 refund-window.lspx.png를 만듭니다.
검사 결과는 page_count: 1이고 디코딩하면 원문이 복원됩니다.
| 이미지 | 검사와 복원과 실행에 전달할 파일 |
|---|---|
| 한 페이지 | 원본 .lspx.png 파일 |
| 2~32페이지 | 완전한 .lspx-images.zip 파일 |
두 페이지 ZIP에는 page-01of02.lspx.png와 page-02of02.lspx.png가 이 순서로 들어 있습니다.
두 페이지를 원본 ZIP 안에 그대로 두세요.
디코더는 페이지 순서를 포함해 묶음 전체를 검사합니다.
인코더는 소스 크기와 소스 구조를 함께 살펴 페이지 수를 정합니다.
형식에서 고정하는 것
형식은 이미지의 바이트 표현을 하나로 정합니다.
검사 결과의 canonical은 이 뜻입니다.
눈에 보이는 그림이 같다는 조건만으로는 충분하지 않습니다.
| 항목 | 고정된 표현 |
|---|---|
| 이미지 형식 | csk.lispex-image/v2 |
| 검사 JSON | csk.lispex-image-inspection/v1 |
| 그림 규칙을 정하는 이미지 프로파일 | csk.lispex-image-profile/v2 |
| 소스 요소를 시각 기호에 대응시키는 코드북 | csk.lispex-image-codebook/v2 |
| 페이지 배치 | 너비 1304픽셀, Sunlit Amber 팔레트, 정해진 이미지 데이터 위치 |
| PNG 압축 | 고정된 압축 코드표를 쓰는 고정 Huffman 인코딩 |
| ZIP 구조 | 압축하지 않은 항목과 정해진 페이지 이름과 순서와 디렉터리 바이트 |
전달할 때는 인코더가 만든 원본 파일을 쓰세요. 스크린샷, 크기 조절, 색상 변환, 메타데이터 추가, 재압축, 페이지 누락과 순서 변경은 거부됩니다. 디코더는 OCR이나 카메라 인식을 입력으로 사용하지 않습니다.
입력 한도
리더는 소스 텍스트를 읽어 구조화된 요소로 바꾸는 부분입니다. 노드는 그 요소를 나타내고 깊이는 중첩된 정도를 나타냅니다.
| 입력 또는 구조 | 최댓값 |
|---|---|
| 소스 | 1MiB, 즉 1,048,576바이트 |
| 리더 노드 | 16,384개 |
| 중첩 깊이 | 256 |
| 이미지 페이지 | 32페이지 |
디코더는 메모리를 할당하기 전에 길이와 오프셋을 검사합니다. 이 한도들은 함께 적용됩니다. 소스 바이트 한도만 지킨다고 모든 입력 조건을 만족하지는 않습니다.
원문을 확인하는 방법
디코딩할 때는 파일 구조와 무결성 해시와 소스 구조와 Reed–Solomon 패리티를 검사합니다. 패리티는 인코딩된 내용의 손상을 찾기 위해 덧붙인 데이터입니다. 디코더는 이어서 이미지를 다시 만들고 입력 PNG나 ZIP 전체와 비교합니다.
형식은 다음 두 규칙을 따릅니다.
decode(encode(source)) = source
encode(decode(image)) = image첫 규칙은 주석과 줄바꿈을 포함한 모든 소스 바이트를 보존합니다.
둘째 규칙은 다시 만든 이미지의 파일 바이트가 입력과 같을 때만 이미지를 받는다는 뜻입니다.
image inspect도 같은 전체 검사를 마친 뒤 식별자와 해시를 보고합니다.
image decode는 검사를 통과한 뒤 복원한 소스를 기록합니다.
무결성과 서명과 접근 권한 구분하기
| 제품 또는 작업 | 하는 일 |
|---|---|
| 리스펙스 이미지 | 읽을 수 있는 소스 바이트를 PNG나 완전한 페이지 묶음에 담습니다 |
image inspect | 형식과 프로파일과 페이지 수와 소스 식별자와 무결성 해시를 보고합니다 |
image decode | 이미지의 모든 검사를 마친 뒤 소스를 복원합니다 |
| 리스펙스 바우치 | 복원한 소스 식별자를 생산자 인증과 요청 결속과 재실행과 로컬 수용 판단에 연결합니다 |
| 이미지를 공유하는 애플리케이션 | 화면 표시 크기와 배포 기밀성과 파일 접근 권한을 관리합니다 |
애플리케이션이 화면의 미리보기 크기를 바꾸더라도 디코딩에 쓸 원본 파일은 보관하세요. 서명과 수신자 신뢰 정책은 리스펙스 바우치 개요에서 이어서 읽으세요.