Umrisslinie vektorisierte Grafik
#1
Hallo zusammen,

ich musste eine Grafik für eine Arbeit vektorisieren und das Ergebnis ist ansich ganz schön geworden. Ich habe das Bild
(EPS-File) nun in Corel Draw X4 geöffnet und leider zwischen den einzelnen Flächen weiße Ränder (siehe angehängtes Bild, stark vergrößerter Ausschnitt). Weiß jemand Rat, um dies zu beheben? Ich könnte natürlich jedem Objekt eine Umrisslinie mit der entsprechenden Farbe zuweisen, allerdings wäre ich da von Hand wohl einige Tage beschäftigt Wink ... Geht das auch automatisiert oder gibt es zu diesem Problem eine andere Lösung?

vielen dank schon mal Smile

[Bild: unbenanntozq.png]

Irgendwie wird das Bild nicht angezeigt. Hier der Direktlink: http://img163.imageshack.us/img163/6880/...nntozq.png
Zitieren
#2
Zitat:und das Ergebnis ist ansich ganz schön geworden.
hmmm, also das schaut eher nach Flickenteppich als nach Grafik aus. Wärst Du da nicht besser gekommen das selbst zu zeichnen?

So aufwendig scheint das ja nicht zu sein?

Cu Helmut
Zitieren
#3
Das Bild ist nur ein sehr kleiner und vergrößerter Teil des Bildes um klar zu machen, was ich mit den Umrisslinien meine. Das gesamte Bild ist um einiges größter und detailreich, von daher seh ich keine Chance, das in angemessener Zeit von Hand nachzuzeichen...
Zitieren
#4
Hallo lex2k6!

So etwas kann man gut von einem Makro erledigen lassen. Ich habe mal eine CorelDraw x3 –Datei erstellt welche ein einfaches Makro enthält was das kann. Öffne die Datei, ev. kommt eine Warnmeldung das ein Makro enthalten ist, dann müßtest Du auf „Makro aktivieren“ gehen sonst geht’s nicht (das Rechteck in der Datei kannst Du löschen). Kopiere nun Deinen Flickenteppich dort hinein, versehe alle Objekte mit einem Umriß z.B. Haarlinie schwarz, löse über „Anordnen / Gruppierung auflösen“ die Gruppe auf und markiere alle Objekte.
Nun gehe auf „Extra / VisualBasic / Abspielen“ woraufhin sich ein Dialog öffnet.

[Bild: makroo948.png]

Wähle dort bei „Makros in:“ – „VBAProjekt (Macro)“ aus, da nur ein Makro „umriss.Macro1“ vorhanden ist, ist dieses schon ausgewählt und klicke auf „Ausführen“. Nun brauchst Du etwas Geduld denn das Makro arbeitet jedes Objekt ab. Wenn das Skript fertig ist haben alle Umrisse die Farbe der (einfarbigen) Füllung, Du kannst bei Bedarf die Linienstärke noch erhöhen, aber ich denke Haarlinie reicht aus.
Das Makro habe ich für X3 erstellt und hoffe, daß es auch unter X4 funktioniert. Unten habe ich mal den Code des Makros eingefügt.

Viele Grüße von der Nachtviole!

[Bild: sonnenblumenmusterexib.jpg]

Code:
Sub Macro1()
Dim Auswahl As ShapeRange

Set Auswahl = ActiveSelectionRange
For i = 1 To Auswahl.Count
    If Auswahl(i).Outline.Type > cdrNoOutline And Auswahl(i).Fill.Type = cdrUniformFill Then
        Auswahl(i).Outline.Color = Auswahl(i).Fill.UniformColor
    End If
Next i
End Sub


Angehängte Dateien
.zip   Makro.zip (Größe: 8,13 KB / Downloads: 54)
Zitieren
#5
Hi Nachtviole...

Hab' mir dein Makro genommen und damit gearbeitet.
Klappt auch wunderbar in X5.
Hätte so ein Makro schon des Öfteren gebraucht, aber jetzt habe ich eines. Danke! :daumen:
Auch mit 2787 Objekten kein Problem. (Anhang)


Angehängte Dateien Thumbnail(s)
   
Zitieren
#6
Hallo Franz!

Es freut mich, daß Dir das Makro etwas nützt, aber auch, daß es unter X5 läuft. Zur Zeit bastel ich gerade an ein paar ausführlicheren Makros (mit Dialog) welche dann möglichst auch unter X5 laufen sollten.

