Forenindex » Programmierung/Entwicklung » JavaScript » Skript anpassen

Skript anpassen

atrachsel
Beiträge gesamt: 93

1. Nov 2013, 15:54
Bewertung:

gelesen: 1413

Beitrag als Lesezeichen
Hallo zusammen

Ich habe hier ein Skript welchem ich die maximale Höhe und Breite eingeben möchte. Wenn ich ein Wort mit 3 Buchstaben habe, möchte ich nicht dass die volle Breite erreicht wird, da sonst die Buchstaben zu gross werden. Weiss aber leider nicht wo.
Kann mir da jeman helfen?

if ( app.documents.length > 0 )
main();

function main()
{
var old_tp = app.transformPreferences.whenScaling;
app.transformPreferences.whenScaling = WhenScalingOptions.ADJUST_SCALING_PERCENTAGE;
for ( var i = app.activeDocument.textFrames.length -1; i >= 0; i-- )
{
if ( app.activeDocument.textFrames.item(i).characters.length > 0 && app.activeDocument.textFrames.item(i).rotationAngle == 0 )
{
bring_auf_breite( app.activeDocument.textFrames.item(i) );

}
}
app.transformPreferences.whenScaling = old_tp;
}

function bring_auf_breite ( obj )
{
var gb_vorher = obj.geometricBounds;
var breite_vorher = gb_vorher[3] - gb_vorher[1];
var hoehe_vorher = gb_vorher[2] - gb_vorher[0];
obj.fit(FitOptions.FRAME_TO_CONTENT);
var gb_nachher = obj.geometricBounds;
var breite_nachher = gb_nachher[3] - gb_nachher[1];
var hoehe_nachher = gb_nachher[2] - gb_nachher[0];
var factorb = breite_vorher/breite_nachher;
var factorh = hoehe_vorher/hoehe_nachher;
var factor = Math.min( factorb, factorh);
var myScaleMatrix = app.transformationMatrices.add({horizontalScaleFactor:factor, verticalScaleFactor:factor});
obj.transform(CoordinateSpaces.pasteboardCoordinates, AnchorPoint.TOP_LEFT_ANCHOR, myScaleMatrix);
obj.geometricBounds = gb_vorher;

Skript anpassen

Uwe Laubender
Beiträge gesamt: 5319

2. Nov 2013, 10:10
Bewertung:

gelesen: 1358

Beitrag als Lesezeichen
Hallo, atrachsel!

Ich denke, Du bist hier im falschen Forum. Das beschäftigt sich eher im Allgemeinen mit JavaScript, im Speziellen mit der Anwendung bei Webdesign.

Wenn ich so Deinen Code betrachte, dann sieht der nach ExtendScript (eine Spielart von JavaScript) für InDesign aus.

Also, liebe Moderatoren:
Wenn möglich, bitte diesen Thread in die InDesign-Scriptwerkstatt verschieben.
Da kann atrachsel eher geholfen werden.
*****
Mit herzlichem Gruß,
Uwe Laubender