CorelDraw VBA Hatchfill颜色

问题描述 投票:3回答:1

任何人都知道如何从自定义填充填充中获取背景和线条颜色?

以下代码使用文本框中的数据填充选定的形状

      ActiveSelectionRange.ApplyCustomHatchFill ANG.value, LS.value, 0, 0, 0, LT.value, CreateRGBColor(255, 0, 0), BackColor:=CreateRGBColor(255, 255, 255)

这工作正常我还有一个颜色选择器,可以改变线条和背景的颜色,但是如果你改变线条大小,颜色会变回上面代码中指定的颜色

我需要得到的是所选形状的线条和背景颜色的当前颜色,以便我可以在保留设定颜色的同时更改线条粗细

我有一种感觉它与GET patternfill.backcolor有关,但我找不到任何关于它的用法的例子

任何帮助表示赞赏

标记

UPDATE

好的,我发现以下内容将背面颜色变为字符串

value = s.Fill.Hatch.BackColor.ToString

然后,我可以进行拆分并获取值

但似乎没有获得线条颜色的选项(Forecolor)

有任何想法吗?

vba colors fill coreldraw
1个回答
2
投票

Hatch Fill

形状的填充填充是HatchFill对象。它有一个BackColor和一个或多个Patterns()。 每个模式都有一个Outline(指定模式中的线条),它有一个可以通过e读取的Color。 G。 ToString或其他methods读取颜色。

如果您想更改舱口填充线的其他属性,请查看Outline here的所有属性和方法

一些例子:

s.Fill.Hatch.BackColor                  ' background color
s.Fill.Hatch.Patterns(1).Outline.Color  ' line color of first pattern
s.Fill.Hatch.Patterns(1).Outline.Width  ' line width of first pattern

你也可以检查,如果它确实有一个不透明的背景:Fill.Hatch.HasBackground

Pattern Fill

以防万一:图案填充更简单,只有两种颜色:

s.Fill.Pattern.FrontColor
s.Fill.Pattern.BackColor
© www.soinside.com 2019 - 2024. All rights reserved.