horizontalMeasurementUnits = MeasurementUnits.points; verticalMeasurementUnits = MeasurementUnits.points;

)

var myNumberOfFrames = myFiles.length;

var myNumberOfPages = Math.round(myNumberOfFrames / myFramesPerPage);

// Если количество размещаемых изображений не помещается в публикации, // добавляем нужное количество страниц

if ((myNumberOfPages * myFramesPerPage) < myNumberOfFrames)( myNumberOfPages++;

}

// Определяем размеры допустимой области на листе // для размещения каталога var myMap = myDocument.pages[0]; with(myMap.marginPreferences)( var myLeftMargin =left; var myTopMargin =top; var myRightMargin =right; var myBottomMargin =bottom;

}

with( myDocument.documentPreferences){ pagesPerDocument = myNumberOfPages; facingPages = false;

var myLiveWidth = (pageWidth - (myLeftMargin + myRightMargin)) + myHorizontalOffset var myLiveHeight = pageHeight - (myTopMargin + myBottomMargin)

}

//По ним определяем количество строк и столбцов,

// а также их физические размеры myColumnWidth = myLiveWidth / myNumberOfColumns myFrameWidth = myColumnWidth - myHorizontalOffset myRowHeight = (myLiveHeight / myNumberOfRows)

myFrameHeight = myRowHeight - myVerticalOffset yMaps = myDocument.pages,•

// Если пользователь выбрал добавление названий файлов.,

II создаем для этого отдельный слой if(myLabels >0){

myLabelStyle = myDocument.paragraphStyles.add({name:"labels"}); myLabelStyle.pointSize = 8;

myLabelLayer = myDocument.layers.add({name:"labels"}) ;

}

II Собственно размещение.

11 Идем по всем страницам

for (i = myDocument.pages.length-1; i >= 0; i-){ myMap = myMaps.item(i);

// Заполняем по очереди каждый ряд

for (myRowCounter = myNumberOfRows; myRowCounter >=1; 'b myRowCounter-){ myYl = myTopMargin + (myRowHeight * (myRowCounter-1)); myY2 = myYl + myFrameHeight;

II В каждую ячейку вставляем изображение

for (myColumnCounter = myNumberOfColumns; myColumnCounter >= 1; 'Ь myColumnCounter-){ myXl = myLeftMargin + (myColumnWidth * (myColumnCounter-l)); myX2 = myXl + myFrameWidth;

myRectangle = myMap.rectangles.add(myDocument.layers.item(-l), undefined, undefined, {geometricBounds:[myYl, myXl, myY2, 'b myX2], strokeWeight: 0,

strokeColor:myDocument.swatches.item("None") }) ;

}

}

}

II Пробегаем по всем изображениям и решаем вопрос //с расположением содержимого в контейнере for (i =0; i < myNumberOfFrames; i++){ myFile = myFiles[i];

myRectangle = myDocument.rectangles.item(i) ; myRectangle.place(File(myFile)); myRectangle.label = myFile.fsName.toString() ;

if (myFitProportional){

myRectangle.fit(FitOptions.proportionally) ;

}

if (myFitCenterContent){

myRectangle.fit(FitOptions.centerContent);

}

if(myFitFrameToContent){

myRectangle.fit(FitOptions.frameToContent);

}

// Если нужна подпись для изображения, делаем зто if(myLabels >0){

myXl = myRectangle.geometricBounds[1]; myYl = myRectangle.geometricBounds[2]; myX2 = myRectangle.geometricBounds[3]; myY2 = myRectangle.geometricBounds[2]+myVerticalOffset;

switch(myLabels){ case 1:

myString = myFile.name; break; case 2:


⇐ вернуться назад | | далее ⇒