Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  E3.series
  Symbol als Bild exportieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Symbol als Bild exportieren (331 mal gelesen)
Thomas6789
Mitglied
CAE-Admin


Sehen Sie sich das Profil von Thomas6789 an!   Senden Sie eine Private Message an Thomas6789  Schreiben Sie einen Gästebucheintrag für Thomas6789

Beiträge: 13
Registriert: 24.10.2018

Zuken E3

erstellt am: 12. Feb. 2019 09:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich möchte mit der Funktion ExportImageSelection ein Markiertes Symbol als JPG ausgeben.

Auf Basis der DXF Ausgabe (welche Funktioniert) habe ich folgenden Code Abschnitt erstellt.

Fehlermeldung erscheint keine, aber es erfolgt auch keine Ausgabe im TEMP file.

Was mache ich falsch?

Dim e3: Set e3  = CreateObject( "CT.Application" )
Set Sht = Prj.CreateSheetObject
Set Dev = createobject("CT.device")
Set Att = createobject("CT.Attribute")
Set Prj = App.CreateJobObject
Set App = CreateObject("CT.Application")

shts = prj.GetSheetIds( shtids )
For s = 1 To shts
  sht.SetId shtids(s)
  e3.PutInfo 0, "Exporting sheet " & sht.GetName & " ..."
  sht.ExportImageSelection "jpg", 1, sht.GetName, 1, 300, 300, 24 , 0, 300, 300, 0
next

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

K0NFUZIUS
Moderator



Sehen Sie sich das Profil von K0NFUZIUS an!   Senden Sie eine Private Message an K0NFUZIUS  Schreiben Sie einen Gästebucheintrag für K0NFUZIUS

Beiträge: 219
Registriert: 06.02.2006

erstellt am: 12. Feb. 2019 17:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thomas6789 10 Unities + Antwort hilfreich

Das hat bei mir funktioniert   - Voraussetzung ist, dass das Symbol in E3 selektiert ist.

Code:

Set e3 = CreateObject("CT.Application")
Set Prj = e3.CreateJobObject
Set Sht = Prj.CreateSheetObject

shts = prj.GetSheetIds( shtids )
For s = 1 To shts
  sht.SetId shtids(s)
  e3.PutInfo 0, "Exporting sheet " & "c:\temp\"&sht.GetName()&".jpg"
  ret = sht.ExportImageSelection ("jpg", 1, "c:\temp\"&sht.GetName()&".jpg", 1, 300, 300, 24 , 0, 100, 100, 0)
next


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas6789
Mitglied
CAE-Admin


Sehen Sie sich das Profil von Thomas6789 an!   Senden Sie eine Private Message an Thomas6789  Schreiben Sie einen Gästebucheintrag für Thomas6789

Beiträge: 13
Registriert: 24.10.2018

Zuken E3

erstellt am: 12. Feb. 2019 18:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Das Symbol war natürlich vorher markiert ;-)

Jetzt hat es funktioniert, das Problem war der fehlende Pfad "c:\temp\..". Beim DXF export hat es ohne diese Angabe funktioniert aber in diesem Fall muss der Pfad scheinbar angegeben werden.

Jetzt muss ich nur noch hinbekommen, dass alle Symbole auf dem Blatt markiert werden sollen. Leider habe ich bisher keine Funktion gefunden, mit welcher das umgesetzt werden kann.

Ziel ist es mit dem Script eine Excel Tabelle mit einer Spalte von Symbolnamen einzulesen, das jeweilige Symbol auf einem neuen Blatt zu platziern und im Anschluss als jpg zu exportieren. Der letzte Teil funktioniert bereits, allerdings müsste das Symbol nach dem Platzieren markiert/selektiert werden, damit dies exportiert wird.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

K0NFUZIUS
Moderator



Sehen Sie sich das Profil von K0NFUZIUS an!   Senden Sie eine Private Message an K0NFUZIUS  Schreiben Sie einen Gästebucheintrag für K0NFUZIUS

