[GastForen Programmierung/Entwicklung JavaScript Photoshop CS6, Zugriff auf API via VB6

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

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

2. Nov 2016, 19:31
Beitrag # 1 von 13
Bewertung:
(20405 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo miteinander,

bitte verzeiht mir, dass ich diese Frage hier stelle. Ich weiß, dass sie streng genommen off-topic ist -- aber ich weiß nicht, wo sonst ich einen hilfsbereitsn Menschen finden könnte, der sich damit auskennt.

Also: Ich möchte von einem VB6-Programm auf die API von PS CS6 zugreifen. Insbesondere möchte ich die Qualität beim Abspeichern von JPGs einstellen.

Dafür gibt es ein Objekt namens JPEGSaveOptions. Alle Beispiele, die ich in Foren gefunden habe, sind JavaScripte und betreffen zudem ältere PS-Versionen, helfen mir also nicht.

Wie bekomme ich dieses Objekt und seine Eigenschaft Quality von VB6 aus in den Griff? Was immer ich versuche -- alles endet in Fehlermeldungen wie "Automatisierungsfehler", "ActiveX-Komponente kann dieses Objekt nicht erstellen", "Server nicht verfügbar" oder so ähnlich.

Für jeden Hinweis dankbar,
Wolfgang

(Dieser Beitrag wurde von helvetica am 2. Nov 2016, 19:33 geändert)
X

Photoshop CS6, Zugriff auf API via VB6

pixxxelschubser
Beiträge gesamt: 1708

2. Nov 2016, 22:31
Beitrag # 2 von 13
Beitrag ID: #553649
Bewertung:
(20367 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,
zuerst einmal: von VB6 habe ich null Ahnung. Ich verwende auch kein VBS. Und auch kein VB-Net oder andere VB-Derivate.

Ich bevorzuge plattformübergreifend [JS]

Aber VBS-Beispiele finden sich doch zuhauf. Hier ein bisschen VBS-Syntax. Keine Ahnung, ob und wie das mit VB6 kompatibel ist. Aber vielleicht hilft's ja trotzdem ein bisschen.

Code
Set jpgSaveOptions = CreateObject( "Photoshop.JPEGSaveOptions" ) 
jpgSaveOptions.EmbedColorProfile = True
jpgSaveOptions.FormatOptions = 1 ' psStandardBaseline
jpgSaveOptions.Matte = 1 ' psNoMatte
jpgSaveOptions.Quality = 1
outFileName = convertedFolderRef.Path & "\Temp.jpg"
docRef.SaveAs outFileName, jpgSaveOptions, True, extType



als Antwort auf: [#553644]
(Dieser Beitrag wurde von pixxxelschubser am 2. Nov 2016, 22:32 geändert)

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

2. Nov 2016, 23:02
Beitrag # 3 von 13
Beitrag ID: #553650
Bewertung:
(20354 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo pixxxelschubser,

in VB6 müsste das m.M. so aussehen:

Dim jpgSaveOptions As New Photoshop.JPEGSaveOptions
jpgSaveOptions.Quality = 3

Der Dim-Befehl wird von PS anstandslos akzeptiert.

'jpgSaveOptions.Quality = 3' verursacht die Fehlermeldung 'Objekterstellung durch ActiveX-Komponente' nicht möglich.

Auf meinem PC sind die folgenden Verweise installiert:

Adobe Photoshop CS6 Type Library
Adobe Photoshop CS6 Object Library

Diese Verweise müssten eigentlich reichen, tun es aber offenbar nicht.

Vielen Dank für Deinen Hilfeversuch!

Gruß
Wolfgang


als Antwort auf: [#553649]

Photoshop CS6, Zugriff auf API via VB6

pixxxelschubser
Beiträge gesamt: 1708

2. Nov 2016, 23:06
Beitrag # 4 von 13
Beitrag ID: #553651
Bewertung:
(20352 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Dim jpgSaveOptions


als Antwort auf: [#553650]

Photoshop CS6, Zugriff auf API via VB6

Henry
Beiträge gesamt: 967

3. Nov 2016, 09:02
Beitrag # 5 von 13
Beitrag ID: #553656
Bewertung:
(20216 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ helvetica ] …aber ich weiß nicht, wo sonst ich einen hilfsbereitsn Menschen finden könnte, der sich damit auskennt.…

Besser aufgehoben wäre der Thread zumindest im Photoshop-Unterforum.
Dort gibt es nämlich sogar schon eine ähnliche Problemstellung mit VBScript, siehe:
http://www.hilfdirselbst.ch/...-Script_P542141.html
Vielleicht hilft dir das auch weiter???


als Antwort auf: [#553644]

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

3. Nov 2016, 10:49
Beitrag # 6 von 13
Beitrag ID: #553658
Bewertung:
(20167 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Henry,

danke für Deine Hinweise. Hat leider alles nichts gebracht. Mittlerweile habe ich die Ursache des Problems herausgefunden: VB6 zeigt zwar einen Verweis auf die 'Adobe Photshop CS6 Object Library' an -- doch die entsprechende Datei fehlt. Im 'Verweise'-Dialog von VB6 kann ich (weil der Pfad zu lang ist) nur erkennen, dass diese Datei sich im CS6-Programmverzeichnis, Unterverzeichnis 'Required', befinden soll. Aber weder in diesem Unterverzeichnis noch in dessen Unterverzeichnissen ist eine Klassenbibliothek zu finden.

Keine Ahnung, wie ich den Namen dieser DLL herausfinden kann, geschweige denn, wo ich diese Datei herunterladen kann.

Photoshop ist wirklich ein hochprofessionelles Programm...

Nochmals danke an alle. Ich geb's jetzt auf und schaue mich verschärft nach einer Alternative zu PS um.

Gruß
Wolfgang


als Antwort auf: [#553656]

Photoshop CS6, Zugriff auf API via VB6

Henry
Beiträge gesamt: 967

3. Nov 2016, 11:41
Beitrag # 7 von 13
Beitrag ID: #553660
Bewertung:
(20144 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,
wenn die Library von VB-Studio aufgelistet wird, dann ist die auch vorhanden.
Die Datei heißt übrigens "ScriptingSupport.8li".
Siehe auch z.B. hier:
http://www.xtremevbtalk.com/...ex.php/t-241235.html

Eine Alternative wäre Corel Photopaint - aber da sieht's mit VB-Dokumentation/Support genauso schlecht aus?!


als Antwort auf: [#553658]

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

3. Nov 2016, 13:44
Beitrag # 8 von 13
Beitrag ID: #553666
Bewertung:
(20084 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Henry,

Zitat wenn die Library von VB-Studio aufgelistet wird, dann ist die auch vorhanden.
Die Datei heißt übrigens "ScriptingSupport.8li"


Ja, ich habe sie gefunden, und das ist offenbar auch die Datei, die von VB-Studio aufgelistet wird (eine Datei des Typs .8li hätte ich an dieser Stelle nicht erwartet. Eigentlich lässt VB nur die Dateitypen .olb, .tlb, .dll, .exe und .ocx zu).

Also: Die Objektbibliothek ist tatsächlich vorhanden. Trotzdem funktioniert es nicht, warum auch immer. Ich werde wohl JS lernen müssen. Ist mal was anderes.

Zitat Eine Alternative wäre Corel Photopaint - aber da sieht's mit VB-Dokumentation/Support genauso schlecht aus?!


Falls diese Software überhaupt eine API besitzt.

Gruß
Wolfgang


als Antwort auf: [#553660]

Photoshop CS6, Zugriff auf API via VB6

Henry
Beiträge gesamt: 967

3. Nov 2016, 15:49
Beitrag # 9 von 13
Beitrag ID: #553672
Bewertung:
(20032 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Corel liefert sogar bei seinen Vollversionen den VBA-Editor von Microsoft gleich mit!
Hier die API-Doku von Photo-Paint:
https://community.coreldraw.com/sdk/api/pp/18

(aber ohne Gewähr auf Vollständigkeit oder 100%ige Richtigkeit ;-)


als Antwort auf: [#553666]

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

3. Nov 2016, 18:51
Beitrag # 10 von 13
Beitrag ID: #553681
Bewertung:
(19975 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Henry,

danke für diese hochinteressante Information, das werde ich mir auf jeden Fall genauer anschauen!

Ich bin gespannt, ob es auch für AfterShot eine dokumentierte API gibt.

Hintergrund: Für meine Fotoverwaltung habe ich mir ein VB-Datenbankprogramm gebastelt, das aufs Wesentliche reduziert ist und für meine Zwecke besser funktioniert als alles, was es zu kaufen gibt oder als Freeware angeboten wird.

Eigentlich suche ich bloß einen Raw-Konverter mit einer minimalistischen Benutzeroberfläche, der (insbesondere beim Highlight Recovery) so gut funktioniert wie ACR und der sich von meiner Fotodatenbank aus problemlos fernsteuern lässt. Konkret: Meine Datenbank übergibt ein einzelnes Foto an den Raw-Konverter. Dort bearbeite ich Lichter, Schatten und Kontrast. Dann wird das Bild eventuell noch beschnitten und als JPG abgespeichert. Sollte eigentlich ganz simpel sein... Wenn da nicht die zahllosen Teufel in zahllosen Details wären.

Gruß
Wolfgang


als Antwort auf: [#553672]
(Dieser Beitrag wurde von helvetica am 3. Nov 2016, 18:53 geändert)

Photoshop CS6, Zugriff auf API via VB6

Henry
Beiträge gesamt: 967

4. Nov 2016, 08:53
Beitrag # 11 von 13
Beitrag ID: #553685
Bewertung:
(19883 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Naja, also die "übliche" VBA-Erweiterung gibt es bei Corel (mWn) nur für Photo-Paint, Draw + Designer. Schon dieses "Programmierzeugs" verlangt gehöriges technisches Wissen und es gibt nur wenig verfügbare Informationen.
Und dein sehr individuelles Projektvorhaben ist wohl noch mindestens zwei Kategorien schwieriger einzustufen!

Für Aftershot-Pro werden ja immerhin von Usern/Drittanbietern "Plug-Ins" entwickelt, aber ob dir das weiterhilft:
http://www.aftershotpro.com/...ns/creating-plugins/


als Antwort auf: [#553681]

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

4. Nov 2016, 09:56
Beitrag # 12 von 13
Beitrag ID: #553689
Bewertung:
(19859 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Henry,

das wird ja immer spannender.

Ich werde erst einmal testen, ob man mit AfterShot Raws so entwickeln kann, wie ich mir das vorstelle. Wenn ja, schaue ich mir das SDK einmal an (sofern es kostenlos ist).

Ich werde an dieser Stelle über den Fortgang berichten.

Zitat dein sehr individuelles Projektvorhaben...


Naja, eine Datei per Kommandozeile an ein Programm zu übergeben und dieses Programm ferngesteuert zu veranlassen, die bearbeitete Datei im JPG-Format in ein bestimmtes Verzeichnis zu speichern, kann doch nicht soooo individuell sein -- sollte man meinen. Bis PS CS4 hat das übrigens problemlos funktioniert. Eine Zeitlang sogar mit CS6. Dann ging es plötzlich nicht mehr.

Gruß
Wolfgang


als Antwort auf: [#553685]
(Dieser Beitrag wurde von helvetica am 4. Nov 2016, 09:59 geändert)

Photoshop CS6, Zugriff auf API via VB6

helvetica
Beiträge gesamt: 43

4. Nov 2016, 14:10
Beitrag # 13 von 13
Beitrag ID: #553702
Bewertung:
(19797 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat Ich werde an dieser Stelle über den Fortgang berichten.


Meine Begegnung mit AfterShot war nur von kurzer Dauer: Die Spitzlichter-Rekonstruktion von ACR funktioniert sichtbar besser als die von AfterShot. Es liegen keine Welten dazwischen, aber der Unterschied ist mir groß genug, um bei ACR zu bleiben.

Ich werde mich daranmachen, JavaScript zu lernen.


als Antwort auf: [#553689]
X

Aktuell

InDesign / Illustrator
MTT_300x300_11_2022

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
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

https://www.impressed.de/schulung.php?c=sDetail&sid=327

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!