[GastForen Programmierung/Entwicklung AppleScript Grobdaten durch Feindaten ersetzen

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

Grobdaten durch Feindaten ersetzen

Anonym
Beiträge gesamt: 22827

28. Jun 2005, 21:36
Beitrag # 1 von 12
Bewertung:
(3684 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

ich suche ein Script, welches die platzierten Layoutdaten durch Feindaten ersetzt. - ähnlich dem Script vom 17.Nov.2004:
"Layoutdaten (tif/eps) gegen Feindaten (jpg) tauschen QXP4.11"

Nur sind bei mir die Layoutdaten als tif/eps (mit Suffix)
die Feindaten als psd (ohne Suffix) abgelegt.
Die Ordnerstruktur ist jeweils gleich.
Die Layoutdaten liegen immer im Ordner "Layout", der sich jeweils im Feindaten-Odner befindet. Die Namen sind - bis auf die Suffix - identisch.

Mir würde auch das bereits vorhandene Script "SuffixloseBilderLinken4.11_01d" helfen, um es evtl. auf meine Bedürfnisse anzupassen.

Gruesse aus dem heissen Schwarzwald
willem
X

Grobdaten durch Feindaten ersetzen

Hans Haesler
  
Beiträge gesamt: 5826

4. Jul 2005, 09:36
Beitrag # 2 von 12
Beitrag ID: #419818
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,

bitte entschuldige meine verspätete Antwort. Ich war im Urlaub. :-)

Benötigst Du das Script für QuarkXPress 4.11? Die Anpassung des erwähnten Scripts sieht so aus:
Den Pfad der Layout-Datei feststellen, den Namen der Datei ausziehen, den neuen Pfad zusammensetzen.
Dabei werden für den Pfad zum Feinbildordner die Elemente 1 bis drittletztes des Originalpfades
genommen und daran ein Doppelpunkt und den Namen des Bildes ohne Suffix angehängt.

Vorgängig müssen die Attribute gespeichert werden. Das neue Bild wird importiert und die Attribute
werden wieder zugewiesen.

Ich werde gelegentlich das Script entsprechend angepassen und mich wieder melden.

Gruss, Hans


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

swish
Beiträge gesamt: 75

4. Jul 2005, 13:09
Beitrag # 3 von 12
Beitrag ID: #419819
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,

sind Deine Layoutdaten von Helios ? Wenn ja, dann kann ich Dir eine Betaversion meines OPI-Tauschen-Skripts zukommen lassen ....

Das schaut im Layoutbild nach dem Pfad des Feinbildes, es müssen also nicht die Feinbilder im Übergeordneten Ordner zu den Layouts liegen ....

Gruß,

Stephan


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Hans Haesler
  
Beiträge gesamt: 5826

4. Jul 2005, 17:36
Beitrag # 4 von 12
Beitrag ID: #419820
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,

ich habe nun ein anderes Script abgeändert. Hier die Codezeilen, welche den neuen Pfad zusammensetzen:
---
set newName to text 1 thru -5 of (text item -1 of imgPath)
set newPath to ((text items 1 thru -3 of imgPath) as string) & ":" & newName

---
Das Droplet (für QXP 4.11 und 5.01) ist unterwegs zu Dir.

Du kannst natürlich ebenfalls das Angebot von Stephan annehmen und sein Script testen. :-)

Gruss, Hans


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Anonym
Beiträge gesamt: 22827

7. Jul 2005, 12:06
Beitrag # 5 von 12
Beitrag ID: #419821
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
hallo s_wissing,

vielen Dank
(war ebenfalls bis heute in Urlaub)
Verwendet wird Quark 4.11 / Helios-Server
Werde das Script von Hans testen, und ggf. mich nochmals melden.

Gruesse willem


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Anonym
Beiträge gesamt: 22827

7. Jul 2005, 18:23
Beitrag # 6 von 12
Beitrag ID: #419822
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo willem, Forum,

