[GastForen Programmierung/Entwicklung AppleScript Alle Bilder automatisch in ein neues Dokument kopieren

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

Alle Bilder automatisch in ein neues Dokument kopieren

Anonym
Beiträge gesamt: 22827

26. Sep 2006, 12:45
Beitrag # 1 von 15
Bewertung:
(3811 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,
ich bin ein Script-Anfängen und hoffe, Ihr könnt mir mit Eurem Fachwissen bei der Lösung meines Problems weiterhelfen.
Ich möchte aus einem Quarkdokument 6.5 / InDesign CS alle Bilder automatisch (von allen Seite) in ein neues Dokument (bestimmte Größe oder ein geöffnetes, kann auch immer den gleichen Namen haben) platzieren, wobei die Bild- und Rahmengrößen gleich bleiben sollen.

So eine Art Bildersammlung.

Perfekt wäre es wenn die Bildrahmen nicht manuell aktiviert werden müssten.

Kurz zur Erklärung: ich muss Andruck- bzw. Proofformen erstellen.
Es sind sehr oft gigantische Bildbände. Eine sehr mühsame Aufgabe (Apfel -c, Apfel-v usw. ;) )

Im Voraus viele herzlichen DANK für Eure HILFE.

Viele Grüße

->topolino:)
X

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

26. Sep 2006, 13:23
Beitrag # 2 von 15
Beitrag ID: #421179
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo topolino,

herzlich willkommen im PAGE-Forum! :-)

Verstehe ich es richtig: Die Bilder sollen aus einem QuarkXPress-Projekt
in ein neues QuarkXPress-Projekt kopiert werden. Und wenn dass Original
ein InDesign-CS-Dokument ist, dann soll ein neues InDesign-CS-Dokument
erzeugt und die Bilder hinüberkopiert werden.

Wäre es denkbar, dass man dabei die Dokumente unter einem neuen Namen
sichert und dann alle Boxen (oder Rahmen) löscht, welche kein Bild
enthalten?

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Anonym
Beiträge gesamt: 22827

26. Sep 2006, 13:31
Beitrag # 3 von 15
Beitrag ID: #421180
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
herzlich willkommen im PAGE-Forum! :-)

[color=blue]DANKE ich habe schon lange nach so einem Forum gesucht,
ich will noch viel lernen :)[/color]

Verstehe ich es richtig: Die Bilder sollen aus einem QuarkXPress-Projekt
in ein neues QuarkXPress-Projekt kopiert werden. Und wenn dass Original
ein InDesign-CS-Dokument ist, dann soll ein neues InDesign-CS-Dokument
erzeugt und die Bilder hinüberkopiert werden.

JA genau so sollte es funktionieren

Wäre es denkbar, dass man dabei die Dokumente unter einem neuen Namen
sichert und dann alle Boxen (oder Rahmen) löscht, welche kein Bild
enthalten?

Das Original soll nicht geändert werde, das Andruck- bzw. Proofdokument ja.

LG :)


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

26. Sep 2006, 13:45
Beitrag # 4 von 15
Beitrag ID: #421181
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo topolino,

wie sieht denn ein typisches QuarkXPress-Projekt aus?
Welches Seitenformat, wieviele Seiten, Anzahl Bilder usw.

Sollen wirklich nur die Bildboxen stehenbleiben? Oder gibt
es auch leere Bild-, Grafik- oder leere Textboxen mit einer
Hintergrundfarbe, welche nicht gelöscht werden dürfen?

P.-S.: Bitte nicht den ganzen Text des Vorredners wieder-
holen. In den meisten Fällen versteht man auch so, worauf
sich eine Antwort bezieht.

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Anonym
Beiträge gesamt: 22827

26. Sep 2006, 13:58
Beitrag # 5 von 15
Beitrag ID: #421182
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Mehr als 100 Seiten Bild- und Textrahmen, wobei für meine Belange nur Bild-/Grafikrahmen wichtig sind. Originaldokumente haben verschiedene Formate, das Zieldokument für Andruck 63,5 x 98 cm, für Proof 59,4 x 84,1. Die Proof- Andruckformen sind sehr oft mehrseitig.

Danke

LG, topolino


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

26. Sep 2006, 14:27
Beitrag # 6 von 15
Beitrag ID: #421183
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo topolino,

dann ist es also nichts, mit meiner Idee. :-(

Wenn die Seitenformate von Original- und Proofdokument nicht
identisch sein dürfen, dann wird es sehr kompliziert ...

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Anonym
Beiträge gesamt: 22827

26. Sep 2006, 14:38
Beitrag # 7 von 15
Beitrag ID: #421184
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
schade, aber ich werde nicht aufgeben -> wie kompliziert kann
so was werden?
Hast Du mir vielleicht ein Tipp (Buch, Link...) wo es Grundlagen
zu der Thematik gibt.

Ich danke Dir

LG topolino :)


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

26. Sep 2006, 15:06
Beitrag # 8 von 15
Beitrag ID: #421185
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo topolino,

