Hallo,
ich versuche mit Hilfe eines Skripts automatisiert für jede Auflösung einen passenden Bildauschnitt zu ermitteln.
Ich beziehe mich hierbei auf den Post https://community.e-spirit.com/message/9197#9197.
Es geht darum, dass wir eine große Menge fester Auflösungen haben, FirstSpirit jetzt aber standardmäßig die Bilder in den entsprechenden Auflösungen skaliert und somit vielfach starl verzerrt.
Vom Kunden gewünscht ist eine Möglichkeit automatisiert für jede Auflösung einen entsprechenden Ausschnitt vom Originalbild zu ermitteln. Dieser Ausschnitt soll links oben beginnen und dann in der jeweiligen Auflösung aufgezogen werden. Im folgenden ein Auschnitt des entsprechenden Skriptes. Bei der Selection setze ich momentan noch einen festen Wert. Führe ich das Skript aus, wird aber bei den einzelnen Auflösungen nicht ein Ausschnitt in der angegebenen Größe erstellt, sondern einfach das Originalbild in die entsprechenden Auflösungen skaliert.
...
for(medium:mediaList){
context.logInfo("Klasse: " + medium.getClass());
if(medium.getType() == Media.PICTURE){
picture = medium.getPicture(project.getMasterLanguage());
try{
if(!medium.isLocked()){
medium.setLock(true);
}
for(resolution:resolutions){
pictureResolution = picture.getPictureResolution(resolution);
if(pictureResolution.getSize() < 0){
pictureCropData = new PictureCropData();
selection = new Rectangle2D.Double(0.0,0.0,100.0,200.0);
pictureCropData.setSelection(selection);
pictureResolution.setCropData(pictureCropData);
pictureMetaData = picture.getPictureMetaData(resolution);
picture.setPicture(pictureResolution.getResolution(),pictureMetaData.getSize(),picture.getInputStream(pictureResolution.getResolution()),pictureMetaData.getExtension());
}else{
context.logInfo("Für Auflösung " + pictureResolution.getName() + " ist bereits eine Selektion vorhanden.");
}
}
medium.save();
...
Meine Frage ist zunächst, ob ich hier was falsch mache oder ob es mit der FirstSpirit API überhaupt nicht möglich ist das umzusetzen was wir wollen.
Ich hoffe irgendjemand kann mir weiterhelfen.
Viele Grüße,
Stefan