ich weiß nicht, ob es für deine Anwendung eine Rolle spielt. Ich will Dir aber vorsichtshalber das Problem schildern, das ich mit den 4er Versionen von Quark hatte. Beim Austausch eines Bildes müssen ja zuvor die Bildparameter und auch einige Boxparameter gesichert werden, damit man sie später auf das ausgetauscht Bild anwenden kann.
Ich hatte das schreckliche Problem mit "text outset" in der "picture box".
[code:1]
tell application "QuarkXPress"
 tell document 1
  tell picture box 1
   set prevTextoutset to text outset
   set image 1 to alias "i:Bild01.eps"
   set text outset to prevTextoutset
   set newTextoutset to text outset
  end tell
 end tell
end tell
return {{prevTextoutset}, {newTextoutset}}
--> {{"10 pt"}, {"10 pt"}}[/code:1]
Soweit so gut, möchte man meinen.
Das Problem ist nur, dass in den Einstellungen für den Textumfluss der Bildbox in der XPress-Application
Oben: 10
Links: 20
Unten 30
Rechts 40

zuvor eingestellt war!

Ich habe damals keine Lösung für das Problem gefunden.
Unter Version 6.x scheint es jetzt zu funktionieren.
Ich trau mich nur schon gar nicht mehr an einem Dokument Veränderungen vorzunehmen. Es reicht ja gar nicht aus das Vorher und Nachher im Programm miteinander zu vergleichen, wenn man für ein abgefragtes orginal Attribut den falschen Wert geliefert bekommt!


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

swish
Beiträge gesamt: 75

8. Jul 2005, 07:57
Beitrag # 7 von 12
Beitrag ID: #419823
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo mal wieder,

wenn ich mich nochmal einmischen darf:

wenn ich großere quark operationen per script ablaufen lasse, habe ich mir meist noch ein sicherheitsmechanismus gebaut (oder viel besser : gepfuscht).

bevor etwas passiert lasse ich mir von allen xpress seiten ein eps rechnen.

repeat with i from 1 to count of pages
 set Chars to the count of DocName
 if Chars is greater than 20 then
     set DocName to text 1 thru 20 of DocName
 end if
 set FilePath to Ausgabe & DocName & i & ".eps"
 save page i in FilePath EPS format PC color EPS data binary EPS scale 100 with transparent page
end repeat

das gleiche mache ich dann nachdem das script gelaufen ist.

das Ergebnis lasse ich in einen distiller hotfolder speichern. die fertigen PDFs werden dann von Photoshop geöffnet und mit dem Ebenenmischmodus "Differenz" übereinandergelegt und als PSD abgespeichert.

So kann man ganz genau nachvollziehen, was sich geändert hat.

on CheckInPhotoshop(OldDoc, NewDoc)
 
 tell application "Adobe Photoshop CS2"
  activate
  open alias OldDoc
  open alias NewDoc
 
  tell the current document
   select all
   copy
   close without saving
  end tell
  tell the current document
   paste
   set the blend mode of layer 1 to difference
  end tell
 
  set PSDsName to text 1 thru -5 of OldDoc & ".psd"
  save the current document in file PSDsName as Photoshop format
  close the current document
 
 end tell
 
 tell application "Finder"
  move file OldDoc to KillWorkflow with replacing
  move file NewDoc to KillWorkflow with replacing
 end tell
 
end CheckInPhotoshop

Ist zwar eine etwas umständliche Geschichte, bring aber ein gutes Maß an Sicherheit. Vielleicht bietet sich ja sowas auch für Dich an ...

Beste Grüße,

Stephan


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Hans Haesler
  
Beiträge gesamt: 5826

8. Jul 2005, 10:19
Beitrag # 8 von 12
Beitrag ID: #419824
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stephan,

ein interessanter Ansatz, aber sehr aufwendig. Doch manchmal muss man sich für eine Kontrolle genug Zeit nehmen.


Hallo Peter,

wenn der Textumfluss vier Werte hat, dann kannst Du das Bild per Script austauschen, ohne dass diese Einstellung
geändert wird. Die Lösung ist ganz einfach: Den 'text outset' nicht speichern und – vor allem nicht neu zuweisen.

