Scissor

Automation

Tre verktyg i Scissor gör det repetitiva arbetet åt dig: Åtgärder spelar in en sekvens av kommandon och spelar upp den, Variabler byter text och synlighet från en datatabell så att en design blir många, och Skript driver hela redigeraren från JavaScript. Ingen av dem behöver ett konto eller en server – som resten av Scissor körs de på din egen maskin.

Åtgärder: spela in en gång, spela upp var som helst

Åtgärder-panelen (Fönster › Åtgärder) spelar in vad du gör och spelar upp det på en ny markering. Tryck Spela in, kör de kommandon du vill fånga – justera, förskjuta, lägga till en skugga, vad sekvensen än är – och tryck sedan Stopp och ge åtgärden ett namn. Den går med i listan, och visar hur många steg den håller.

Klicka på en åtgärd för att spela upp den på vad som är markerat just nu; ⌥-klicka på en för att ta bort den. Eftersom en åtgärd bara är en lista av kommandon upprepar den en exakt rutin över många objekt utan att du klickar igenom den varje gång.

Variabler: en design, många versioner

Variabler-panelen (Fönster › Variabler) förvandlar en fast design till en mall driven av data. Två saker på ett objekt kan göras dynamiska:

Gör text dynamisk
Binder ett textobjekts ord till en variabel, så att olika datamängder kan sätta olika text på samma plats.
Gör synlighet dynamisk
Binder om ett objekt visas, så att en uppsättning kan slå delar av designen på eller av.

Avbind gör ett bundet objekt fast igen.

Datamängder

En datamängd är en rad av värden för de variablerna – en namnbricka, ett kort, en ram. Fånga sparar de aktuella värdena som en ny mängd; pilarna stegar från en mängd till nästa och designen uppdateras för att matcha. Importera CSV… läser en hel omgång på en gång – en kolumn per variabel, en rad per mängd – och Exportera CSV skriver mängderna tillbaka ut för att redigera i ett kalkylblad.

Exportera varje mängd på en gång

Exportera datamängder… renderar den aktiva artboarden en gång för varje datamängd och skriver dem alla på ett svep, som PNG, JPEG, WebP eller SVG. Ett ark med namnbrickor, en uppsättning lokaliserade banderoller eller en rad sociala kort kommer ut som en städad omgång filer, var och en med sin egen data ifylld.

Skript: driva Scissor från JavaScript

För allt en meny inte kan uttrycka kan ett skript. Arkiv › Skript › Skriptkonsol… öppnar en redigerare där du skriver JavaScript och kör det mot det öppna dokumentet; Annat skript… (⌘F12) kör en .js-fil från disk. Ett skript körs i en Web Worker, bort från sidan, så att det inte kan röra gränssnittet eller dina filer utom genom scissor-objektet det ges – varje anrop utförs på motorn och besvaras tillbaka.

scissor-objektet täcker det gemensamma mark:

Gör former och text
scissor.rect, roundedRect, ellipse, polygon, star, path och text ritar konstverk; var och en tar en position och storlek och ett alternativobjekt för fill, stroke och strokeWidth (färger är valfri CSS-färg).
Läs dokumentet
await scissor.document() returnerar appen, markeringen, lager och artboards som panelerna ser dem; scissor.selection() returnerar bara vad som är markerat.
Verka på det
scissor.select, group och undo, och scissor.run(command) för valfri motor-kommando alls – samma kommandon som menyerna skickar.
Tala tillbaka
scissor.log skriver till konsolen; scissor.alert visar ett meddelande.

Ett kort exempel – en ring av färgade prickar och en bildtext:

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 });

Skriptkonsolen håller den sista kod du körde, så att ett fungerande skript finns där när du återvänder till det.