Macro Text verschieben
#1
Hallo,
ich wollte mir gerade ein Macro aufnehmen, dass allen Text (Mengen und Grafiktext) auswählt und auf die Ebene Text verschiebt.
Allerdings nimmt Corel den Befehl unter Bearbeiten-->Alles Auswählen-->Text, nicht richtig auf und wählt noch einige Bilder dazu.
Hat von euch jemand eine Idee wie der Code da lauten könnte?
Zitieren
#2
Hallo Norre,
hab es nur an zwei einfachen Seiten getestet, aber bei mir funzte es so, (selbst das Makro! :lolSmile es wurde kein Bild (*.jpg) mit ausgewählt. Hast Du irgend eine Verknüpfung zu dem Bild?

Wenn es nur eine einfache Seite ist, werde ich gern Deine *.cdr testen. Ist der Unterschied in 64-Bit und 32-Bit-Version begründet?

Liebe Grüße vom Kraut

Betriebssystem / Grafik-Software: Win 7
Zitieren
#3
Hallo, nein keine Verknüpfung, wenn ich das über Bearbeiten mache funktioniert das auch und es wird nur Text ausgewählt, nur wenn ich es beim Macro mit aufzeichne kappts nicht. Mal nimmt es ein Bitmap mit, dann lässt es wieder zwei Textrahmen stehen, immmer verschieden, komisch

Könntest du vielleicht deinen Code zum vergleichen hier posten?
Zitieren
#4
Kann es am Font liegen?
(Die "textebene" hatte ich vor der Ausführung des Makros erstellt.)

Code:
Sub Macro2()
    ' Recorded 21.10.2013
    ActiveDocument.CreateShapeRangeFromArray(ActiveLayer.Shapes(5), ActiveLayer.Shapes(4), ActiveLayer.Shapes(3), ActiveLayer.Shapes(2), ActiveLayer.Shapes(1)).Cut
    Dim pasteopt As StructPasteOptions
    Set pasteopt = CreateStructPasteOptions
    With pasteopt.ColorConversionOptions
        .SourceColorProfileList = "sRGB IEC61966-2.1,ISO Coated v2 (ECI),Gray Gamma 2.2"
        .TargetColorProfileList = "sRGB IEC61966-2.1,ISO Coated v2 (ECI),Gray Gamma 2.2"
    End With
    Dim Paste1 As ShapeRange
    Set Paste1 = ActivePage.Layers("textebene").PasteEx(pasteopt)
End Sub

Smile die letzten Gartentomaten (vom Markt) des Jahres warten auf Kräuter und daaaaas Kraut

Betriebssystem / Grafik-Software: Win 7
Zitieren
#5
Unkraut schrieb:Smile die letzten Gartentomaten (vom Markt) des Jahres warten auf Kräuter und daaaaas Kraut

Danke dir, mal schaun obs funktioniert, bei mir schaut das anderst aus .

Bei mir hängen doch noch ne ganze Menge Tomaten an den Pflanzen, mal schaun wenns jetzt so warm bleibt werden die sicher noch rot werden :-)
Zitieren
#6
Hallo norre,
norre schrieb:Hat von euch jemand eine Idee wie der Code da lauten könnte?

Unter X4 geht das mit diesem Code:
Code:
Sub TextAufAktEbene()
    Dim s As Shape
    ActiveDocument.BeginCommandGroup "Text auf aktive Ebene"
    For Each s In ActivePage.Shapes
        If s.Type = cdrTextShape Then
            s.Layer = ActiveLayer
        End If
        'Gruppe
        If s.Type = cdrGroupShape Then
            Call TextInGrpAufAktEbene(s)
        End If
        'Gruppe Ende
    Next
    ActiveDocument.EndCommandGroup
End Sub

Sub TextInGrpAufAktEbene(gs As Shape)
    Dim s As Shape
    For Each s In gs.Shapes
        If s.Type = cdrTextShape Then
            Call RausAusGruppe(s)
            s.Layer = ActiveLayer
        End If
        If s.Type = cdrGroupShape Then
            Call TextInGrpAufAktEbene(s)
        End If
    Next
End Sub

Sub RausAusGruppe(s As Shape)
    Dim PG As Shape
    Set PG = s.ParentGroup
    If PG Is Nothing Then
        Exit Sub
    Else
        s.OrderFrontOf PG
        Call RausAusGruppe(s)
        If PG.Shapes.Count < 2 Then
            PG.Ungroup
        End If
    End If
End Sub

Das Makro verschiebt den Text einer Seite auf die aktive Ebene, egal wie diese benannt ist.
Es wird auch der Text aus Gruppen auf die aktive Ebene verschoben.
Wenn Du das nicht willst, musst Du den Code zwischen 'Gruppe und 'Gruppe Ende löschen oder auskommentieren.
Die Subs TextInGrpAufAktEbene und RausAusGruppe sind dann auch überflüssig.

Text, der an Objekten ausgerichtet ist, wird nicht verschoben.

Gruß

Koter
Zitieren
#7
Hallo Koter,
das funktioniert wieder perfekt und dass auch in Gruppen verschoben wird ist genau dass was ich brauche - [Bild: attachment.php?attachmentid=9807&stc=1&d=1382429335]



@Unkraut auch dir dankeschön, [Bild: tomate_0016.gif]


Angehängte Dateien
.gif   Klasse.gif (Größe: 78,87 KB / Downloads: 29)
Zitieren



Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Text partiell ersetzen Karthagos 2 110 26.05.2024, 21:09
Letzter Beitrag: Karthagos
  Corel Draw 2019 Text vertikal nilaschmi 5 335 14.02.2024, 17:53
Letzter Beitrag: skifan
  Makro - Text an Rechteck ausrichten benni313 5 387 31.01.2024, 09:20
Letzter Beitrag: benni313
  Corel importiert Text aus PDF nur noch als Sonderzeichen Kay_Maehnert 0 269 10.11.2023, 18:36
Letzter Beitrag: Kay_Maehnert
  Textzeilen in einzelne Text-Objekte aufteilen Karthagos 8 778 01.05.2023, 10:34
Letzter Beitrag: Karthagos
  Text mit innerem Umriss mtemp 2 450 16.03.2023, 07:35
Letzter Beitrag: Piet
  Text in russisch OsCor 3 742 20.11.2022, 14:30
Letzter Beitrag: OsCor
  Objekte verschieben nicht mehr möglich Uwe_1108 1 1.028 21.05.2022, 08:08
Letzter Beitrag: norre
  Ebenen verschieben Karthagos 3 896 07.05.2022, 19:00
Letzter Beitrag: Karthagos
  Kurven wieder in Text umwandeln Karthagos 18 2.847 30.04.2022, 12:24
Letzter Beitrag: koter