Подготовьте исходник
Установите Native CLI или пакет npm, чтобы пользоваться командой lispex.
В новой рабочей папке сохраните следующий текст в файле heading-image.lspx.
Чтобы получить ровно 219 байт, используйте UTF-8 без метки порядка байтов, окончания строк LF и перевод строки в конце файла.
(define (место-заголовка осталось-строк)
(if (< осталось-строк 2) 'следующая-страница 'оставить))
(display (место-заголовка 1))
(newline)Правило возвращает следующая-страница, если под заголовком осталось меньше двух строк.
Последние две формы выводят этот результат и перевод строки.
1. Создайте изображение
lispex image encode --source heading-image.lspx --out heading-image.lspx.pngКоманда создаёт heading-image.lspx.png, ничего не печатает и завершается с кодом 0.
Этот исходник помещается на одной странице.
Кодировщик определяет число страниц по исходнику и его структуре.
Для одной страницы имя результата должно оканчиваться на .lspx.png, для нескольких страниц на .lspx-images.zip.
При неверном суффиксе команда останавливается до записи файла.
Например, при image-pageset-required замените суффикс результата на .lspx-images.zip.
2. Проверьте изображение
lispex image inspect --image heading-image.lspx.pngКоманда проверяет всё изображение, выводит JSON и завершается с кодом 0. Эти строки вывода описывают пример.
"source_bytes": 219,
"node_count": 24,
"max_depth": 3,
"page_count": 1,JSON также содержит идентификаторы формата и профиля, source_id и хеши SHA-256 для проверки целостности.
Команда сообщает эти значения, не печатая исходник.
Другие окончания строк меняют байты исходника и их идентификаторы.
3. Восстановите исходник
lispex image decode --image heading-image.lspx.png --out recovered.lspxКоманда создаёт recovered.lspx с теми же 219 байтами, что и в исходном файле.
Она ничего не печатает и завершается с кодом 0.
Откройте файл, чтобы прочитать четыре строки из примера выше.
Команды encode и decode сохраняют существующие выходные файлы.
Если файл уже есть, выберите другое имя результата.
4. Запустите изображение
lispex run --image heading-image.lspx.pngКоманда печатает.
следующая-страницаКод завершения равен 0. Перед запуском команда полностью декодирует и проверяет изображение, в том числе пересоздаёт его для побайтового сравнения. Только после этого восстановленный исходник поступает в интерпретатор.
Используйте Песочницу
Песочница работает с файлами изображений локально в браузере.
| Действие | Результат |
|---|---|
| Создать изображение | Создаёт изображение текущего содержимого редактора |
| Открыть изображение | Проверяет локальный PNG или ZIP перед показом |
| Перейти на страницу | Показывает PNG-страницу полностью проверенного изображения |
| Восстановить исходник | Заменяет содержимое редактора без запуска программы |
| Скачать изображение | Сохраняет файл изображения |
| Запустить изображение | Отдельным действием проверяет изображение и запускает исходник |
Native и npm предоставляют одинаковые файловые команды. Открытая сборка WASM предоставляет те же операции Rust с изображениями для встраивания. Песочница использует их для работы с локальными файлами.
Передавайте исходный файл
Передавайте исходный PNG или полный ZIP.
Для нескольких страниц используйте ZIP как вход для inspect, decode или run --image.
Снимки экрана, изменение размера или цвета, добавление метаданных, повторное сжатие, пропуск и перестановка страниц отвергаются. Декодер читает точные байты файла. Он не использует OCR или распознавание камерой.
Передайте исходник Ваучеру
Изображение содержит доступные для чтения исходные данные. Ваучер Лиспекса проверяет производителя и применяет политику доверия получателя. Он также связывает данные с запросом, выполняет программу повторно и позволяет локально решить, принять ли результат.
Передавайте изображение как исходник Ваучера через --source-image.
Сначала команда полностью проверяет изображение.
Native принимает эту опцию для идентификатора исходника, создания политики, выпуска, просмотра, проверки подлинности, повторного выполнения и проверки допуска.
npm принимает её для идентификатора исходника, создания политики и проверки подлинности.
Получатель передаёт точный вход и применяет правила авторизации, связанные с этим запросом.
Формат и безопасность изображений · Обзор Ваучера · «Лиспекс в вашем приложении»