Можно ли преобразовать файл .Sketch в .SVG?

Можно ли преобразовать файл Sketch в SVG без использования Sketch или DrawIt? Я знаю, что это теоретически возможно, поскольку они оба векторные, но я использую Windows и Linux, поэтому у меня нет Mac, чтобы открывать файлы.


person Ky Leggiero    schedule 10.08.2014    source источник
comment
Я посмотрел и не нашел спецификацию файла для файла .sketch. Так что без предварительной реверс-инжиниринга самого формата файла обойтись невозможно. Вам следует связаться с их официальными каналами поддержки и запросить спецификацию формата файла; или попросите мосты преобразования, не зависящие от платформы (я подозреваю, что их разработчики не будут знать или заботятся о том, как писать, учитывая, что Sketch использует множество технологий, эксклюзивных для OS X, какими бы волшебными они ни были) Так что я не питаю к вам оптимизма. Извините :(   -  person ThorSummoner    schedule 10.08.2014


Ответы (2)


Нет никакого «волшебства» в «Sketch, использующем множество технологий, которые являются эксклюзивными для OS X» или нет. Это заявление на веб-сайте создателей Sketch связано с тем, что они не собираются делать приложение Sketch доступным для Linux и Windows.

Настоящая проблема у вас заключается в следующем: -

Файл sketch представляет собой файл sqlite3, и в нем есть (в настоящее время на момент написания) две таблицы, meta и payload. Таблица payload представляет собой хранилище с одним ключом и значением, в котором хранятся значения main и BLOB. Вот где вы застряли — вам придется выяснить, как реконструировать BLOB, если у вас нет программы Sketch.

С другой стороны, если у вас есть программа Sketch, вам не нужно ничего перепроектировать, вы можете запросить информацию из своего файла Sketch с помощью API плагинов Sketch, которые хорошо задокументированы здесь — http://bohemiancoding.com/sketch/support/developer/, который позволит вам автоматизировать множество задач, если у вас сложный рабочий процесс проектирования. http://zeplin.io – это пример простого подключаемого модуля Sketch, который извлекает для разработчика актуальную "специальную" информацию из эскиза, созданного дизайнером. артборд.

Но вернемся к вашему первоначальному вопросу: сам Sketch позволяет вам экспортировать файлы SVG, но это предполагает, что у вас есть приложение Sketch. Короче говоря, если вы не реконструируете двоичный файл BLOB в файле эскиза (или не используете инструмент, созданный кем-то другим), вы не сможете программно преобразовать файлы эскиза в файлы SVG, не имея приложения Sketch.

person Calvin Cheng    schedule 30.01.2015
comment
BLOB в таблице payload — это объект bplist (двоичный список Apple), который можно открыть с помощью github.com /cclgroupltd/ccl-bplist и 2 строки кода (см. там README). В этот момент вы можете увидеть структуру векторной графики в виде открытого текста (ccl_bplist загружает ее как словарь Python). Вам нужно будет найти совпадение с SVG, и у вас будет там конвертер. Поскольку это текст, вы можете, по крайней мере, догадаться, как это сделать, и заставить его работать, имея немного времени. - person Laurent S; 03.11.2016
comment
Теперь эта информация устарела: в Sketch 43 появился новый формат файлов, который по сути представляет собой просто несколько файлов json в zip-архиве. Они также предоставляют javascript API для работы с новым форматом файлов, о котором вы можете прочитать здесь: developer. sketchapp.com/reference/api - person Lesik2008; 18.12.2018

Регистрация на Figma в настоящее время бесплатна для всех и поддерживает как импорт Sketch, так и экспорт SVG. Это полнофункциональный инструмент проектирования, основанный на браузере, поэтому он должен работать на всех трех основных платформах (OS X, Windows и Linux). Импорт файлов из Sketch не является идеальным сопоставлением 1-к-1 с Figma, потому что оба приложения имеют несколько разные наборы функций, но он должен помочь вам в 99% случаев.

person constexpr    schedule 19.10.2016
comment
Вы спасли мой день, спасибо! Figma отлично работала для меня. - person István Ujj-Mészáros; 27.05.2017