在4D Write Pro(4D v17 R5)中以编程方式设置文本样式

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

我正在尝试以编程方式在同样以编程方式创建的4D Write Pro文档中设置两种文本样式,但是最后一种样式集是整个文档中唯一采用的一种。

我创建了一个新的4D Write Pro文档(wpDoc),为整个文档创建了一个范围($ range),并使用“ WP Set Attributes”来设置文本格式。

C_OBJECT(wpDoc;$range)
wpDoc:=WP New
$range:=WP Text range(wpDoc;wk start text;wk end text)

// Style 1
WP SET ATTRIBUTES($range;wk font;"DIN-Bold")
WP SET ATTRIBUTES($range;wk font size;"12pt")
WP SET TEXT($range;"Name: ";wk append)

// Style 2
WP SET ATTRIBUTES($range;wk font;"DIN-Regular")
WP SET ATTRIBUTES($range;wk font size;"10pt")
WP SET TEXT($range;[Companies]Name;wk append)

WP PRINT(wpDoc)

它看起来应该像:

[名称:样本公司名称

但显示为:

名称(纯文本):示例公司名称(纯文本)

4d-database
1个回答
0
投票

由于您的范围随着要添加的文本而增长,因此您需要更改范围。以下代码对我有用。

您应确认您的字体存在,否则attributes命令无效(FONT LIST)。我切换到了我知道系统拥有的字体。

''WP Text range'在我使用的版本中无效(也许您使用的是旧版本。我正在使用v17.3)。我的代码使用“ WP创建范围”。

C_OBJECT(wpDoc; $ range)

wpDoc:= WP New

$ range:= WP创建范围(wpDoc; wk起始文本; wk结束文本)

//样式1

WP SET TEXT($ range;“名称:”; wk追加)

WP SET ATTRIBUTES($ range; wk字体;“ Book Antiqua Bold”)

WP SET ATTRIBUTES($ range; wk字体大小;“ 12pt”)

//样式2

$ range:= WP创建范围(wpDoc; 7; wk结束文本)

WP SET TEXT($ range; [公司]名称;周附加)

WP SET ATTRIBUTES($ range; wk font;“ Book Antiqua”)

SET PRINT PREVIEW(True)

WP PRINT(wpDoc)

© www.soinside.com 2019 - 2024. All rights reserved.