[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Bild teilen nach Maßvorgabe ID CS5

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

Bild teilen nach Maßvorgabe ID CS5

-hans-
Beiträge gesamt: 738

17. Jul 2013, 13:16
Beitrag # 16 von 22
Beitrag ID: #515172
Bewertung:
(3945 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ralf,

teste mal folgendes Script.
Im Idealfall ;-) sollte der Grafikrahmen am Bund getrennt werden.
Dadurch können auch Rahmen verarbeitet werden die nicht mittig über dem Bund stehen. Bildversatz bitte oben angeben.

keine Fehlerbehandlung, ausgewählter Grafikrahmen vorrausgestzt:

Code
var Bildversatz = 3; //Einheit mm 


var currDoc = app.activeDocument;

currDoc.zeroPoint = [0,0];
with(currDoc.viewPreferences)
{
horizontalMeasurementUnits = MeasurementUnits.MILLIMETERS;
rulerOrigin = RulerOrigin.SPREAD_ORIGIN;
}

var currSel = app.selection[0];
var pSpread = currSel.parentPage.parent;
var pPages = pSpread.pages;
if(pPages.length)
var pPagesBounds = pPages.everyItem().bounds;
var selBounds = currSel.geometricBounds;

var pPage = pPages[getParentPage(pPagesBounds, selBounds)];
var newSelX3 = pPage.bounds[3];
currSel.geometricBounds = [selBounds[0], selBounds[1], selBounds[2], newSelX3];
currSel.images[0].move(undefined,[-Bildversatz,0]);
var newSel = currSel.duplicate(undefined,[0,0]);
var newSelBounds = newSel.geometricBounds;
newSel.geometricBounds = [selBounds[0], newSelBounds[3], selBounds[2], selBounds[3]];
newSel.images[0].move(undefined,[2*Bildversatz,0]);

$




function getParentPage(pPagesBounds, selBounds)
{
x1Sel = selBounds[1];
x2Sel = selBounds[3];
for(var pb = 0; pb < pPagesBounds.length; pb++)
{
if(x1Sel < pPagesBounds[pb][3] && x2Sel > pPagesBounds[pb][3] ) break;
}
return pb;
}


Kritik, Wünsche, Anregungen?
Lieben Gruß

Hans-Gerd Claßen


als Antwort auf: [#515090]
X

Bild teilen nach Maßvorgabe ID CS5

Ralf Hobirk
Beiträge gesamt: 5843

17. Jul 2013, 13:54
Beitrag # 17 von 22
Beitrag ID: #515178
Bewertung:
(3926 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans-Gerd,

erstmal vielen, vielen Dank!

Bildrahmen, die exakt mittig über dem Bund stehen, werden korrekt geteilt, die Bilder in den Rahmen bekommen auch den korrekten Versatz links/rechts. Trotzdem kommt eine Fehlermeldung:
Code
Error Number: 89858 
Error String: Unknown object type
Engine: main
Source: Return value


Bei Bildrahmen, die nicht mittig über dem Bund stehen (z.B. 1/3 links vom Bund und 2/3 rechts vom Bund), passiert gar nichts außer dieser Fehlermeldung:
Code
Error Number: 45 
Error String: Object is invalid
Line: 25
Source: var newSelX3 = pPage.bounds[3];


---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#515172]

Bild teilen nach Maßvorgabe ID CS5

-hans-
Beiträge gesamt: 738

17. Jul 2013, 14:14
Beitrag # 18 von 22
Beitrag ID: #515180
Bewertung:
(3919 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hm,

läuft hier unter 5.5 und 6 problemlos.
Hast Du ein einfaches Musterdokument und die ID-Version?

thx :)
Lieben Gruß

Hans-Gerd Claßen


als Antwort auf: [#515178]

Bild teilen nach Maßvorgabe ID CS5

Ralf Hobirk
Beiträge gesamt: 5843

17. Jul 2013, 15:27
Beitrag # 19 von 22
Beitrag ID: #515183
Bewertung:
(3882 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans-Gerd,

den Fehler mit dem asynchronen Bildrahmen (1/3+2/3) muss ich zurücknehmen. Ich habe gerade festgestellt, dass es sich nicht um eine "echte" Doppelseite handelte, sondern um ein A3-Dokument. Ohne Bund geht da natürlich nichts.

Ein (abgespecktes) Testdokument sende ich dir per Mail zu, meine ID-Version ist CS6 (8.0.1).

---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#515180]

Bild teilen nach Maßvorgabe ID CS5

-hans-
Beiträge gesamt: 738

17. Jul 2013, 17:02
Beitrag # 20 von 22
Beitrag ID: #515190
Bewertung:
(3845 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Lieber Ralf,

auch in dem Beispieldokument funktioniert bei mir alles ohne Fehler.
In dem eben geposteten Script war zwar an zwei Stellen noch unerklärlicher Codemüll (sorry & deshalb hier nochmal clean), aber deine Fehlerquelle finde ich nicht.
Vllt. kann (bitte :) ) gerade noch jemand kompetentes darauf schauen?

Code
var Bildversatz = 3; //Einheit mm  


var currDoc = app.activeDocument;

currDoc.zeroPoint = [0,0];
with(currDoc.viewPreferences)
{
horizontalMeasurementUnits = MeasurementUnits.MILLIMETERS;
rulerOrigin = RulerOrigin.SPREAD_ORIGIN;
}

var currSel = app.selection[0];
var pSpread = currSel.parentPage.parent;
var pPages = pSpread.pages;
var pPagesBounds = pPages.everyItem().bounds;
var selBounds = currSel.geometricBounds;

var pPage = pPages[getParentPage(pPagesBounds, selBounds)];

var newSelX3 = pPage.bounds[3];
currSel.geometricBounds = [selBounds[0], selBounds[1], selBounds[2], newSelX3];
currSel.images[0].move(undefined,[-Bildversatz, 0]);

var newSel = currSel.duplicate(undefined,[0,0]);
var newSelBounds = newSel.geometricBounds;
newSel.geometricBounds = [selBounds[0], newSelBounds[3], selBounds[2], selBounds[3]];
newSel.images[0].move(undefined,[2*Bildversatz, 0]);




function getParentPage(pPagesBounds, selBounds)
{
x1Sel = selBounds[1];
x2Sel = selBounds[3];
for(var pb = 0; pb < pPagesBounds.length; pb++)
{
if(x1Sel < pPagesBounds[pb][3] && x2Sel > pPagesBounds[pb][3] )
{
break;
}
}
return pb;
}

Lieben Gruß

Hans-Gerd Claßen


als Antwort auf: [#515183]

Bild teilen nach Maßvorgabe ID CS5

Ralf Hobirk
Beiträge gesamt: 5843

17. Jul 2013, 17:20
Beitrag # 21 von 22
Beitrag ID: #515191
Bewertung:
(3827 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans-Gerd,

mit dem bereinigten Code ist jetzt alles korrekt. Keine Fehlermeldung mehr. Hab's mit zwei unterschiedlichen Dateien getestet.

Hätte ich das Script mal vor ca. 2 Wochen gehabt ;-) Aber der nächste Job mit dieser Anforderung läuft Anfang August…

Habe dem Script übrigens den Namen SplitImagesOnSpline gegeben :-)

Noch mal vielen, vielen Dank!

---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#515190]

Bild teilen nach Maßvorgabe ID CS5

-hans-
Beiträge gesamt: 738

17. Jul 2013, 17:22
Beitrag # 22 von 22
Beitrag ID: #515192
Bewertung:
(3826 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
na denne :)
Lieben Gruß

Hans-Gerd Claßen


als Antwort auf: [#515191]
X

Veranstaltungen

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen. pdf-icon Hier eine kleine Anleitung.

Veranstaltungen
16.02.2019 - 29.06.2019

3400 Burgdorf, BE
Samstag, 16. Feb. 2019, 08.30 Uhr - Samstag, 29. Juni 2019, 08.30 Uhr

Lehrgang

Mit dem Erwerb des Zertifikats Publisher Basic beweisen Sie Ihre Kompetenz für die Mitarbeit bei der Gestaltung und Umsetzung von Publishing-Projekten. Das Zertifikat wird bei den Arbeitgebern immer bekannter; diese wissen, dass Sie mit diesem Abschluss sehr gutes KnowHow erworben haben. Nach erfolgreicher Absolvierung dieses Lehrgangs sind Sie in der Lage, die Zertifikatsprüfung abzulegen.

Ja

Organisator: PubliCollege GmbH

Kontaktinformation: Beat Kipfer, E-Mailinfo AT publicollege DOT ch

www.publicollege.ch

Publisher Basic
Veranstaltungen
21.02.2019

PDF-Preflight, PDF-Editierung und Automatische Korrektur von PDF-Dateien

Impressed GmbH, Hamburg
Donnerstag, 21. Feb. 2019, 10.00 - 10.30 Uhr

Webinar

In diesem ca. halbstündigen Webinar stellen wir Ihnen die Neuerungen in der Version 2018 von Enfocus PitStop Pro vor.

Ja

Organisator: Impressed GmbH

Kontaktinformation: Detlef Grimm, E-Mailschulungen AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=249

Enfocus PitStop 2018