[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt [JS scriptUI] listbox image: scale statt crop (Marc Autret Image.prototype anwendbar?)

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

[JS scriptUI] listbox image: scale statt crop (Marc Autret Image.prototype anwendbar?)

NEU!
Beiträge gesamt: 179

14. Dez 2015, 10:01
Beitrag # 1 von 1
Bewertung:
(1138 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moinmoin,

ich fuchtel mich mit der Machete durch Javascript, und lerne immer mehr über die Syntax – wenn es denn schön ge/beschrieben ist. Leider kann ich die effiziente Scriptweise von Marc noch nicht verstehen, folglich error ich mich hier durch ein Projekt, bei dem ich jetzt nach Hilfe fragen will:

Meinem Script soll eine Auflistung der exportierten JPGs folgen, deren Dimension aber größer als ihr Feld in der Listbox sind. Nativ haben sie die Dialogbox gesprengt.
Aber mit myList.itemSize= [550,50]; konnte ich die Größe begrenzen…aber:

Leider werden die Bilder, wie in der scriptUI beim Begrenzen beschnitten, statt skaliert. Dafür hat Marc ein tolles Scriptschnipsel:

Code
Image.prototype.onDraw = function() 
{ // written by Marc Autret
// "this" is the container; "this.image" is the graphic
if( !this.image ) return;
var WH = this.size,
wh = this.image.size,
k = Math.min(WH[0]/wh[0], WH[1]/wh[1]),
xy;
// Resize proportionally:
wh = [k*wh[0],k*wh[1]];
// Center:
xy = [ (WH[0]-wh[0])/2, (WH[1]-wh[1])/2 ];
this.graphics.drawImage(this.image,xy[0],xy[1],wh[0],wh[1]);
WH = wh = xy = null;
}
var w = new Window ("dialog", "Bouquet");
var flowers = w.add ("image", undefined, File ("/d/scriptui/bouquet.jpg"));
flowers.size = [50,50];
w.show ();


(Quelle ScriptUI Peter Kahrel, Danke!)


Jetzt habe ich hier meine ersten Dialogfensterentwürfe, leider ohne den Rest des Scripts nicht verwendbar, aber zu lang um hier abzulegen…

Wer könnte mir helfen, diesen Image-Prototype-Wahnsinn hier irgendwie einzubasteln von der Theroie her?

Hier mein Fensterchen:
Code
var w = new Window ("dialog"); 
var minicounter = -1;
var myList = w.add ("listbox", undefined, "", {numberOfColumns: 4, showHeaders: true, columnTitles: ["Sicht","Export", "Name", "Größe"], columnWidths: [50,60,400,80]});
for (var k = 0; k < myMark.length; k++)
{ if (myMark[k][4] == true) {
minicounter ++;
with (myList.add ("item", "nothing yet"))
{
if (OF == false) {var FileTemp = File(myMark[k][0]);} else {var FileTemp = File(myMark[k][1]+".jpg")}
myList.items[minicounter].image = File(FileTemp);
subItems[0].text = ""+k;
subItems[1].text = FileTemp.displayName;
subItems[2].text = formatBytes(FileTemp.length);
}
}
myList.itemSize= [550,50];
}

w.show ();
}


(Dieser Beitrag wurde von NEU! am 14. Dez 2015, 10:06 geändert)
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/

Veranstaltungen
01.03.2023 - 09.03.2023

Online
Mittwoch, 01. März 2023, 00.00 Uhr - Donnerstag, 09. März 2023, 00.00 Uhr

Online Webinar

Wie gehen wir mit diesen Veränderungen um? Was ist notwendig, damit wir die Digitalisierung im Unternehmen klappt? Veränderungsprozesse verstehen und entsprechend handeln Mitarbeiter als Botschafter Webseite mit WordPress erstellen SEA /SEO (Ads aufschalten)

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: B. Isik, E-Mailinfo AT snfa DOT ch

https://www.fernstudiumfitness.ch/digitalisierung-schweiz/