[GastForen Programmierung/Entwicklung AppleScript QXP 6.1: Rundungsfehler ab 272 mm

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

QXP 6.1: Rundungsfehler ab 272 mm

Hans Haesler
  
Beiträge gesamt: 5797

3. Mai 2004, 12:25
Beitrag # 1 von 7
Bewertung:
(1816 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wenn die Masseinheit "Millimeter" ist und die Positionswerte von Boxen per Script zugewiesen werden, funktioniert dies bestens. Solange kein Wert grösser als 272 ist.

Ein Beispiel. Manuell eine Box erzeugen und deren Oberkante auf 280 mm setzen.
Diese Box ausgewählt lassen und folgendes Script ausführen:
---
tell document 1 of application "QuarkXPress 6.1"
  set y1 to 275
  tell current box
    set top of bounds to y1
  end tell
end tell
---
Der Y-Wert in der Masspalette zeigt nicht "275 mm", sondern "274,999 mm".

Okay, diese Differenz von einem Tausendstel wird auf dem fertigen Druck-Erzeugnis nicht sichtbar sein. Dennoch: es ist ärgerlich, dass nach dem internen Umrechnen diese Ungenauigkeit auftritt.

Abhilfe: Ausrechnen, wieviel Mal der Grenzwert von 272 im zuzuweisenden Wert enthalten ist und entsprechend der Anzahl je einen halben Tausendstel zugeben.
---
tell document 1 of application "QuarkXPress 6.1"
  set y1 to 275
  set y1 to (((y1 / 272) div 1) * 5.0E-4) + y1
  tell current box
    set top of bounds to y1
  end tell
end tell
---
Im Detail: '((y1 / 272) div 1)' bedeutet: 275 geteilt durch 272 ergibt 1.011029411765. Mit 'div 1' wird auf ganze Zahlen abgerundet, also '1'. Dieser Wert wird mit dem Korrekturfaktor '0.0005' multipliziert. Dieser halbe Tausendstel wird beim Prüfen der Syntax automatisch in die weniger lesbare exponentielle Notation konvertiert: Das 'E-4' bedeutet, dass sich der Dezimalseparator in Wahrheit um vier Stellen nach links befindet. Am Schluss wird noch der ursprüngliche Wert dazugezählt. Resultat: '275.0005'.

Dieser Wert wird vorbeugend eingegeben, um den Umrechnungsfehler aufzuheben.

Hans Haesler <[email protected]>
X

QXP 6.1: Rundungsfehler ab 272 mm

Anonym
Beiträge gesamt: 22827

3. Mai 2004, 19:36
Beitrag # 2 von 7
Beitrag ID: #418757
Bewertung:
(1815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

oder prinzipiell:
(SollWert + 5.0E-5)

Hier klappt das zumindest - X, wie Y ;-)

Karsten


als Antwort auf: [#418756]

QXP 6.1: Rundungsfehler ab 272 mm

Hans Haesler
  
Beiträge gesamt: 5797

3. Mai 2004, 20:38
Beitrag # 3 von 7
Beitrag ID: #418758
Bewertung:
(1815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Karsten,

dann versuch's bitte mal mit einer Box deren 'top of bounds' bei 570 mm liegt. Dieser Wert soll auf 560 reduziert werden. Laut Deiner Vereinfachung würde das Script ungefähr so aussehen:
---
tell document 1 of application "QuarkXPress 6.1"
  set SollWert to 560
  tell current box
    set top of bounds to (SollWert + 5.0E-5)
  end tell
end tell
---
Was bei 275 mm noch aufgeht, resultiert mit einem doppelt so hohen Wert wieder in einem Rundungsfehler. Es hilft auch nichts, wenn ich die '5.0E-5' (= 0.00005) verzehnfache und "meine" '5.0E-4' (= 0.0005) einsetze.

Nochmals: Um ein korrektes Resultat zu erhalten, muss man feststellen, wieviel Mal der SollWert den SchwellWert von 272 enthält und dann das Resultat mit '5.0E-4' multiplizieren.

Einverstanden? ;-)

Hans Haesler <[email protected]>


als Antwort auf: [#418756]

QXP 6.1: Rundungsfehler ab 272 mm

Anonym
Beiträge gesamt: 22827

3. Mai 2004, 21:56
Beitrag # 4 von 7
Beitrag ID: #418759
Bewertung:
(1815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
genau darauf wollte ich hinaus (299 hätte wohl auch gereicht) &#133; ;-)

ABER:
Gremlins mit Workarounds zu umgehen, die in absehbarer Zeit(?) wieder zu Gremlins werden (können)?

ANYWAY:
Nach dem Ermitteln der gewünschten Einheiten (hier "mm") sollte der "Klassiker":
---
set SollWert to 1218 --mm
set SollWert to SollWert * 72 / 25.4
---
doch problemlos funktionieren.

Und die Modifikation des Objekts erfolgt dann mit:
Code
set top of bounds to (SollWert as point units) 

Karsten


als Antwort auf: [#418756]

QXP 6.1: Rundungsfehler ab 272 mm

Hans Haesler
  
Beiträge gesamt: 5797

4. Mai 2004, 07:57
Beitrag # 5 von 7
Beitrag ID: #418760
Bewertung:
(1815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Karsten,
Zitat Gremlins mit Workarounds zu umgehen, die in absehbarer Zeit(?) wieder zu Gremlins werden (können)?

Bis solch ein Bug gefixt ist, muss man einen Workaround einsetzen. Und wenn die neue Version da ist, das Script an das Update anpassen.

Ja, der Klassiker funktioniert problemlos. Aber ich bleibe trotzdem bei meiner Methode. Die 'top of bounds' habe ich nur als einfache Illustration des Problems gebraucht. In den "richtigen" Scripts werden alle vier Werte der Boxenränder bestimmt und zwar in einem Handler, welcher die Werte als Liste zurückgibt: return {y1, x1, y2, x2}. Abgesehen davon, gibt der Anwender seine Werte ein, und dabei muss die gewählte Masseinheit berücksichtigt werden.

Hans Haesler <[email protected]>


als Antwort auf: [#418756]

QXP 6.1: Rundungsfehler ab 272 mm

Hans Haesler
  
Beiträge gesamt: 5797

9. Mai 2004, 20:59
Beitrag # 6 von 7
Beitrag ID: #418761
Bewertung:
(1815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hello Karsten,

okay &#150; you have won! :-( (;-).

Beim Testen einer Reihe von Scripts (Näheres demnächst hier &#133;), klappte mein Workaround nicht. Zwar nur mit einem einzigen Projekt. Dennoch habe ich beschlossen, überall meine geheimnisvoll-wissenschaftliche Formulierung durch die einfachere In-Punkte-Umrechnung zu ersetzen.

Hans Haesler <[email protected]>


als Antwort auf: [#418756]

QXP 6.1: Rundungsfehler ab 272 mm

Anonym
Beiträge gesamt: 22827

10. Mai 2004, 21:28
Beitrag # 7 von 7
Beitrag ID: #418762
Bewertung:
(1815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

na, siehst du - geht doch ;-)

Im Ernst: Tut mir leid, dass dir da Produktionsgeschichten "um die Ohren fliegen", aber genau aus diesem Grunde gehe ich - im Falle des ERSTEN Fehlverhaltens - halt den "Weg des geringsten Widerstands" ... (wenn es ihn denn gibt) ;-)

Karsten

PS: Wie die Firma "Quark" Fehler behebt kann man ja am jüngsten Spross der Produktfamilie erkennen ...
http://www.quark.com/service/desktop/downloads/details.jsp?idx=545


als Antwort auf: [#418756]
X

Aktuell

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
05.02.2021 - 05.11.2021

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 05. Feb. 2021, 13.00 Uhr - Freitag, 05. Nov. 2021, 17.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/9PM

Veranstaltungen
01.03.2021 - 05.03.2021

Persönlichkeitsentwicklung

Online
Montag, 01. März 2021, 00.17 Uhr - Freitag, 05. März 2021, 00.18 Uhr

Webinar

Personal Power Coaching - Um was geht es? ​ Potenzialentfaltung: Potenzial entdecken und entfalten Talente entdecken: Deine Talente und Fähigkeiten erkennen und loslegen Gewohnheiten: schlechte Gewohnheiten durch Positive ersetzen Selbstbewusstsein stärken: Dein Bewusstsein stärken Eigendynamik entwickeln: Mehr Erfolg durch Eigenverantwortung & Disziplin Ängste kontrollieren: Ängste als Antrieb nutzen Entscheidungen treffen: Mit mehr Mut an die Sache ran! Lebensenergie steigern: Deine Lebensenergie steigern und aufrechterhalten Ziele erreichen: Ziele setzen und übertreffen! Motivationssteigerung: Mehr Erfolg durch Selbstmotivation Selbstvertrauen: Selbstvertrauen auf- und ausbauen

Details:
https://www.snfa.ch/swiss-personal-power-birolisik

Ja

Organisator: Birol Isik

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

https://www.snfa.ch/swiss-personal-power-birolisik

Neuste Foreneinträge


Bilder verschieben sich nach dem Speichern und Kopiern der Datei

Verknüpfung mit Format aufheben

Optionsfelder abhängig machen von Kontrollkästchen

Kursivierung geht bei é und É verloren

Abbildungen auf 100 % bringen

Scriptphänomen alle 16 Steps

Alternative Acrobat Pro

Affinity Designer

Objekte in Texten lassen sich nicht mehr mit Maus auswählen, nurnoch als Text mit Cursor

Welches Grafiktablett wofür?
medienjobs