Scissor

خودکارسازی

سه ابزار در Scissor کارهای تکراری را برایتان انجام می‌دهند: اکشن‌ها زنجیره‌ای از فرمان‌ها را ضبط و دوباره اجرا می‌کنند، متغیرها متن و نمایان بودن را از روی جدولی از داده‌ها عوض می‌کنند تا یک طرح به طرح‌های فراوان تبدیل شود، و اسکریپت‌ها کل ویرایشگر را با JavaScript هدایت می‌کنند. هیچ‌کدام به حساب کاربری یا سرور نیاز ندارند — مانند بقیه‌ی Scissor روی دستگاه خودتان اجرا می‌شوند.

اکشن‌ها: یک بار ضبط کنید، هر جا اجرا کنید

پنل اکشن‌ها (پنجره › اکشن‌ها) کارهایی را که انجام می‌دهید ضبط می‌کند و روی انتخابی تازه دوباره اجرا می‌کند. ضبط را بزنید، فرمان‌هایی را که می‌خواهید ثبت شوند اجرا کنید — تراز کردن، جابه‌جایی مسیر، افزودن سایه، یا هر زنجیره‌ی دیگری — سپس توقف را بزنید و برای اکشن نامی بگذارید. اکشن به فهرست افزوده می‌شود و نشان می‌دهد چند گام دارد.

روی یک اکشن کلیک کنید تا آن را روی هر چه اکنون انتخاب شده اجرا کنید؛ با ⌥-کلیک روی یک اکشن آن را حذف کنید. چون یک اکشن تنها فهرستی از فرمان‌هاست، یک روال دقیق را روی اشیای فراوان تکرار می‌کند، بی‌آنکه هر بار لازم باشد گام‌به‌گام آن را کلیک کنید.

متغیرها: یک طرح، نسخه‌های فراوان

پنل متغیرها (پنجره › متغیرها) یک طرح ثابت را به قالبی تبدیل می‌کند که داده‌ها آن را هدایت می‌کنند. دو چیز در یک شیء را می‌توان پویا کرد:

پویا کردن متن
واژه‌های یک شیء متنی را به یک متغیر پیوند می‌دهد، تا مجموعه‌داده‌های گوناگون بتوانند متن‌های متفاوتی را در همان جا بگذارند.
پویا کردن نمایان بودن
نمایش یا عدم نمایش یک شیء را پیوند می‌دهد، تا یک مجموعه بتواند بخش‌هایی از طرح را روشن یا خاموش کند.

لغو پیوند شیء پیوندخورده را دوباره ثابت می‌کند.

مجموعه‌داده‌ها

یک مجموعه‌داده یک ردیف از مقادیر برای آن متغیرهاست — یک نشان، یک کارت، یک قاب. ثبت مقادیر کنونی را به‌عنوان مجموعه‌ای تازه ذخیره می‌کند؛ پیکان‌ها از یک مجموعه به مجموعه‌ی بعدی می‌روند و طرح مطابق آن به‌روز می‌شود. درون‌ریزی CSV… یک دسته‌ی کامل را یک‌جا می‌خواند — یک ستون برای هر متغیر و یک ردیف برای هر مجموعه — و صدور CSV مجموعه‌ها را دوباره بیرون می‌نویسد تا در یک صفحه‌گسترده ویرایش شوند.

خروجی گرفتن از همه‌ی مجموعه‌ها یک‌جا

خروجی مجموعه‌داده‌ها… آرت‌بورد فعال را برای هر مجموعه‌داده یک بار رندر می‌کند و همه را در یک مرحله، به‌صورت PNG، JPEG، WebP یا SVG، می‌نویسد. برگه‌ای از نشان‌های نام، مجموعه‌ای از بنرهای بومی‌شده یا رشته‌ای از کارت‌های شبکه‌های اجتماعی به شکل دسته‌ای مرتب از فایل‌ها بیرون می‌آید که هر کدام داده‌ی خودش را دارد.

اسکریپت‌ها: هدایت Scissor با JavaScript

برای هر کاری که از دست منو برنمی‌آید، اسکریپت از پسش برمی‌آید. فایل › اسکریپت‌ها › کنسول اسکریپت… ویرایشگری باز می‌کند که در آن JavaScript می‌نویسید و روی سند باز اجرا می‌کنید؛ اسکریپت دیگر… (⌘F12) یک فایل .js را از دیسک اجرا می‌کند. اسکریپت در یک Web Worker و جدا از صفحه اجرا می‌شود، پس جز از راه شیء scissor که در اختیارش گذاشته می‌شود نمی‌تواند به رابط کاربری یا فایل‌های شما دست بزند — هر فراخوانی روی موتور انجام می‌شود و پاسخش بازگردانده می‌شود.

شیء scissor کارهای رایج را پوشش می‌دهد:

ساختن شکل و متن
scissor.rect، roundedRect، ellipse، polygon، star، path و text اثر را می‌کشند؛ هر کدام یک موقعیت و اندازه و یک شیء گزینه‌ها برای fill، stroke و strokeWidth می‌گیرند (رنگ‌ها می‌توانند هر رنگ CSS باشند).
خواندن سند
await scissor.document() برنامه، انتخاب، لایه‌ها و آرت‌بوردها را همان‌طور که پنل‌ها می‌بینند برمی‌گرداند؛ scissor.selection() تنها چیزهای انتخاب‌شده را برمی‌گرداند.
انجام کار روی آن
scissor.select، group و undo، و scissor.run(command) برای هر فرمان موتور — همان فرمان‌هایی که منوها می‌فرستند.
پاسخ دادن
scissor.log در کنسول چاپ می‌کند؛ scissor.alert پیامی نشان می‌دهد.

یک نمونه‌ی کوتاه — حلقه‌ای از نقطه‌های رنگی و یک عنوان:

const doc = await scissor.document();
scissor.log('Boards:', doc.artboards.length);
for (let i = 0; i < 12; i++) {
  const a = (i / 12) * Math.PI * 2;
  await scissor.ellipse(300 + Math.cos(a) * 120, 260 + Math.sin(a) * 120, 36, 36,
    { fill: `hsl(${i * 30} 80% 60%)` });
}
await scissor.text(230, 270, 'Hello, Scissor', { size: 24 });

کنسول اسکریپت آخرین کدی را که اجرا کرده‌اید نگه می‌دارد، تا وقتی برمی‌گردید اسکریپتِ کارا همان‌جا باشد.