Der Textumfluss hat nur einen Wert, wenn die Form der Box nicht rechteckig ist, oder wenn der Freistellpfad als
Basis genommen wurde. Auch in diesem Fall bleibt der 'text outset' erhalten.

Es gibt aber ein Problem, wenn der Umflusspfad verändert worden ist. Dann wird ein Dialog angezeigt, in welchem der
Anwender gefragt wird: "OK, diesen Bildumlauf zu löschen?" Nach dem Klick auf "Nein" wird das neue Bild importiert und
der alte Umflusspfad wird entsprechend der Bildgrösse verändert. Bei 100% ist alles okay. Aber mit anderen Werten muss
man den Pfad neu zuweisen und wieder verändern. Man kann also "Ja" klicken und hat einen Schritt weniger auszuführen.

Gruss, Hans


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Anonym
Beiträge gesamt: 22827

8. Jul 2005, 12:28
Beitrag # 9 von 12
Beitrag ID: #419825
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

das ist jetzt seit Jahren die erste schlüssige Antwort zu meinem Problem!
Zitat Den 'text outset' nicht speichern und – vor allem nicht neu zuweisen.

Da habe ich mich durch meine eigene Vorsichtsmaßnahme in die Irre führen lassen.
Danke!


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Hans Haesler
  
Beiträge gesamt: 5826

11. Jul 2005, 09:02
Beitrag # 10 von 12
Beitrag ID: #419826
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Peter,

bitteschön. Hättest Du mich doch schon früher gefragt! ;-)

Spass beiseite. Es sind nur zwei Attribute der Bildbox zu speichern. Nämlich 'flipped horizontal' und
'flipped vertical', die Spiegelung. Aber diese sind je nach XPress-Version unterschiedlich zu behandeln.

Bis und mit QuarXPress 4.11:
---
tell document 1 of application "QuarkXPress 4.11"
    tell current box
        set imgProps to properties of image 1
        set flippedHoriz to flipped horizontal
        set flippedVert to flipped vertical
        -- neues Bild laden, Attribute zuweisen
    end tell
end tell

---
Für QuarkXPress 5.01 muss eine vorhandene vertikale Spiegelung aufgehoben werden, bevor man
die Properties des Bildes speichert. Sont ist das Resultat nach dem Zuweisen falsch:
---
tell document 1 of application "QuarkXPress 5.01"
    tell current box
        set flippedHoriz to flipped horizontal
        set flippedVert to flipped vertical
        if flippedVert is true then set flipped vertical to false
        set imgProps to properties of image 1
        if flippedHoriz is true then set flipped horizontal to false
        -- neues Bild laden, Attribute zuweisen
    end tell
end tell
Code
Und mit QuarkXPress 6.x muss man auch eine eventuelle horizontale Spiegelung zurücksetzen: 

tell document 1 of application "QuarkXPress 6.5"
   tell current box
      set flippedHorz to flipped horizontal
      set flippedVert to flipped vertical
      if flippedHorz is true then set flipped horizontal to false
      if flippedVert is true then set flipped vertical to false
      set imgProps to properties of image 1
      -- neues Bild laden, Attribute zuweisen
   end tell
end tell

---
Gruss, Hans


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Anonym
Beiträge gesamt: 22827

14. Jul 2005, 14:20
Beitrag # 11 von 12
Beitrag ID: #419827
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Forum,

danke für die Infos,
für meinen Teil habe ich keine Probleme mit Umfliessen oder Bildboxen,
da ich die Zuweisung der Feindaten brauche um per "Ausgabe Sammeln" die Archivierung zu ermöglichen.

Gruss und Danke!!!
willem


als Antwort auf: [#419817]

Grobdaten durch Feindaten ersetzen

Hans Haesler
  
Beiträge gesamt: 5826

14. Jul 2005, 18:01
Beitrag # 12 von 12
Beitrag ID: #419828
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Willem,

bitteschön.

Hier, in unserer Produktion, habe ich ein ähnliches Problem mit einem Droplet gelöst.
Siehe das neue Thema "QXP: Für Ausgabe sammeln ... per Script".
http://www.page-online.de/page/forum/viewthread/2665/

Gruss, Hans


als Antwort auf: [#419817]
X