HorizontalScale beim Exportieren von JPG-Grenzen auf 776,19

Ich versuche, JPEG-Dateien aus mehreren EPS-Dateien (mit vielen verschiedenen Zeichenflächengrößen) mit einer bestimmten Größe zu exportieren - 5000 Pixel an der langen Kante. Aber wenn die Zeichenfläche zu klein ist, überschreitet horizontalScale seinen Bereich und das Skript schlägt fehl. Kann ich dieses Problem irgendwie lösen?

Hier ist mein Skript:

var doc = app.activeDocument;
var abActive  = doc.artboards[doc.artboards.getActiveArtboardIndex()];

var artWidth = abActive.artboardRect[2] - abActive.artboardRect[0];
var artHeight = abActive.artboardRect[1] - abActive.artboardRect[3];

if (artWidth>=artHeight) 
 {
   var fileName = doc.fullName.toString();
    var exportOptions = new ExportOptionsJPEG();

    var fileSpec = new File(fileName);
    exportOptions.antiAliasing = true;
    exportOptions.artBoardClipping = true;
    exportOptions.qualitySetting = 100;
    exportOptions.horizontalScale = (5000/artWidth)*100;
    exportOptions.verticalScale = (5000/artWidth)*100;

    doc.exportFile( fileSpec, ExportType.JPEG, exportOptions );
   }
else
{
    var fileName = doc.fullName.toString();
    var exportOptions = new ExportOptionsJPEG();

    var fileSpec = new File(fileName);
    exportOptions.antiAliasing = true;
    exportOptions.artBoardClipping = true;
    exportOptions.qualitySetting = 100;
    exportOptions.verticalScale = (5000/artHeight)*100;
    exportOptions.horizontalScale = (5000/artHeight)*100;


    doc.exportFile( fileSpec, ExportType.JPEG, exportOptions );
}

PS Ich habe darüber nachgedacht, die Größe der Zeichenfläche vor dem Export zu überprüfen, und wenn sie zu klein ist, skalieren Sie sie auf die erforderliche Größe, aber das würde den Exportvorgang sehr verlangsamen.

Antworten (1)

Ich habe verschiedene Exportformate ausprobiert und PNG hat funktioniert. Anstelle von JPG hat PNG diese Größenbeschränkung nicht. Und nach dem Exportieren ist es einfach, alle PNG-Dateien mit etwas wie ACDSee usw. in JPG umzuwandeln.