Index

PowerDoc Objects

Baseline

Overview

This object represents a text baseline.

Designated Rendering Function: NONE

pdLinePtr (1015)

Also appears in: Library Polyline, Line, Arc, Grid, Polyline (also Bezier and B-Spline curve)

Link to the Line Definition (Full) or Line Definition (Standard) object.

This link supplies parameters necessary to render the body of a line. In the context of the Grid object, this link supplies the parameters necessary to render the grid lines.

pdShadowPtr (1016)

Also appears in: Typography (For Outline Fonts), Row Boundary, Typographic Frame, Library Polyline, Library Shape, Line, Rectangle, Circle/Ellipse, True Circle/Ellipse, Slice, Arc, Grid, Custom Shape or Polygon, Polyline (also Bezier and B-Spline curve)

Link to the Shadow Definition object.

Used to render the shadow of a line, shape or some other object.

Properties

pdMarginLeft (1159)   PD_LONG_SIGNED

Also appears in: Text Ruler (Horizontal), Row Boundary

Left margin, in document units. Positive values mean "inside", negative values mean "outside".

Sample values:

"100" = Left margin of 100 document units

pdMarginRight (1160)   PD_LONG_SIGNED

Also appears in: Text Ruler (Horizontal), Row Boundary

Right margin, in document units. Positive values mean "inside", negative values mean "outside".

Sample values:

"100" = Right margin of 100 document units

Example

C/C++

DT_ID_SLONG obj[3];

obj[0] = pdObjAdd(pd, 0, "Line Style");
obj[1] = pdObjAdd(pd, 0, "Line Definition");
obj[2] = pdObjAdd(pd, 0, "Baseline");

/* Properties for object 0 */
pdPropAdd(pd, obj[0], pdRGBT, "50641400", PD_HEX);

/* Properties for object 1 */
pdLinkAdd(pd, obj[1], pdStylePtr, obj[0]);
pdPropAdd(pd, obj[1], pdLineThickness, "1500", PD_WORD_SIGNED);
pdPropAdd(pd, obj[1], pdLineSegment, "10", PD_WORD_UNSIGNED);
pdPropAdd(pd, obj[1], pdLineStart, "100", PD_BYTE_UNSIGNED);
pdPropAdd(pd, obj[1], pdLineEnd, "100", PD_BYTE_UNSIGNED);

/* Properties for object 2 */
pdLinkAdd(pd, obj[2], pdLinePtr, obj[1]);
pdPropAdd(pd, obj[2], pdMarginLeft, "200", PD_LONG_SIGNED);
pdPropAdd(pd, obj[2], pdMarginRight, "50", PD_LONG_SIGNED);

INTEGRAL DSL

/* Lambda shortcuts */

local o = @(label = "") CDTObj(::my.doc, label); /* to make object */
local p = @(id, str, len = PD_DEFAULT) CDTProp(id, str, len); /* to add property - general */
local s = @(id, str) CDTPropStr(id, str); /* to add property - string */
local i = @(id, num) CDTPropInt(id, num); /* to add property - integer */
local l = @(id, obj) CDTLink(id, obj); /* to add link */

/* Objects */

local obj_0 = o("Line Style");
local obj_1 = o("Line Definition");
local obj_2 = o("Baseline");

/* Object Properties */

obj_0 + s(pdRGBT, "50641400");

obj_1 + l(pdStylePtr, obj_0);
obj_1 + i(pdLineThickness, 1500);
obj_1 + i(pdLineSegment, 10);
obj_1 + i(pdLineStart, 100);
obj_1 + i(pdLineEnd, 100);

obj_2 + l(pdLinePtr, obj_1);
obj_2 + i(pdMarginLeft, 200);
obj_2 + i(pdMarginRight, 50);
 

Index