Viele Grüße von der Nachtviole!
Zitieren
#7
Wow, super Smile ... vielen Dank, das hat mir (und wahrscheinlich auch Anderen) einiges an Arbeit erspart!
Zitieren
#8
Ich habe versucht dieses Makro auch in Corel X7 zu nutzen, da dort leider das Problem immernoch besteht. Leider funktioniert es nur bei wenigen Objekten. sobald es etwas mehr Objekte werden wird CorelDraw inaktiv. Hat da jemand einen Lösungsansatz. Ich schaffe es leider nicht das Problem zu beheben. Sad Ich habe aber auch leider überhaupt keinen Plan von Makros :/

Edit:
Sorry das ich diesen Thread nochmal aufgemacht habe! Ich hatte einefach nur sehr sehr viele Objekte und es hat ca eine halbe Stunde gedauert. Dieses Makro funktioniert auch unter Corel Draw X7 noch einwandfrei!

Vielen Dank für das Teilen dieses Makros!

Grüße

Salty
Zitieren
#9
versuche doch mal ein paar Objekte in neue Seiten zu erstellen und dann das Macro testen.
Die Objekte selbst lassen sich ja später kopieren und in die Hauptseite einfügen.
Zitieren
#10
Hallo Salty,

SaltyDog schrieb:...es hat ca eine halbe Stunde gedauert...

Bei langen Ausführungszeiten kann es sich lohnen, die Optimierung einzuschalten:

Code:
Sub Macro1()
    Dim Auswahl As ShapeRange
    
    Set Auswahl = ActiveSelectionRange
    Call zeitMessung(True) ' Zeitmessung, kann gelöscht werden
    Optimization = True ' Optimierung einschalten
    For i = 1 To Auswahl.Count
        If Auswahl(i).Outline.Type > cdrNoOutline And Auswahl(i).Fill.Type = cdrUniformFill Then
            Auswahl(i).Outline.Color = Auswahl(i).Fill.UniformColor
        End If
    Next i
    Optimization = False 'Optimierung ausschalten
    ActiveWindow.Refresh ' Bildschirm auffrischen
    Call zeitMessung ' Zeitmessung, kann gelöscht werden
End Sub

Sub zeitMessung(Optional start As Boolean)
    Static t1
    If start Then
        t1 = Time
    Else
        MsgBox Format(Time - t1, "hh:mm:ss")
    End If
End Sub

Bei einem Test brauchte das Makro ohne Optimierung 1:33 Minuten.
Mit Optimierung brauchte es nur 6 Sekunden.

Die Sub zeitMessung und die Befehle zum Aufruf derselben kannst Du löschen, Sie dienen nur zum Experimentieren.

Gruß

Koter
Zitieren



Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  schwarze Umrisslinie mit Trace erzeugen Karthagos 13 1.454 14.08.2023, 17:49
Letzter Beitrag: Karthagos
  Grafik beim Export für das Web unscharf AndreasMi 1 764 17.06.2023, 12:02
Letzter Beitrag: koter
  Grafik per Makro Exportieren Chrisbeee 10 1.747 10.02.2023, 00:54
Letzter Beitrag: Chrisbeee
  Warum macht Corel Trace_9 Linien um die Grafik?? diddytil 5 1.543 29.05.2018, 20:03
Letzter Beitrag: norre
  1 von 3 Druckern "vergisst" Teile einer Grafik mc_oyzo 3 1.667 07.01.2018, 22:15
Letzter Beitrag: mc_oyzo
  JPG bringt Grafik Suite 2017 zum Absturz Baumal 2 1.156 24.07.2017, 14:58
Letzter Beitrag: Baumal
  Barcode 128 in Grafik umwandeln nowa 16 5.036 21.12.2016, 18:41
Letzter Beitrag: nowa
  Füllung aus einer Grafik entfernen grimereaper 6 2.260 12.02.2016, 10:06
Letzter Beitrag: Hartmut
  Grafik in Mail integrieren oekochance 25 4.869 20.01.2016, 09:20
Letzter Beitrag: Suc
  Ecken abrunden bei einer eigens erstellten Grafik DoktorD 9 5.053 30.11.2015, 21:24
Letzter Beitrag: DoktorD