Beiträge: 219
Registriert: 06.02.2006

erstellt am: 13. Feb. 2019 09:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thomas6789 10 Unities + Antwort hilfreich

Hallo Thomas,
jetzt haben wir ein Problem. Das setzen der Selektion ist meines Wissens über COM nicht möglich.
Willst Du immer das ganze Blatt als jpg exportieren?
Wenn ja würde ich eher die Funktion "sht.ExportImage()" vorschlagen.

Lieben Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas6789
Mitglied
CAE-Admin


Sehen Sie sich das Profil von Thomas6789 an!   Senden Sie eine Private Message an Thomas6789  Schreiben Sie einen Gästebucheintrag für Thomas6789

Beiträge: 13
Registriert: 24.10.2018

Zuken E3

erstellt am: 13. Feb. 2019 09:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Jörg,

ich möchte nur das Symbolbild exportieren, nicht das ganze Blatt. Wenn man allerdings nicht über Com selektieren kann, ist das natürlich schlecht.
Hintergrund ist, dass wir alle Symbolbilder mit dazugehöriger Artikelnummer exportieren möchten. Lösungsansatz war wie oben beschrieben, aus einer Exceltabelle (bereits vorhanden) alle Artikelnummern mit entsprechendem Symbolnamen zu importieren und für jeden Artikel ein leeres Blatt zu erstellen und das Symbol zu platzieren. Mit sht.exportimageselection sollte dann nur das Symbol als Jpg mit Artikelnummer als Dateinamen exportiert werden. Ergebnis wäre dann, dass wir für jeden Artikel ein Bild mit der entsprechenden Artikelnummer haben, um die Bilder dann in anderen Programmen zu verwenden. sht.Exportimage habe ich schon versucht aber leider wird dort das komplette Blatt als JPG exportiert.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thomas6789
Mitglied
CAE-Admin


Sehen Sie sich das Profil von Thomas6789 an!   Senden Sie eine Private Message an Thomas6789  Schreiben Sie einen Gästebucheintrag für Thomas6789

Beiträge: 13
Registriert: 24.10.2018

Zuken E3

erstellt am: 14. Feb. 2019 16:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Update:
Da das Selektieren leider nicht über die COM-Schnittstelle möglich ist, habe ich es mit "sht.ExportImageArea" versucht. Jedes Symbol wird exakt in der Blattmitte platziert und anschließend wird nur ein festgelegter Blattausschnitt als JPG exportiert. Dadurch, dass alle Symbole ähnliche Abmessungen haben, passt das Ergebnis zu 90%. Zum Schluss kann man die 1400 Bilder noch mit Irfanview über "Batch(Stapel)-Konvertierung" automatisch zuschneiden lassen, so dass die weißen Flächen entfernt werden.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Elektrokonstrukteur (m/w/d) Electrical & Software Engineering

VON ARDENNE ist ein international erfolgreiches Technologieunternehmen. Wir entwickeln und bauen Maschinen und Anlagen, die bei der Herstellung von nachhaltigen und ressourcenschonenden Produkten wie Solarmodulen, Wärmeschutzglas oder Displays für Smartphones und Touchscreens eine entscheidende Rolle spielen. 

Für unseren Bereich Electrical & Software Engineering in Dresden suchen wir einen: ...

Anzeige ansehenElektrotechnik, Elektronik
K0NFUZIUS
Moderator



Sehen Sie sich das Profil von K0NFUZIUS an!   Senden Sie eine Private Message an K0NFUZIUS  Schreiben Sie einen Gästebucheintrag für K0NFUZIUS

Beiträge: 219
Registriert: 06.02.2006

erstellt am: 15. Feb. 2019 07:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thomas6789 10 Unities + Antwort hilfreich

Hallo Thomas,
vielen Dank für die Rückmeldung. Super das Du eine Lösung gefunden hast. Ich habe den Selektionswunsch über COM mal bei Zuken registrieren lassen.

Lieben Gruß
Jörg

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2019 CAD.de | Impressum | Datenschutz