[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Fehler 30615 bei Abfrage des "type of image"

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

Fehler 30615 bei Abfrage des "type of image"

Wortsalat
Beiträge gesamt: 91

13. Jun 2025, 09:11
Beitrag # 1 von 10
Bewertung:
(458 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

ich habe ein Problem, bei dem ich die Ursache nicht finden kann.

- Innerhalb einer InDesign Datei habe ich InDesign Dateien eingebunden.
- Diese kann ich mit einem Script gegen andere InDesign Dateien (mit Fremdsprache) austauschen.
- Nach dem Austauschen der InDesign Dateien werden bei diesen die Rahmengrößen angepasst.
- Damit beim Anpassen nur InDesign Dateien berücksichtigt werden, frage ich den "type of image" ab.

Das lief soweit eigentlich alles immer problemlos.

Gestern tauchte allerdings plötzlich beim Einpassen der Fehler 30615 auf. Und zwar nicht bei den eingebundenen InDesign Dateien sondern bei einigen eingebundenen Bildern (.png, .eps). Da frage ich mich, warum die überhaupt berücksichtigt werden, wenn ich zuvor auf den Typ InDesign prüfe.



For n = 1 to myDoc.allGraphics.count
Set Datei = myDoc.allGraphics.Item(n)
If Datei.ImageTypeName = "InDesign" then
Set myFrame = Datei.Parent
myFrame.Fit idFitOptions.idFrameToContent
End if
Next



- Bei dem InDesign Dokument werden keine Fehler angezeigt. Alle Verknüpfungen sind ok.
- Preflight - alles ok.
- Ein neues Verknüpfen der fehlerhaften Grafiken bringt nichts.
- Speichern der Datei als IDML und dann wieder Indd bringt auch nichts.
- Der Fehler ist erst weg, wenn man die Bilder, bei denen der Fehler auftritt, löscht und ganz neu im Dokument platziert.



Alternativ würde ich jetzt nicht den Typ sondern die Dateiendung prüfen. Aber wenn man schon den Typ abfragen kann, wäre es der einfachere Weg.

Hat jemand eine Idee, wo es haken könnte?

Grüße Marcel
X

Fehler 30615 bei Abfrage des "type of image"

Martin Fischer
  
Beiträge gesamt: 12891

13. Jun 2025, 09:48
Beitrag # 2 von 10
Beitrag ID: #589698
Bewertung:
(448 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marcel,

mit der Zeile
Code
If Datei.ImageTypeName = "InDesign" then 

weißt Du der Eigenschaft "Datei.ImageTypeName" den Wert "InDesign" zu.

= ist ein Zuweisungsoperator.

Du willst aber vergleichen.
Dazu benötigst Du den Vergleichsoperator "==" (gleich) oder "===" (strikte Gleichheit).


Siehe auch https://developer.mozilla.org/...vergleichsoperatoren.

Mich verwundert allerdings etwas, dass die Zuweisung keinen Fehler wirft, denn ImageTypeName ist readonly.


als Antwort auf: [#589697]
(Dieser Beitrag wurde von Martin Fischer am 13. Jun 2025, 09:51 geändert)

Fehler 30615 bei Abfrage des "type of image"

Wortsalat
Beiträge gesamt: 91

13. Jun 2025, 09:50
Beitrag # 3 von 10
Beitrag ID: #589699
Bewertung:
(444 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

ich habe vergessen zu erwähnen, das Script ist VBScript.
Da ist " = " beim Vergleich richtig.

Grüße Marcel


als Antwort auf: [#589698]

Fehler 30615 bei Abfrage des "type of image"

Martin Fischer
  
Beiträge gesamt: 12891

13. Jun 2025, 09:52
Beitrag # 4 von 10
Beitrag ID: #589700
Bewertung:
(443 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Sorry, war blind.


als Antwort auf: [#589699]

Fehler 30615 bei Abfrage des "type of image"

Gerald Singelmann
  
Beiträge gesamt: 6294

13. Jun 2025, 19:01
Beitrag # 5 von 10
Beitrag ID: #589705
Bewertung:
(396 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ohne jegliche VB Kenntnis: Das klingt, also hätten diese Bilder intern keinen Type, so dass das Abfragen des Types einen Fehler wirft.
Wie auch immer das passieren kann, dass ein Bild keinen Type hat. Vielleicht, weil sie per Zwischenablage eingefügt wurden? Keine Ahnung.

Der Weg über die Extension oder ein try-catch Block (wie auch immer das in VB aussieht) scheinen angemessen.


als Antwort auf: [#589697]

Fehler 30615 bei Abfrage des "type of image"

Martin Fischer
  
Beiträge gesamt: 12891

13. Jun 2025, 23:07
Beitrag # 6 von 10
Beitrag ID: #589707
Bewertung:
(351 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Das folgende JavaScript

Code
var graphics = app.activeDocument.allGraphics; 
for (var i = 0; i < graphics.length; i++) {
var g = graphics[i];
if (g.constructor.name === "Image") {
$.writeln("Bildtyp: " + g.imageTypeName);
} else {
$.writeln("Nicht-Image: " + g.constructor.name);
}
}



liefert mir bei einem Dokument mit unterschiedlichen Bildern und platzierten INDDs folgendes Ergebnis:

Zitat Bildtyp: JPEG
Bildtyp: Photoshop
Bildtyp: JPEG
Nicht-Image: ImportedPage
Nicht-Image: ImportedPage


Demnach werden die platzierten InDesign-Dateien nicht mit "Image"-Konstruktor erkannt, sondern als "ImportedPage".


als Antwort auf: [#589705]
(Dieser Beitrag wurde von Martin Fischer am 13. Jun 2025, 23:55 geändert)

Fehler 30615 bei Abfrage des "type of image"

Gerald Singelmann
  
Beiträge gesamt: 6294

14. Jun 2025, 22:12
Beitrag # 7 von 10
Beitrag ID: #589708
Bewertung:
(197 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jetzt hast du mich neugierig gemacht.
Code
  var doc = app.activeDocument; 
for ( var n = 0; n < doc.allGraphics.length; n++ ) {
try {
$.writeln( doc.allGraphics[n].imageTypeName );
} catch(e) {
$.writeln( e );
}
}


Ein Dokument mit platziertem
- indd
- jpeg
- png
- über die Zwischenablage eingefügtem Bild

...ergibt diese Ausgabe:

Code
Error: The property is not applicable in the current state. 
PNG
JPEG
InDesign


tl;dr: Wortsalat hat gepastete Bilder und diese haben intern keinen imageTypeName.
Da hilft nur Try-Catch oder ein ganz anderer Ansatz.

Man gewöhnt sich mit der Zeit daran, dass InDesign ständig Objekte hat, bei denen eine Property nicht abfragbar ist.


als Antwort auf: [#589697]

Fehler 30615 bei Abfrage des "type of image"

Wortsalat
Beiträge gesamt: 91

16. Jun 2025, 07:34
Beitrag # 8 von 10
Beitrag ID: #589710
Bewertung:
(119 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen,

danke für die weitere Suche nach der Ursache.
Tatsächlich wird es so sein, dass einige Bilder über die Zwischenablage eingefügt wurden.
Wenn ein solches Bild gelöscht und anschließend sauber platziert wird, ist der Fehler auch weg.
Also, zukünftig sauberer arbeiten ;-).

Danke und Grüße
Marcel


als Antwort auf: [#589708]

Fehler 30615 bei Abfrage des "type of image"

Gerald Singelmann
  
Beiträge gesamt: 6294

16. Jun 2025, 08:24
Beitrag # 9 von 10
Beitrag ID: #589711
Bewertung:
(111 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich hab mal Gemini gefragt, ob es try/catch auch in VBA gibt.

Ja.

Zitat Ja, in VBA gibt es ein Pendant zum try {} catch() {} Konstrukt in JavaScript. Es handelt sich um die Fehlerbehandlung mit On Error GoTo und On Error Resume Next.


https://learn.microsoft.com/...p/on-error-statement


als Antwort auf: [#589710]

Fehler 30615 bei Abfrage des "type of image"

Wortsalat
Beiträge gesamt: 91

16. Jun 2025, 08:35
Beitrag # 10 von 10
Beitrag ID: #589712
Bewertung:
(107 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich werde mich in absehbarer Zeit mehr mit Java Script befassen (müssen).
Das Ende von VB-Script wurde bereits bei Microsoft eingeläutet. Bevor es irgendwann nicht mehr läuft, muss ich wohl so oder so auf Java umstellen. Hätte auch den Vorteil, dass sich damit deutlich mehr Leute auskennen.

Da ich in Excel viel mit VBA mache und InDesign bei uns eng verzahnt mit Excel läuft, hatte sich VB-Script angeboten.
Vieles kann man einfach übernehmen.


als Antwort auf: [#589711]
X