Rearrange Artboard

Rearrange Artboard | PSD-Tutorials.de

Erstellt von KapitaenNet, 03.02.2017.

  1. KapitaenNet

    KapitaenNet Icon Designer

    Dabei seit:
    20.02.2007
    Beiträge:
    134
    Geschlecht:
    männlich
    Ort:
    Lampertheim
    Software:
    Illustrator CS6, CC, Flash CC, After Effects CC, PS CC
    Rearrange Artboard
    Hallo,

    ich habe ein kleines Javascript geschrieben, um Artboards zu erstellen.

    var doc = activeDocument;
    var posx=doc.artboards.length * 256 + 10;
    var btn=doc.artboards.length * 256 + 10 + 256;
    doc.artboards.add([posx, 456, btn, 200]);

    Die Artboards sollen dann als Grid ausgerichtet werden.
    Wenn ich jedoch Parameter angebe, erhalte ich die Fehlermeldung, dass rearrangeArtboards keine Funktion ist
    Ohne Parameterangabe erhalte ich keine Fehlermeldung, es passiert aber auch nichts, obwohl es für jeden Parameter einen Defaultwert gibt.
    Mit Google und Co finde ich leider auch kein Musterbeispiel.

    //doc.rearrangeArtboards([DocumentArtboardLayout.GridByRow , 2 , 20 , true]);

    Gruß

    Jürgen
     
    #1      
  2. TutKit

    TutKit Vollzugriff

    Vollzugriff auf sämtliche Inhalte für Photoshop, InDesign, Affinity, 3D, Video & Office

    Suchst du einen effektiven Weg, um deine Geschäftsideen aber auch persönlichen Kenntnisse zu fördern? Teste unsere Lösung mit Vollzugriff auf Tutorials und Vorlagen/Erweiterungen, die dich schneller zum Ziel bringen. Klicke jetzt hier und teste uns kostenlos!

  3. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    458
    Software:
    irgendetwas mit CS
    Rearrange Artboard
    Hallo KapitaenNet, ich kann leider nicht wirklich Scripte schreiben. Aber du verwendest ein Array für die Argumente in den runden Klammern. Das kann so nicht stimmen.
    So steht es im Adobe Objektmodellviewer:
    Document.rearrangeArtboards (artboardLayout: DocumentArtboardLayout , artboardRowsOrCols: Int32 , artboardSpacing: number , artboardMoveArtwork: Boolean )

    Ich würde die eckigen Klammern weglassen.
    doc.rearrangeArtboards(DocumentArtboardLayout.GridByRow , 2 , 20 , true);
     
    #2      
  4. KapitaenNet

    KapitaenNet Icon Designer

    Dabei seit:
    20.02.2007
    Beiträge:
    134
    Geschlecht:
    männlich
    Ort:
    Lampertheim
    Software:
    Illustrator CS6, CC, Flash CC, After Effects CC, PS CC
    Rearrange Artboard
    Hallo mm100,
    die Variante ohne eckige Klammern habe ich als erstes ohne Erfolg verwendet.
    Die aktuelle auskommentierte Variante mit eckigen Klammern war nur eine Verzweiflungstat. :)

    Ich habe nun festgestellt, dass es zur Not auch ohne ReArrange geht.
    Wenn man Zeichenflächen manuell mit dem Button "Neue Zeichenfläche" hinzufügt, werden diese nur innerhalb des Arbeitsbereiches hinzugefügt. Jede neue Zeichenfläche wird rechts angefügt und am Ende des Arbeitsbereiches angekommen erhält man eine Fehlermeldung.
    Mit dem Script werden neue Zeichenflächen aber auch außerhalb des Arbeitsbereiches erstellt.
    Das Script wird innerhalb einer Aktion ausgeführt. Am Ende der Aktion kann ich die Zeichenflächen dann manuell ausrichten.

    Gruß
    Jürgen
     
    #3      
  5. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    458
    Software:
    irgendetwas mit CS
    Rearrange Artboard
    Ich habe deine Code
    Code (Text):
    1. var doc = activeDocument;
    2. var posx=doc.artboards.length * 256 + 10;
    3. var btn=doc.artboards.length * 256 + 10 + 256;
    4. doc.artboards.add([posx, 456, btn, 200]);
    5.  
    6. doc.rearrangeArtboards(DocumentArtboardLayout.GridByRow , 3 , 20 , true);
    genommen und die eckigen Klammern entfernt. Ich hab nur aus 2 Reihen 3 reihen gemacht. Dann den Code 8 mal gestartet.
    Und hier das Ergebnis:
    [​IMG]

    nach 15 Starts sieht das so aus:
    [​IMG]

    Willst du was anderes?
     
    #4      
  6. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    458
    Software:
    irgendetwas mit CS
    Rearrange Artboard
    Macht iwie richtig Laune.
     
    #5      
  7. KapitaenNet

    KapitaenNet Icon Designer

    Dabei seit:
    20.02.2007
    Beiträge:
    134
    Geschlecht:
    männlich
    Ort:
    Lampertheim
    Software:
    Illustrator CS6, CC, Flash CC, After Effects CC, PS CC
    Rearrange Artboard
    Hallo mm100,
    emh, ja so gehts auch bei mir. Vielen Dank!
    Da saß das Problem anscheinend vor dem Bildschirm.

    Herzliche Grüße
    Jürgen
     
    #6      
  8. KapitaenNet

    KapitaenNet Icon Designer

    Dabei seit:
    20.02.2007
    Beiträge:
    134
    Geschlecht:
    männlich
    Ort:
    Lampertheim
    Software:
    Illustrator CS6, CC, Flash CC, After Effects CC, PS CC
    Rearrange Artboard
    Hallo mm100,

    ich habe den Code nun modifiziert, sodass die aktuelle Dokumentengröße verwenndet wird.

    var doc = activeDocument;
    var posx=doc.artboards.length * doc.width + 10;
    var btn=doc.artboards.length * doc.width + 10 + doc.width;
    doc.artboards.add([posx, doc.height + 200, btn, 200]);
    doc.rearrangeArtboards(DocumentArtboardLayout.GridByRow , 3 , 20 , true);

    Wenn man mehrere Grafiken über eine Aktion jeweils auf einer neuen Zeichenfläche platzieren möchte, ist das Script ideal.
    Gruß
    Jürgen
     
    #7      
  9. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    458
    Software:
    irgendetwas mit CS
    Rearrange Artboard
    hallo KapitaenNet,
    Ich finde das Thema super spannend. ich hab auch schon ein paar mal verschiedene Codes für mich selbst angepasst und auch schon in ein paar Foren gestöbert. Deshalb bin ich davon überzeugt: die ganzen doppelten variablenabfragen in deinem Code stellen dich früher oder später vor unlösbare Probleme.

    Deshalb habe ich deinen Code auch noch mal modifiziert. Mein Code macht zwar genau das selbe wie deiner sollte aber viel sauberer sein. Bin echt gespannt auf deine Meinung.
    Code (Text):
    1. var doc = activeDocument;
    2. var rect = (doc.artboards[doc.artboards.getActiveArtboardIndex()].artboardRect);
    3. rect[0] +=1; rect[2] +=1;
    4. doc.artboards.add(rect);
    5. doc.rearrangeArtboards(DocumentArtboardLayout.GridByRow , 3 , 20 , true);
    Vielleicht kuckt auch mal ein Profi drüber.
     
    #8      
  10. mm100

    mm100 Benutzer

    Dabei seit:
    03.02.2015
    Beiträge:
    458
    Software:
    irgendetwas mit CS
    Rearrange Artboard
    ???

    Keine antwort. Schade.
     
    #9      
Seobility SEO Tool
x
×
×