[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

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

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

mdomino
Beiträge gesamt: 76

26. Apr 2016, 01:38
Beitrag # 1 von 7
Bewertung:
(2463 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,
entweder ich kann hier zur forgeschrittener Stunde nicht mehr klar denken oder der Fehler liegt doch bei InDesign.

Ich versuche gerade die Außenkanten, also bounds, eines Spreads zu ermitteln. Das geht ja bekanntlich nicht direkt, sondern nur über die Seiten des Spreads, eben über page.bounds und dann in der bekannten Anordnung [y1, x1, y2, x2]. Das funktioniert soweit über's Scripten auch ganz gut, aber wenn meine viewPreferences.rulerOrigin auf RulerOrigin.SPINE_ORIGIN setze tritt da meines Erachtens ein Fehler auf, er gibt nämlich auf Anfrage an, dass die linke Bound auf 0 liegt, obwohl sie im Minusbereich liegt.

Überprüfbar mit folgendem Script:

Code
#target InDesign 

var doc = app.documents.add();
doc.documentPreferences.facingPages = true;
doc.documentPreferences.pagesPerDocument = 3;
var spread = doc.spreads[1];

doc.viewPreferences.rulerOrigin = RulerOrigin.SPINE_ORIGIN;

var rect = spread.rectangles.add();

alert("Rectangle left bound: " + rect.geometricBounds[1]); // --> -209,999
alert("Spread left bound: " + doc.spreads[1].pages[0].bounds[1]); // --> 0


Man sieht, die linke Kante des Rechtecks liegt extakt auf dem linken Rand der ersten Seite des Spreads und trotzdem werden zwei unterschiedliche Werte ausgegeben. Ist das ein Bug? Oder verstehe ich irgendwie das Koordinaten-System von page.bounds nicht?

Das Phänomen tritt in InDesign CS6 auf.

Bin gespannt auf eure Meinung.

Viele Grüße, md

(Dieser Beitrag wurde von mdomino am 26. Apr 2016, 01:43 geändert)
X

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

Hans Haesler
  
Beiträge gesamt: 5826

26. Apr 2016, 16:28
Beitrag # 2 von 7
Beitrag ID: #549197
Bewertung:
(2367 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo md,

Dein Ergebnis kann ich bestätigen. Offensichtlich ein Versäumnis der Entwickler.

Als Workaround zum Herausfinden der 'bounds': Einen temporären Rahmen erzeugen und dessen bounds verlangen.

Gruss, Hans


als Antwort auf: [#549173]

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

Uwe Laubender
Beiträge gesamt: 5316

26. Apr 2016, 19:04
Beitrag # 3 von 7
Beitrag ID: #549205
Bewertung:
(2338 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

ich würde lieber zu Begin des Skripts den Origin grundsätzich auf RulerOrigin.SPREAD_ORIGIN umstellen. Das erspart einem viel Ärger.
Nach erfolgreichem Lauf wieder zurück zur Benutzereinstellung.

Schaut euch das hier folgende Snippet an; das macht's bei Dokumenten mit gesetztem RulerOrigin.SPINE_ORIGIN, in denen Seiten vertikal mit dem Seitenwerkzeug verschoben sind, noch deutlicher:
Code
var doc = app.documents[0]; 
var pages = doc.pages.everyItem().getElements();

for(var n=0;n<pages.length;n++)
{
pages[n].rectangles.add
(
{
geometricBounds : pages[n].bounds ,
fillColor : "Yellow"
}
);
}


Ein Beispiel ist hier zu bewundern:
https://www.dropbox.com/...PINE_ORIGIN.png?dl=0

Mit RulerOrigin.SREAD_ORIGIN folgendes Ergebnis:
https://www.dropbox.com/...READ_ORIGIN.png?dl=0


als Antwort auf: [#549197]

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

Uwe Laubender
Beiträge gesamt: 5316

26. Apr 2016, 19:11
Beitrag # 4 von 7
Beitrag ID: #549206
Bewertung:
(2334 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Möglicherweise ist das ja kein Bug.
Hier die Ergebnisse mit PAGE_ORIGIN:
https://www.dropbox.com/...PAGE_ORIGIN.png?dl=0

Ich denke, dass die bounds grundsätzlich in Koordinaten des spreads ausgegeben werden.


als Antwort auf: [#549205]

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

Uwe Laubender
Beiträge gesamt: 5316

26. Apr 2016, 19:31
Beitrag # 5 von 7
Beitrag ID: #549207
Bewertung:
(2315 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Die DOM-Dokumentation ist da ja eher etwas "maulfaul", was solche Details angeht. Das ist an vielen Stellen zu bemerken.

http://www.indesignjs.de/...ndesign11/#Page.html


als Antwort auf: [#549206]

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

mdomino
Beiträge gesamt: 76

26. Apr 2016, 21:40
Beitrag # 6 von 7
Beitrag ID: #549208
Bewertung:
(2245 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans, hallo Uwe,
vielen Dank für eure Bestätigung. Hei, da scheint ja noch mehr im Argen zu liegen mit dem rulerOrigin, als ich zunächst annahm. Ich habe in jüngerer Vergangenheit ein Riesenscript geschrieben mit mehreren tausend Zeilen Code und alles lief mit Lineal am Bund, hat alles einwandfrei funktioniert damals, daher dachte ich, man könnte das bedenkenlos nutzen.

Uwes Beispiele sind mir aber Warnung genug, um in Zukunft ausnahmslos auf SPREAD_ORIGIN umzustellen.

Gibt es denn eine Anlaufstelle, um solche Bugs an Adobe zu melden? Oder stößt man da auf taube Ohren? Denn meiner Meinung nach handelt es sich schon um einen Bug. Warum sollte bounds[1] denn irgend etwas anderes ausgeben als die x-Position der linken Kante?

Danke und Grüße,
md


als Antwort auf: [#549207]

Falsche page.bounds-Werte bei Ansichtseinstellung „Lineal am Bund“?

Uwe Laubender
Beiträge gesamt: 5316

27. Apr 2016, 12:06
Beitrag # 7 von 7
Beitrag ID: #549224
Bewertung:
(2122 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ mdomino ] …Denn meiner Meinung nach handelt es sich schon um einen Bug. Warum sollte bounds[1] denn irgend etwas anderes ausgeben als die x-Position der linken Kante?


Die Frage ist eher: In welchem Bezugssystem sind die ausgegebenen Werte gültig? Und wenn es dasjenige des Spreads ist—allerdings nicht in der DOM-Doku erwähnt—ist es eben nur eine Annahme davon auszugehen, dass das Bezugssystem die Seite oder der Bund sein könnte. Da fällt man des Öfteren drauf rein. Ich jedenfalls ;-)

Aber schreib ruhig 'nen Bug-Report:
https://adobe.allegiancetech.com/...corporate.dll?BXNQNA
Wobei über diesen Kanal normalerweise keine Rückmeldungen kommen. Es sei denn, die Entwickler brauchen Testdateien.


als Antwort auf: [#549208]
X