/**********************************************************
ADOBE SYSTEMS INCORPORATED
Copyright 2005-2010 Adobe Systems Incorporated
All Rights Reserved
NOTICE: Adobe permits you to use, modify, and
distribute this file in accordance with the terms
of the Adobe license agreement accompanying it.
If you have received this file from a source
other than Adobe, then your use, modification,
or distribution of it requires the prior
written permission of Adobe.
*********************************************************/
/**********************************************************
Variables and Datasets.jsx
DESCRIPTION
This sample script will create 2 variables (text and visiblity)
and 10 datasets (alternating between visible and hidden). The
variables are then exported and the document is closed.
The document is re-opened and the saved variables are imported.
このサンプル・スクリプトは、2つの変数(textとvisiblity)と
10個のデータセット(visibleとhiddenを交互に)を作成します。
変数がエクスポートされ、ドキュメントが閉じられます。
ドキュメントを再度開き、保存した変数をインポートします。
**********************************************************/
var rs = "OK";
var textRef;
var textVar;
var pathRef;
var aiFilePath = Folder.desktop + '/DS_and_V.ai'
var xmlFilePath = Folder.desktop + '/DS_and_V.xml'
try
{
var docRef = documents.add();
// add a text item and variable
var textRef = docRef.textFrames.add();
textRef.contents = "Visible"
textRef.top = 400;
textRef.left = 100;
var textVar = docRef.variables.add();
textVar.kind = VariableKind.TEXTUAL;
textRef.contentVariable = textVar;
// add a pageItem and visibility variable
pathRef = docRef.pathItems.rectangle(450, 300, 100, 100);
docRef.graphicStyles[1].applyTo(pathRef);
var visibilityVar = docRef.variables.add();
visibilityVar.kind = VariableKind.VISIBILITY;
pathRef.visibilityVariable = visibilityVar;
alert("Variables created, saving document.");
docRef.saveAs(new File(aiFilePath));
// add 10 datasets, alternating between hidden and visible
alert("Creating and exporting 10 datasets.");
var i = 1
for (i=1; i<11; i++)
{
if ((i%2) == 0)
{
pathRef.hidden = false;
textRef.contents = "Dataset #" + i + ", Visible";
}
else
{
pathRef.hidden = true;
textRef.contents = "Dataset #" + i + ", Hidden";
}
dsRef = docRef.dataSets.add();
}
// Export the datasets and variables and close the file
docRef.exportVariables(new File(xmlFilePath));
alert("Closing and reopening the document.");
docRef.close(SaveOptions.DONOTSAVECHANGES);
// Open the file and import the datasets and variables from xml file
docRef = open(new File(aiFilePath));
alert("Importing the datasets.");
docRef.importVariables(new File(xmlFilePath));
rs = "OK";
}
catch (err)
{
rs = ("ERROR: " + (err.number & 0xFFFF) + ", " + err.description);
alert(rs);
}
rs;