[GastForen Programme Print/Bildbearbeitung Adobe InDesign

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste

JSFindschange vereinfachen

Martin Fischer
  
Beiträge gesamt: 12783

9. Aug 2007, 20:40
Bewertung:

gelesen: 50660

Beitrag als Lesezeichen
Hallo Quarz,

fein, daß es so geht.

((Christoph, bitte mal diskret wegschauen))
Das folgende Skript addiert den Überfluß der Farben im Dokument (gebenüber der Applikation) zu den Farben der Applikation (es erweitert also die Farbfelderpalette um die Farben, die nur im Dokument, nicht aber in der Applikation definiert sind).

Code
// addDocSwatchesSurplus2App.jsx 

var myCols = app.activeDocument.swatches;
var newCols = new Array;
for ( i = 0; i< myCols.length; i++ )
try
{
eval ( 'app.colors.add' + eval( 'myCols[i].properties.toSource()' ) );
app.swatches.item(myCols[i].name).label = 'temp';
newCols.push( myCols[i].name );
}
catch( e ){}

if ( newCols.length > 0 )
alert( 'Hinzugefügte Farben (Programmebene):\r' + newCols.join( '\r' ) );

Das Skript oben markiert die der Applikation neu hinzugefügten Farben.
Auf diese Weise ist es möglich, diese temporär hinzugefügten (und markierten) Farben auch wieder von der Applikation zu entfernen:
Code
// removeTempSwatches.jsx 

var myCols = app.swatches;
var delCols = new Array;

for ( i = myCols.length -1; i >= 0; i-- )
{
if (myCols[i].label == 'temp')
{
delCols.push(myCols[i].name);
myCols[i].remove();
}
}

if ( delCols.length > 0 )
alert( 'Gelöschte temporäre Farben (Programmebene):\r' + delCols.join( '\r' ) );


(Dieser Beitrag wurde von Martin Fischer am 9. Aug 2007, 20:46 geändert)
Änderungsverlauf:
Beitrag geändert von Martin Fischer (Moderator) am 9. Aug 2007, 20:46