"nicht aufgeben": Das ist die einzig richtige Einstellung für einen Scripter!

Ach, das kann sehr, sehr kompliziert werden. Deshalb habe ich den umgekehrten
Weg vorgeschlagen: Das Dokument benutzen, so wie es ist und nur die Boxen
stehenlassen, welche man braucht.

Das Thema "Lernhilfen" wurde kürzlich hier schon mal angesprochen.
Im Thema "Literatur zu "AppleScript""
http://www.page-online.de/page/forum/viewthread/3049/

Es ist notwendig, sich mit den allgemeinen Grundlagen zu befassen, bevor man
ein grosses QuarkXPress- oder InDesign-Script in Angriff nimmt.

Dennoch hier schon mal eine erste Lektion.

Aufgepasst 1: Das XPress-Projekt muss zuerst manuell unter einem anderen
Namen gesichert werden, bevor das folgende Script gestartet wird.

Aufgepasst 2: Bitte nicht auf einen 100-Seiter loslassen. Das könnte
etwas dauern und weil man nicht sieht, was geschieht, könnte man
meinen, die Maschine sei eingefroren. In einem richtigen Script müsste
man eine Fortschrittsbalken einbauen, damit man sieht, wie lange man
sich noch gedulden muss.
---
tell document 1 of application "QuarkXPress 6.5"
   activate
   repeat with i from (count of generic boxes) to 1 by -1
      if box type of generic box i is not in {picture box type, graphic box type} then
         try
            delete generic box i
         end try
      end if
   end repeat
   display dialog "Fertig." buttons "OK" default button 1 with icon 1 giving up after 1
end tell
---
Und so funktioniert es:
Die erste Zeile bildet mit der letzten einen sogenannten 'tell'-Block,
innerhalb dessen sich die Befehle, welche XPress ausführen soll, befinden.
Das 'activate' bringt QuarkXPress in den Vordergrund.

Dann folgt eine Wiederholungsschleife, welche mit 'repeat' beginnt und
mit 'end repeat' endet. Normalerweise benutzt man eine solche Konstruktion:
---
repeat with i from 1 to count of generic boxes
---
... welche bedeutet: Wiederhole mit i von 1 bis zur Anzahl Boxen

Dabei wird ein automatischer Zähler benutzt, welcher bei jedem Umgang um eins
erhöht wird. Als Variablen-Name wird hier das unscheinbare 'i' eingesetzt.
Das ist ein allgemeiner Standard (i für 'iteration' = Wiederholung).

Dieser Variablen muss nach dem 'from' ein Startwert zugewiesen werden.
Und nach dem 'to' muss ein Endwert bestimmt werden.

Weil aber Boxen entfernt werden, muss die Schleife rückwärts laufen. Sonst
gerät das Script bald einmal aus dem Tritt. Deshalb wird als Startwert die
Anzahl Boxen eingesetzt und als Endwert eine '1'. Und zusätzlich muss noch
der Schrittwert definiert werden: by -1 (also minus 1 = rückwärts).

Dann kommt eine Testschleife, welche mit 'if' beginnt und mit 'end if' endet.
Es wird geprüft, ob sich der Boxentyp der aktuellen Box in der Liste
befindet. Wenn nicht, wird die Box entfernt.

Der delete-Befehl befindet sich zur Sicherheit in einem 'try'-Wickel.
Es wird versucht, die Box zu löschen. Falls dies aus irgendeinem Grund nicht
gelingt, wird eine Fehlermeldung (und ein Abbruch des Scripts) vermieden.
Normalerweise wird der Wickel mit 'on error' erweitert, damit darin eine
Zählervariable hochgezählt werden kann und man somit eine Angabe hat,
wie oft es ein Problem gegeben hat.

Soviel für heute ...

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

TMA
Beiträge gesamt: 399

27. Sep 2006, 06:00
Beitrag # 9 von 15
Beitrag ID: #421186
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo hans,

mal ne frage: würde das script so schneller laufen? da braucht man nicht durch die boxen repeaten (was ja sehr lange dauert)

tell application "QuarkXPress Passport"
   tell front document
      set DeleteBoxList to {group box type, line box type, table box type, text box type, xtension box type}
      repeat with x in DeleteBoxList
         delete (every generic box whose box type = x)
      end repeat
   end tell
end tell


übrigends sehr interessant deine methode zum boxen löschen. wenn man ja vorwärts repeatet und boxen löscht werden ja irgendwann die falschen gelöscht. deswegen hab ich bisher immer mit der  uniqueID gearbeitet.
auf die idee rückwärts zu löschen muss man erst mal kommen... nicht schlecht. werd ich mal testen...

gruß
TMA


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

27. Sep 2006, 07:10
Beitrag # 10 von 15
Beitrag ID: #421187
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo TMA,

Deinen Vorschlag müsste der topolino mit einem richtigen Dokument
testen. Denn ich befürchte, dass bei einem so globalen Entfernen
XPress abstürzen könnte.

