Corel FORUM
Forum użytkowników programów firmy Corel. Grafika wektorowa, rastrowa i obróbka zdjęć cyfrowych

Makra - Modyfikacja Makra do tworzenia obrysu wewnętrznego

tomaszryba - 19 Luty 2021, 12:39
Temat postu: Modyfikacja Makra do tworzenia obrysu wewnętrznego
Witam wszystkich bardzo serdecznie
potrzebuję pomocy przy przerobieniu marka
Cytat:

Sub ThreecubeMike_01()

Dim sOriginal As Shape
Dim sDuplicate As Shape
Dim sr_from_contour As ShapeRange
Dim e As Effect

Set sOriginal = ActiveShape

'create the duplicate that will be the cut outline
Set sDuplicate = sOriginal.Duplicate

'name it
sDuplicate.Name = "Cut Outline"

'set outline color
sDuplicate.Outline.Color.CMYKAssign 0, 100, 0, 0

'set to have no fill
sDuplicate.Fill.ApplyNoFill

'from original shape, create contour effect
Set e = sOriginal.CreateContour(, ConvertUnits(3, cdrMillimeter, ActiveDocument.Unit), , , , sOriginal.Fill.UniformColor.GetCopy)

'separate contour group into a shaperange
Set sr_from_contour = e.Separate

'name the contour shape
sr_from_contour(1).Name = "Shape from Contour"

'delete the original shape
sOriginal.Delete

End Sub


Chodzi o to, że jak wrzucam bitmapę albo plik wektorowy to chcę aby stworzyło mi obrys włosowy wewnątrz z przesunięciem 2mm

czyli mam plik np mapę bitową o wymiarach 200x100 po użyciu makra tworzy się prostokąt o wymiarach 199,8x99,8 obrys włosowy bez wypełnienia.

Martin Nez - 19 Luty 2021, 14:04

Witam,
Spróbuj tego:
Kod:
Sub tomaszryba()
    ActiveDocument.Unit = cdrMillimeter
    Dim s As Shape
    Dim sr As ShapeRange
    Dim e As Effect
   
    Set s = ActiveShape
    Set e = s.CreateContour(0, 2)
    Set sr = e.Separate
    sr(1).Fill.ApplyNoFill
    sr(1).Outline.Width = 0.025
End Sub

Pozdr,
MN

tomaszryba - 22 Luty 2021, 12:26

dzięki wielkie za pomoc - działa super!
Pytanie tylko dlaczego w wersji 20 nie ustawia się linia 0.025 tylko 0,567
Natomiast w wersji x5 jest OK

Martin Nez - 23 Luty 2021, 13:05

Niestety nie mam dojścia do Corela 20, więc nie mogę sprawdzić dlaczego tak jest.

Pozdr,
MN

kek - 9 Marzec 2021, 12:04

Witam.
Może grubość linii podstawowej w programie jest tak ustawiona.
Zobacz w opcjach programu, może tam definiuje się grubość linii domyślnej?

Pozdrawiam


Powered by phpBB modified by Przemo © 2003 phpBB Group