Disegno
Gli strumenti dell'editor come comandi: gli strumenti dell'interfaccia eseguono esattamente questi. Colore, pennello e opzioni dello strumento che ometti vengono dal contesto di modifica. Il disegno ignora la selezione e la simmetria a meno che tu non passi respectSelection = true e symmetry = app.getContext().symmetry. (24 funzioni)
app.blur(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Sfoca i pixel sotto il pennello lungo i punti, esattamente come lo strumento Sfocatura dell'interfaccia.
layerId(string)frameId(string)points(table) — Lista di punti { x = n, y = n } (o { n, n }); gli spazi tra punti consecutivi vengono interpolati come in un vero trascinamento.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni del pennello (vedi "Gruppi di opzioni"), e inoltre:strength(integer 0–8; predefinito context.blurStrength) — Raggio della sfocatura in pixel.
Non restituisce nulla.
app.dodgeBurn(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Schiarisce (dodge) o scurisce (burn) i pixel sotto il pennello lungo i punti, nella luminosità OKLCH, esattamente come lo strumento Scherma/Brucia dell'interfaccia. Tonalità e chroma vengono mantenute a meno che sia impostato hueShift. Ogni pixel cambia una sola volta per chiamata; i pixel trasparenti restano intatti.
layerId(string)frameId(string)points(table) — Lista di punti { x = n, y = n } (o { n, n }); gli spazi tra punti consecutivi vengono interpolati come in un vero trascinamento.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni del pennello (vedi "Gruppi di opzioni"), e inoltre:strength(integer 1–100; predefinito context.dodgeBurnStrength) — Di quanto si sposta la luminosità OKLCH di ogni pixel toccato: 100 = metà del percorso da nero a bianco, 25 = 0.125.hueShift(integer 0–60; predefinito context.dodgeBurnHueShift) — Gradi di cui la tonalità OKLCH di ogni pixel toccato ruota verso il giallo caldo (dodge) o il blu freddo (burn), senza mai superarlo, con la chroma ridotta (dodge) o accentuata (burn) dello 0.5% per grado. 0 mantiene tonalità e chroma.burn(boolean; predefinito false) — Scurisce (burn) invece di schiarire (dodge).
Non restituisce nulla.
app.drawContour(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Riempie il tracciato chiuso passante per i punti, compresi i pixel del tracciato (il contorno di Aseprite), esattamente come lo strumento Contorno dell'interfaccia.
layerId(string)frameId(string)points(table) — Il tracciato a mano libera come lista di punti { x = n, y = n }; viene chiuso e riempito automaticamente.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.
Non restituisce nulla.
app.drawCurve(layerId, frameId, anchors, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un tracciato di curve di Bézier cubiche passanti per gli ancoraggi, esattamente come lo strumento Curva dell'interfaccia. Passa closed = true per una forma chiusa (e fill = "filled" per riempirla).
layerId(string)frameId(string)anchors(table) — Gli ancoraggi del tracciato in ordine: { x = n, y = n } (o { n, n }), ciascuno facoltativamente con maniglie di Bézier inX/inY (il punto di controllo del segmento in arrivo) e outX/outY (di quello in partenza). Un ancoraggio senza maniglie è uno spigolo vivo; due di fila sono uniti da una linea retta.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.closed(boolean; predefinito false) — Collega l'ultimo ancoraggio al primo.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Tracciati chiusi: disegna il contorno, oppure riempi anche l'interno.width(integer 1–64; predefinito context.lineWidth) — Spessore del tratto in pixel (1 = una curva netta di 1px); i tratti più larghi hanno le estremità arrotondate.pixelPerfect(boolean; predefinito context.curvePixelPerfect) — Rimuove gli angoli a L che una curva di 1px raccoglie, per linee pixel art pulite (ignorato per i tratti più larghi).
Non restituisce nulla.
app.drawEllipse(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un'ellisse inscritta nel riquadro delimitato dai due angoli, esattamente come lo strumento Ellisse dell'interfaccia.
layerId(string)frameId(string)x0(number) — Primo angolo.y0(number)x1(number) — Angolo opposto (incluso).y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Solo contorno, oppure riempita.
Non restituisce nulla.
app.drawGradient(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Riempie la regione che il secchiello riempirebbe da (x0, y0), cioè l'area connessa del suo colore (o ogni pixel corrispondente quando non è contigua), dentro la selezione, con un gradiente da startColor in (x0, y0) a endColor in (x1, y1), oppure lungo stops, esattamente come lo strumento Gradiente dell'interfaccia. Con la simmetria le regioni specchiate ricevono lo stesso gradiente. Un trascinamento di lunghezza zero, o una partenza fuori dalla tela o dalla selezione, non fa nulla.
layerId(string)frameId(string)x0(number) — Inizio del gradiente (dove si trova startColor).y0(number)x1(number) — Fine del gradiente (dove si trova endColor).y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:startColor(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore nel primo punto.endColor(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.backgroundColor) — Il colore nel secondo punto.stops({ color, color, ... } or { { color = c, position = 0-1 }, ... }; predefinito When gradientColors is "stops" and neither startColor nor endColor is given, the gradientStops list.) — Una rampa a più punti di 2-32 colori dal primo punto al secondo, al posto di startColor ed endColor. I colori semplici sono distribuiti in modo uniforme; le posizioni vanno da 0 a 1 in ordine, e due punti nella stessa posizione creano un bordo netto.gradientType(GradientType: "linear" | "radial"; predefinito context.gradientType) — Una rampa dritta tra i punti, oppure che si irradia dal primo.dithering(GradientDithering: "none" | "bayer2" | "bayer4" | "bayer8" | "dots" | "lines-h" | "lines-v" | "diagonal" | "noise"; predefinito context.gradientDithering) — Dithering ordinato applicato alla rampa (none = continuo).snap(GradientSnap: "free" | "palette"; predefinito context.gradientSnap) — Miscele libere, oppure solo colori della palette (il dithering passa allora tra colori vicini della palette).contiguous(boolean; predefinito context.bucketFillMode (true per la modalità contigua del contesto, false per globale)) — Solo la regione connessa (true), oppure ogni pixel corrispondente sulla tela (false).tolerance(integer 0–255; predefinito context.bucketTolerance) — La differenza di colore per canale più grande che conta ancora come corrispondenza.diagonal(boolean; predefinito context.bucketDiagonal) — Solo contiguo: si estende anche ai vicini in diagonale (8-connesso), quindi la regione filtra attraverso le linee diagonali di 1px.stopAtGrid(boolean; predefinito context.bucketStopAtGrid) — Limita la regione alla cella della griglia in cui cade il clic (la cella di una griglia isometrica è il rombo che disegna, con i pixel di linea dei suoi due bordi superiori).closeGap(integer 0–5; predefinito context.bucketCloseGap) — Riempimenti contigui: considera chiusi gli spazi nel contorno larghi fino a questo numero di pixel, così il riempimento si ferma lì invece di fuoriuscire. 0 = disattivato.
Non restituisce nulla.
app.drawHexagon(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un esagono con il lato piatto in alto che riempie il riquadro delimitato dai due angoli, esattamente come lo strumento Esagono dell'interfaccia.
layerId(string)frameId(string)x0(number) — Primo angolo.y0(number)x1(number) — Angolo opposto (incluso).y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Solo contorno, oppure riempito.
Non restituisce nulla.
app.drawIsoShape(layerId, frameId, x, y, width?, depth?, height?, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un solido isometrico (cubo, rampa, scala, piramide, prisma, cilindro, cono, sfera o cupola) in proiezione pixel art, esattamente come lo strumento Forma isometrica dell'interfaccia. I bordi sono scalini puliti (2 px in orizzontale per 1 px in verticale a 2:1), le facce sono riempite con i colori superiore / sinistro / destro, gli spigoli interni le separano e la sagoma ha un contorno. L'angolo posteriore dell'impronta sta in (x, y); x scende verso destra e y scende verso sinistra sullo schermo, e height alza la cima. I solidi rotondi (cilindro, cono, sfera, cupola) prendono width come diametro e ignorano depth; la sfera ignora anche height.
layerId(string)frameId(string)x(number) — Ancoraggio: il pixel più a sinistra della calotta nell'angolo posteriore (superiore) dell'impronta, a terra.y(number)width(number, facoltativo) — Impronta lungo x (verso destra e in basso), in unità iso: ogni unità è una riga della scalinata del bordo 2:1. nil = isoWidth del contesto.depth(number, facoltativo) — Impronta lungo y (verso sinistra e in basso), in unità iso. nil = isoDepth del contesto.height(number, facoltativo) — Altezza in pixel (0 = un rombo piatto). nil = isoHeight del contesto.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di base: la faccia superiore con l'ombreggiatura automatica.shape(IsoShape: "box" | "ramp" | "stairs" | "pyramid" | "prism" | "cylinder" | "cone" | "sphere" | "dome"; predefinito context.isoShape) — Quale solido disegnare.cap(integer 2–4; predefinito context.isoCap) — Il tratto piatto di pixel ai vertici superiore e inferiore: 2 (larghezze pari), 3 (dispari) o 4 (multipli di quattro). Rapporti sopra 2 hanno una calotta naturale più larga.bevel(integer 0–1024; predefinito context.isoBevel) — Solo cubo: smussa i quattro bordi superiori di questo numero di pixel, una pendenza a 45 gradi tra la faccia superiore e i lati (0 = bordi netti). Limitato all'altezza e alla metà dell'impronta.style(IsoShapeStyle: "filled" | "outline" | "filled-outline"; predefinito context.isoStyle) — Facce, contorno, o entrambi.hiddenEdges(boolean; predefinito context.isoHiddenEdges) — Disegna anche i bordi dietro il solido, nel colore degli spigoli interni (un wireframe trasparente con style outline).direction(IsoDirection: "+x" | "-x" | "+y" | "-y"; predefinito context.isoDirection) — Rampa e scala: il verso in cui scendono. Prisma: il verso in cui è rivolta una falda (+x e -x danno lo stesso tetto). Ignorato dalle altre forme.ratio(integer 1–8; predefinito the sprite's isometric grid ratio (run / rise, rounded), else 2) — Pixel in orizzontale per ogni pixel in verticale lungo gli assi iso.colors({ outline =, innerEdge =, top =, left =, right = } colors; predefinito auto-shaded from color, or the context's isoColors when isoAutoShade is off) — Tutti e cinque i colori insieme (left è la faccia verso +y, in basso a sinistra; right quella verso +x). Sostituisce l'ombreggiatura automatica.autoShade(boolean; predefinito context.isoAutoShade) — Ricava i colori dacolor: superiore = color, i lati uno e due passi più scuri lungoramp(o calcolati), gli spigoli interni ancora più scuri, il contorno il più scuro. false usa isoColors del contesto. Ignorato quando è dato colors.ramp(a list of colors ("#rrggbb[aa]" or { r, g, b, a }); predefinito context.shades) — La rampa lungo cui avanza l'ombreggiatura automatica quando contienecolor(l'estremo più scuro si trova dalla luminosità). Altrimenti le tonalità vengono calcolate e agganciate alla palette in uno sprite indicizzato.
Non restituisce nulla.
app.drawLine(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna una linea retta tra i due punti, esattamente come lo strumento Linea dell'interfaccia (width la ispessisce con estremità arrotondate).
layerId(string)frameId(string)x0(number)y0(number)x1(number)y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.width(integer 1–64; predefinito context.lineWidth) — Spessore della linea in pixel (1 = una linea netta di 1px); le linee più larghe hanno le estremità arrotondate.
Non restituisce nulla.
app.drawPolygon(layerId, frameId, vertices, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un poligono chiuso passante per i vertici, esattamente come lo strumento Poligono dell'interfaccia.
layerId(string)frameId(string)vertices(table) — Lista di vertici { x = n, y = n } (o { n, n }), almeno 2; il poligono si chiude automaticamente sul primo.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Solo contorno, oppure riempito.
Non restituisce nulla.
app.drawRectangle(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un rettangolo allineato agli assi delimitato dai due angoli, esattamente come lo strumento Rettangolo dell'interfaccia (radius arrotonda gli angoli, tutti insieme o uno per uno). Ignora la selezione a meno che respectSelection = true.
layerId(string)frameId(string)x0(number) — Primo angolo.y0(number)x1(number) — Angolo opposto (incluso).y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Solo contorno, oppure riempito.radius(an integer 0–1024 for every corner, or a list of four { topLeft, topRight, bottomRight, bottomLeft }; predefinito context.cornerRadius) — Arrotonda gli angoli, in pixel (0 = squadrati): un raggio per tutti e quattro, oppure uno per angolo in senso orario a partire da in alto a sinistra. Ciascuno è limitato alla metà del lato più corto.
Non restituisce nulla.
app.drawStar(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna una stella a 5 punte (con una punta in alto) le cui punte esterne toccano ogni lato del riquadro delimitato dai due angoli, esattamente come lo strumento Stella dell'interfaccia.
layerId(string)frameId(string)x0(number) — Primo angolo.y0(number)x1(number) — Angolo opposto (incluso).y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Solo contorno, oppure riempita.
Non restituisce nulla.
app.drawStroke(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Tratto di pennello a mano libera passante per i punti, esattamente come la matita dell'interfaccia (o, con erase = true, la gomma; con dither, il pennello dithering).
layerId(string)frameId(string)points(table) — Lista di punti { x = n, y = n } (o { n, n }); gli spazi tra punti consecutivi vengono interpolati come in un vero trascinamento.opts(table, facoltativo) Accetta anche Opzioni di pittura, Opzioni del pennello e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.erase(boolean; predefinito false) — Cancella rendendo trasparente invece di dipingere (la gomma);colorviene ignorato.pixelPerfect(boolean; predefinito context.pixelPerfect) — Rimuove i gradini d'angolo doppi dal tracciato del tratto (con qualsiasi dimensione di pennello).matchColor(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito nil (every pixel)) — Dipinge (o cancella) solo i pixel esattamente di questo colore; gli altri restano intatti. Con color = il colore di sfondo e matchColor = il colore di primo piano è la gomma con il tasto destro di Aseprite.dither({ pattern = "bayer2" | "bayer4" | "bayer8" | "dots" | "lines-h" | "lines-v" | "diagonal" | "noise", density = 0-100 }; predefinito nil (every pixel)) — Dipinge (o cancella) solo i pixel di un motivo ordinato a una densità in percentuale, lasciando intatto il resto: il pennello dithering (50 con bayer2 è una scacchiera). Il motivo si ripete a partire dall'angolo in alto a sinistra dello sprite, così i tratti sovrapposti restano allineati.dynamics({ stabilizer = 0-64, pressure = { size, angle, gradient (booleans), min, max (0-100) }, velocity = { same }, minSize, minAngle, maxAngle, dither, curve = 25-400 }; predefinito built from the context's stabilizer, pressure*/velocity* and dynamics* fields; pass {} for a plain stroke) — Dinamiche del pennello: uno stabilizzatore (media mobile dei punti) e sensori di pressione / velocità che governano la dimensione del timbro (da minSize fino alla dimensione del pennello), l'angolo (da minAngle a maxAngle) e un gradiente di colore da color a endColor (dither = true sceglie l'uno o l'altro per pixel; gli sprite indicizzati si agganciano al colore di palette più vicino). min/max sono l'intervallo del sensore in percentuale (min > max inverte); curve è la sensibilità in percentuale (100 = lineare). Con pixelPerfect e una dimensione variabile, i gomiti vengono comunque rimossi lungo il tracciato centrale. I pennelli personalizzati ricevono solo stabilizzatore e gradiente.pressures(list of numbers 0-1, one per point; predefinito 1 (full pressure) for every point) — Pressione della penna per punto, letta dal sensore di pressione. Un mouse non ne ha, quindi conta come piena.velocities(list of numbers >= 0, one per point; predefinito 0 for every point) — Velocità del puntatore per punto in pixel dello sprite per millisecondo (0.5 = il massimo del sensore), letta dal sensore di velocità.endColor(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.backgroundColor) — Il colore finale del gradiente quando un sensore governa il gradiente;colorè quello iniziale.
Non restituisce nulla.
app.drawTriangle(layerId, frameId, x0, y0, x1, y1, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Disegna un triangolo isoscele (vertice in alto al centro, base lungo il fondo) che riempie il riquadro delimitato dai due angoli, esattamente come lo strumento Triangolo dell'interfaccia.
layerId(string)frameId(string)x0(number) — Primo angolo.y0(number)x1(number) — Angolo opposto (incluso).y1(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.fill(FillMode: "outline" | "filled"; predefinito context.shapeFillMode) — Solo contorno, oppure riempito.
Non restituisce nulla.
app.floodFill(layerId, frameId, x, y, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Riempimento con il secchiello a partire da (x, y), esattamente come lo strumento Secchiello dell'interfaccia.
layerId(string)frameId(string)x(number)y(number)opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.contiguous(boolean; predefinito context.bucketFillMode (true per la modalità contigua del contesto, false per globale)) — Solo la regione connessa (true), oppure ogni pixel corrispondente sulla tela (false).tolerance(integer 0–255; predefinito context.bucketTolerance) — La differenza di colore per canale più grande che conta ancora come corrispondenza.diagonal(boolean; predefinito context.bucketDiagonal) — Solo contiguo: si estende anche ai vicini in diagonale (8-connesso), quindi la regione filtra attraverso le linee diagonali di 1px.stopAtGrid(boolean; predefinito context.bucketStopAtGrid) — Limita la regione alla cella della griglia in cui cade il clic (la cella di una griglia isometrica è il rombo che disegna, con i pixel di linea dei suoi due bordi superiori).closeGap(integer 0–5; predefinito context.bucketCloseGap) — Riempimenti contigui: considera chiusi gli spazi nel contorno larghi fino a questo numero di pixel, così il riempimento si ferma lì invece di fuoriuscire. 0 = disattivato.pattern(FillPattern: "solid" | "checker" | "dither25" | "dither75" | "hstripes" | "vstripes" | "diagonal" | "grid" | "dots" | "bricks"; predefinito context.bucketPattern) — Riempie con un motivo ripetuto dicolorepatternColor, ripetuto a partire dall'angolo in alto a sinistra della tela. "solid" = solocolor.patternColor(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.backgroundColor) — Il secondo colore del motivo (ignorato quandopatternè "solid").
Non restituisce nulla.
app.isoProject(layerId, frameId, projection, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Proietta i pixel selezionati (il riquadro li segue), o l'intero cel quando non c'è nulla di selezionato, su una faccia di un cubo isometrico: "left" e "right" inclinano le colonne lungo la pendenza, "floor" trasforma la regione nella faccia superiore (un quadrato diventa un rombo). Preciso al pixel: ogni bordo risulta una scalinata pulita (2 in orizzontale per 1 in verticale a 2:1) e nessun colore viene miscelato. Il contenuto che finisce fuori dalla tela e dai limiti del cel viene tagliato (il livello Sfondo viene tagliato sulla tela).
layerId(string)frameId(string)projection(IsoProjection: "left" | "right" | "floor")opts(table, facoltativo)run(integer 1–16; predefinito The sprite's isometric grid ratio, or 2 (2:1) when the grid is rectangular.) — Pixel in orizzontale per ognirisepixel in verticale (la pendenza, ai minimi termini). Indica anche rise.rise(integer 1–16; predefinito The sprite's isometric grid ratio, or 1 (2:1) when the grid is rectangular.) — Pixel in verticale per ognirunpixel in orizzontale. Indica anche run.
Non restituisce nulla.
app.jumble(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Sbavatura casuale: mescola i pixel sotto il pennello con vicini casuali lungo i punti, esattamente come lo strumento Mescola dell'interfaccia.
layerId(string)frameId(string)points(table) — Lista di punti { x = n, y = n } (o { n, n }); gli spazi tra punti consecutivi vengono interpolati come in un vero trascinamento.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni del pennello (vedi "Gruppi di opzioni"), e inoltre:strength(integer 0–100; predefinito context.jumbleStrength) — Probabilità in percentuale che ogni pixel toccato venga mescolato. Un pennello di 1px non ha vicini con cui mescolarsi, quindi usa brushSize 2 o più.seed(integer 0–4294967295; predefinito random) — Seed casuale: lo stesso seed e gli stessi punti danno lo stesso risultato.
Non restituisce nulla.
app.movePixels(layerId, frameId, dx, dy) — modifica, annullabile, rifiutata su un livello bloccato
Sposta i pixel selezionati (secondo la selezione attuale; il riquadro li segue), o l'intero cel quando non c'è nulla di selezionato, di (dx, dy). Esattamente come lo strumento Sposta dell'interfaccia. Senza selezione l'intero cel si sposta e conserva tutto, anche oltre il bordo della tela; i pixel della selezione spostati vengono mantenuti entro la tela e i limiti del cel, e tagliati oltre. Il livello Sfondo viene tagliato sulla tela.
layerId(string)frameId(string)dx(number) — Pixel di cui spostare a destra (negativo = a sinistra).dy(number) — Pixel di cui spostare in basso (negativo = in alto).
Non restituisce nulla.
app.outline(layerId, frameIds, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Filtro > Contorno, come in Aseprite: disegna un contorno intorno (o appena dentro) alle forme sui cel di un livello, come un unico passo di annullamento. Un pixel fa parte di una forma a meno che sia trasparente (o corrisponda a bgColor). I contorni esterni ingrandiscono il cel, ritagliato sulla tela. Solo livelli immagine.
layerId(string)frameIds(table) — Array di id di fotogramma i cui cel su questo livello vengono contornati (un fotogramma per il cel attivo, tutti i fotogrammi per contornarli tutti).opts(table, facoltativo)cels(Array of { layerId = ..., frameId = ... }) — Contorna questi cel, tra livelli e fotogrammi, invece di layerId/frameIds (passa nil per entrambi).color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore del contorno. In uno sprite indicizzato si aggancia alla voce di palette più vicina a meno che sia dato colorIndex.colorIndex(integer 0–255; predefinito Taken from color.) — Sprite indicizzati: l'indice di palette da dipingere, usato così com'è. Non l'indice trasparente.place(OutlinePlace: "outside" | "inside"; predefinito "outside") — Contorno fuori dalla forma (che si ingrandisce) o dentro di essa (i suoi pixel di bordo vengono ridipinti).shape(OutlineShape: "circle" | "square"; predefinito "circle") — Preset per la matrice dei vicini. Ignorato quando è data matrix.matrix(9 booleans, row-major 3x3 (top-left first): which neighbors count as touching. The center entry is ignored.) — Una matrice dei vicini personalizzata, come la griglia di interruttori 3x3 di Aseprite.bgColor(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito Only transparent pixels are background.) — Un colore opaco che conta come sfondo, oltre ai pixel completamente trasparenti.bgIndex(integer 0–255) — Sprite indicizzati: un indice di palette che conta come sfondo.respectSelection(boolean; predefinito false) — Passa true per contornare solo all'interno della selezione attuale. Per impostazione predefinita la selezione viene ignorata.
Non restituisce nulla.
app.pastePixels(layerId, frameId, image, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Incolla un'immagine nel cel di un livello/fotogramma come l'incolla flottante dell'interfaccia: i pixel trasparenti lasciano intatto il cel, quelli parzialmente trasparenti si miscelano sopra di esso, e i pixel incollati diventano la selezione. La trasformazione facoltativa la distorce (corners), poi scala, ruota e/o inclina l'immagine intorno al suo centro (a meno che siano dati pivotX/pivotY), poi la sposta di dx/dy. Richiede un livello immagine modificabile (non bloccato); un blocco del movimento non si applica. Ciò che finisce fuori dalla tela e dai limiti del cel viene tagliato (il livello Sfondo viene tagliato sulla tela).
layerId(string)frameId(string)image(table) — { x, y, width, height, pixels }: pixels è una lista di width*height colori ("#rrggbb[aa]" o { r, g, b, a }), riga per riga; x, y è dove cade l'angolo in alto a sinistra.opts(table, facoltativo)scaleX(number -256–256; predefinito 1) — Scala orizzontale intorno al perno; un valore negativo capovolge. Non 0.scaleY(number -256–256; predefinito 1) — Scala verticale intorno al perno; un valore negativo capovolge. Non 0.rotation(number; predefinito 0) — Gradi in senso orario intorno al perno.skewX(number -80–80; predefinito 0) — Gradi di taglio orizzontale (la parte superiore si inclina da un lato, quella inferiore dall'altro, intorno al perno).skewY(number -80–80; predefinito 0) — Gradi di taglio verticale.dx(number; predefinito 0) — Pixel di cui spostare a destra dopo la trasformazione.dy(number; predefinito 0) — Pixel di cui spostare in basso dopo la trasformazione.pivotX(number; predefinito The center of the selection (or of the cel when nothing is selected).) — X del punto fisso per rotazione/scala/inclinazione, in pixel della tela.pivotY(number; predefinito The center of the selection (or of the cel when nothing is selected).) — Y del punto fisso per rotazione/scala/inclinazione, in pixel della tela.interpolation(TransformInterpolation: "nearest" | "rotsprite" | "bilinear"; predefinito "nearest") — Come vengono ricampionati i pixel. Usa rotsprite per rotazioni pulite della pixel art, bilinear per risultati morbidi (miscelati).corners({ {x=,y=}, {x=,y=}, {x=,y=}, {x=,y=} }; predefinito The region's own corners (no distortion).) — Distorsione libera / prospettiva: dove cadono gli angoli in alto a sinistra, in alto a destra, in basso a destra e in basso a sinistra della regione, in pixel della tela (frazioni ammesse), prima di scala/inclinazione/rotazione/spostamento sopra. Deve formare una forma convessa. Avvicinare i due angoli superiori più di quelli inferiori dà una prospettiva da pavimento.
Non restituisce nulla.
app.scatter(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Pennello Dispersione: timbra il pennello lungo i punti, un passo per ogni larghezza del pennello, ogni timbro spostato da uno scostamento casuale, esattamente come lo strumento Dispersione dell'interfaccia.
layerId(string)frameId(string)points(table) — Lista di punti { x = n, y = n } (o { n, n }); gli spazi tra punti consecutivi vengono interpolati come in un vero trascinamento.opts(table, facoltativo) Accetta anche Opzioni di pittura, Opzioni del pennello e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.offsetX(integer 0–64; predefinito context.scatterX) — Di quanto ogni timbro può cadere a sinistra o a destra del tracciato, in pixel.offsetY(integer 0–64; predefinito context.scatterY) — Di quanto ogni timbro può cadere sopra o sotto il tracciato, in pixel.count(integer 1–16; predefinito context.scatterCount) — Timbri posizionati a ogni passo lungo il tracciato.seed(integer 0–4294967295; predefinito random) — Seed casuale: lo stesso seed e gli stessi punti danno lo stesso risultato.
Non restituisce nulla.
app.spray(layerId, frameId, points, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Aerografo: sparge punti casuali intorno a ogni punto, esattamente come lo strumento Spray dell'interfaccia. Ogni punto è un tick, quindi ripeti un punto per continuare a spruzzare sul posto.
layerId(string)frameId(string)points(table) — Lista di punti { x = n, y = n } (o { n, n }); gli spazi tra punti consecutivi vengono interpolati come in un vero trascinamento.opts(table, facoltativo) Accetta anche Opzioni di pittura e Opzioni dell'inchiostro (vedi "Gruppi di opzioni"), e inoltre:color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore di pittura.radius(integer 1–128; predefinito twice the context's brushSize, at least 2) — A che distanza da ogni punto si spargono i puntini, in pixel.rate(integer 1–64; predefinito context.sprayRate) — Puntini sparsi per punto.seed(integer 0–4294967295; predefinito random) — Seed casuale: lo stesso seed e gli stessi punti danno lo stesso risultato.
Non restituisce nulla.
app.strokeSelection(layerId, frameId, width, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Modifica > Contorno della selezione: dipinge una linea dello spessore indicato lungo il bordo della selezione attuale (dentro, centrata o fuori) su un cel, come un unico passo di annullamento. Non fa nulla quando non c'è nulla di selezionato. Solo livelli immagine.
layerId(string)frameId(string)width(number) — Pixel, da 1 a 256.opts(table, facoltativo)position(StrokePosition: "inside" | "center" | "outside"; predefinito "center") — Dove si trova il tratto rispetto al bordo della selezione.color(color ("#rgb", "#rrggbb[aa]" or { r, g, b, a }); predefinito context.foregroundColor) — Il colore del tratto. In uno sprite indicizzato si aggancia alla voce di palette più vicina a meno che sia dato colorIndex.colorIndex(integer 0–255; predefinito Taken from color.) — Sprite indicizzati: l'indice di palette da dipingere, usato così com'è. Non l'indice trasparente.shape(SelectionModifyShape: "circle" | "square"; predefinito "circle") — Come si misura la distanza dal bordo (angoli arrotondati o squadrati).
Non restituisce nulla.
app.transformPixels(layerId, frameId, opts?) — modifica, annullabile, rifiutata su un livello bloccato
Scala, ruota, inclina e/o distorce (prospettiva, tramite corners) i pixel selezionati (il riquadro li segue), o l'intero cel quando non c'è nulla di selezionato, intorno a un perno, esattamente come le maniglie di trasformazione dello strumento Sposta dell'interfaccia. Ordine: scala, inclinazione, rotazione, poi spostamento di dx/dy. In uno sprite con pixel non quadrati (Sprite.pixelRatio) gli angoli e le scale sono quelli che vedi sullo schermo, quindi una rotazione di 90 gradi appare come tale. Senza selezione l'intero cel conserva ciò che cade entro il riquadro della tela e dei limiti del cel, sia dove si trova sia spostato di dx/dy (quindi un semplice spostamento non perde nulla, anche oltre il bordo della tela); i pixel della selezione trasformati vengono mantenuti entro la tela e i limiti del cel e tagliati oltre. Il livello Sfondo viene tagliato sulla tela. Una trasformazione nulla non cambia nulla.
layerId(string)frameId(string)opts(table, facoltativo)scaleX(number -256–256; predefinito 1) — Scala orizzontale intorno al perno; un valore negativo capovolge. Non 0.scaleY(number -256–256; predefinito 1) — Scala verticale intorno al perno; un valore negativo capovolge. Non 0.rotation(number; predefinito 0) — Gradi in senso orario intorno al perno.skewX(number -80–80; predefinito 0) — Gradi di taglio orizzontale (la parte superiore si inclina da un lato, quella inferiore dall'altro, intorno al perno).skewY(number -80–80; predefinito 0) — Gradi di taglio verticale.dx(number; predefinito 0) — Pixel di cui spostare a destra dopo la trasformazione.dy(number; predefinito 0) — Pixel di cui spostare in basso dopo la trasformazione.pivotX(number; predefinito The center of the selection (or of the cel when nothing is selected).) — X del punto fisso per rotazione/scala/inclinazione, in pixel della tela.pivotY(number; predefinito The center of the selection (or of the cel when nothing is selected).) — Y del punto fisso per rotazione/scala/inclinazione, in pixel della tela.interpolation(TransformInterpolation: "nearest" | "rotsprite" | "bilinear"; predefinito "nearest") — Come vengono ricampionati i pixel. Usa rotsprite per rotazioni pulite della pixel art, bilinear per risultati morbidi (miscelati).corners({ {x=,y=}, {x=,y=}, {x=,y=}, {x=,y=} }; predefinito The region's own corners (no distortion).) — Distorsione libera / prospettiva: dove cadono gli angoli in alto a sinistra, in alto a destra, in basso a destra e in basso a sinistra della regione, in pixel della tela (frazioni ammesse), prima di scala/inclinazione/rotazione/spostamento sopra. Deve formare una forma convessa. Avvicinare i due angoli superiori più di quelli inferiori dà una prospettiva da pavimento.
Non restituisce nulla.
In Markdown: drawing.md.