Deshalb habe ich für die erste Demonstration bewusst die langsame –
aber sicherere Methode gewählt. Und wenn man diese in ein
Scriptobjekt steckt, welches mit do script aufgerufen wird, dann sollte
die Ausführungszeit in erträglichem Rahmen bleiben.

Zu Deiner Liste von Boxentypen: group box type braucht es nicht,
denn mit every generic box werden einzelne Boxen angesprochen.
Zum Glück: Mit Gruppen könnten auch Bildboxen abgeräumt werden ...
Und xtension box type heisst nun user box type.

Und ja, auf die rückwärtslaufende Schleife bin ich gekommen, als mal
bei einer traditionellen die nächste Box nicht gefunden werden konnte.
Aber das war zu einer Zeit, als es uniqueID noch nicht gab ...

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

TMA
Beiträge gesamt: 399

27. Sep 2006, 07:25
Beitrag # 11 von 15
Beitrag ID: #421188
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi hans,
danke für die info.
wusste gar nicht das ein script im script (do script) schneller läuft. bisher arbeite ich ja nur mit handler. muss ich mal testen wieviel schneller das ist.

Zitat Und xtension box type heisst nun user box type.


bei xpress 7 oder wie? xtension box type hab ich aus dem 6.5x dictionary...

gruß
TMA


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Anonym
Beiträge gesamt: 22827

27. Sep 2006, 09:44
Beitrag # 12 von 15
Beitrag ID: #421189
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
dein script habe ich ausprobiert, funktioniert supper :) Danke.

Ich habe noch ein wenig über dieses Thema gegrübelt...

... wenn ich jetzt die Größe des Dokumentes ändern würde (über script)
... dann würde noch das zusammen stellen der Abb. fehlen, nebe- und
untereinander, falls benötigt würden neue Seiten hinzugefügt (natürlich auch über sctipt)
Ist so was denkbar???
Es könne ja mehrere scripte sein...

Ich habe über Bildkataloge etwas gelesen, aber leider nicht viel kapiert :(

Ich glaube jetzt hat mich das SCRIPTER-VIRUS erwischt ;)
Jetzt will ich es echt wissen :)

LG topolino


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

27. Sep 2006, 12:11
Beitrag # 13 von 15
Beitrag ID: #421190
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo topolino,

bitteschön. Und jetzt noch das Script von TMA ausprobieren!

Das Neu-Zusammenstellen der Bilder ist fast nicht lösbar, weil das Verwalten
des Raumes per Script sehr, sehr schwierig ist. Beim manuellen Verschieben
hat man ja immer die aktuelle Situation vor Augen und kann sich optisch mit
dem Plazieren der nächsten Box befassen. Ein Script müsste Buch führen über
die belegte Fläche, die Grösse der aktuell zu positionierenden Box und den
freien Raum analysieren. Es wäre schon schwierig bei modularen Formaten
(Viertelseite, Achtelseite usw.). Doch bei willkürlichen Grössen ...

Doch vielleicht lässt sich doch etwas machen. Bitte sende mir ein typisches
Dokument. Aber nur etwa 10 Seiten. Mit leeren Bildboxen. Und ein zweites
Dokument mit dem Proof-Format und die Bildboxen wie gewünscht plaziert.

Es tut mir echt leid für Dich wegen dem SCRIPTER-VIRUS. Das bringst Du
kaum mehr los. ;-)

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

Hans Haesler
  
Beiträge gesamt: 5826

27. Sep 2006, 12:17
Beitrag # 14 von 15
Beitrag ID: #421191
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo TMA,

mit QuarkXPress 5 wurde in der "QuarkXPressTM Suite" die Property "user box"
eingeführt. Damals wurde darauf hingewiesen, dass nun diese neue Bezeichnung
anstelle von "xtension box" benutzt werden sollte.

In der Suite "QuarkXPressTM Ancillary Objects" befindet sich aber in der
Aufzählung der Property "box type" (in der Class "box properties") immer noch
xtension box type.

Und jetzt bin ich nicht mehr sicher, ob user box type überhaupt anerkannt
wird. Ich fürchte nicht, denn wie Du siehst, wird type als Variable behandelt.
Leider habe ich keine XTension, mit welcher ich dies prüfen könnte. Vielleicht
sollte ich eine entsprechende Demoversion herunterladen ...

Zum Testen der Beschleunigung mit der 'do script'-Methode habe ich ein neues
Thema eröffnet: http://www.page-online.de/page/forum/viewthread/3097/

Gruss, Hans


als Antwort auf: [#421178]

Alle Bilder automatisch in ein neues Dokument kopieren

TMA
Beiträge gesamt: 399

27. Sep 2006, 12:38
Beitrag # 15 von 15
Beitrag ID: #421192
Bewertung:
(3810 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
besten dank hans,
schau ich mir mal an...

gruß
TMA


als Antwort auf: [#421178]
X