T - 链式调用返还值,Div的子类public class Div<T extends Div> extends Object implements RenderPrepare, ElementSplit
每个继承Div的对象都不必须提供泛型参数T,用于简化链式调用。
绘制行为详见渲染器:DivRender
| 构造器和说明 |
|---|
Div() |
Div(Double width,
Double height) |
Div(double x,
double y,
double width,
double height)
创建绝对定位的Div对象
|
| 限定符和类型 | 方法和说明 |
|---|---|
Rectangle |
box()
获取模型区域大小
注意:该方法必须在元素内容大小确定的情况才能放回正确的尺寸
也就是说必须在
doPrepare(Double) 或是手动设置宽度和高度之后调用才能返还正确值 |
Div |
clone()
克隆Div
|
<T extends Div> |
contentSplitAdjust(double sHeight,
T div1,
T div2)
内容分割调整
根据分割高度调整两个克隆元素,达成分割元素的效果
|
<T extends Div> |
copyTo(T div)
Clone到制定对象
|
Rectangle |
doPrepare(Double widthLimit)
获取尺寸
|
String |
elementType()
获取元素类型名称
用于标识元素类型,选择合适的处理器,自定义元素请重写该方法
关联绘制器:
DivRender |
int[] |
getBackgroundColor() |
Double[] |
getBorder() |
Double |
getBorderBottom() |
int[] |
getBorderColor()
获取 边框颜色
|
Double[] |
getBorderDash()
获取 边框虚线样式
数组中个元素意义:[虚线偏移量,虚线长度,虚线间隔 ...重复]
|
Double |
getBorderLeft() |
Double |
getBorderRight() |
Double |
getBorderTop() |
Clear |
getClear() |
Display |
getDisplay()
获取 显示样式
|
AFloat |
getFloat() |
Double |
getHeight() |
org.ofdrw.core.basicStructure.pageObj.layer.Type |
getLayer()
返回 图层
默认为Body
|
Double |
getLeft() |
Double[] |
getMargin() |
Double |
getMarginBottom() |
Double |
getMarginLeft() |
Double |
getMarginRight() |
Double |
getMarginTop() |
ElementRenderFinishHandler |
getOnRenderFinish()
获取渲染完成回调事件
|
Double |
getOpacity()
获取透明度
|
Double[] |
getPadding()
获取内边距
一定返回4个元素的数组
|
Double |
getPaddingBottom() |
Double |
getPaddingLeft() |
Double |
getPaddingRight() |
Double |
getPaddingTop() |
Position |
getPosition() |
Double |
getRight() |
Double |
getTop() |
Double |
getWidth() |
Double |
getX() |
Double |
getY() |
double |
heightPlus() |
boolean |
isBlockElement()
是否是块级元素
块元素将会独占整个段
绝对定位默认不为块级元素
|
Boolean |
isIntegrity()
元素是否可以拆分
|
boolean |
isNoBorder()
是否存在边框
|
boolean |
isPlaceholder()
判断是否为占位符
|
void |
onRenderFinish(ElementRenderFinishHandler renderFinishHandler)
设置渲染完成回调事件
在该处理器中你可以得到元素在OFD容器的中文件位置和对象ID
|
static Div |
placeholder(double width,
double height,
AFloat aFloat)
空间占位符
共享段空间,且不可分割
|
static Div |
placeholder(Rectangle rec,
AFloat aFloat)
空间占位符
|
T |
setBackgroundColor(int[] backgroundColor)
设置背景颜色 RGB
|
T |
setBackgroundColor(int r,
int g,
int b)
设置背景颜色 RGB
|
T |
setBackgroundColor(String color)
设置 背景颜色
|
T |
setBorder(Double... border)
设置 边框宽度
根据参数的参数不同设置涉及到了到 上、右、下、左 各部分参数
1个参数,上、右、下、左 都相同 {arr[0], arr[0], arr[0], arr[0]}
2个参数,上和下相同、左和右相同 {arr[0], arr[1], arr[0], arr[1]}
3个参数,上、右、下、左(0) 分别设置 {arr[0], arr[1], arr[2], 0}
4个参数,上、右、下、左 分别设置 {arr[0], arr[1], arr[2], arr[3]}
|
T |
setBorderBottom(Double bottom) |
T |
setBorderColor(int[] rgb)
设置 边框颜色
|
T |
setBorderColor(int r,
int g,
int b)
设置边框颜色
|
T |
setBorderColor(String color)
设置 边框颜色
|
T |
setBorderDash(Double... dash)
设置 边框虚线样式
取消虚线:
setBorderDash(null)
设置虚线 与 空白相同 3:setBorderDash(3d)
设置虚线的 长度 3 与空白 2: setBorderDash(3d, 2d)
设置虚线的长度 3、空白 2、偏移量 1:setBorderDash(1d, 3d, 2d) |
T |
setBorderLeft(Double left) |
T |
setBorderRight(Double right) |
T |
setBorderTop(Double top) |
T |
setBox(Double x,
Double y,
Double width,
Double height)
设置盒式模型的主要属性
|
T |
setClear(Clear clear) |
T |
setDisplay(Display display)
设置 显示样式
|
T |
setFloat(AFloat aFloat)
|
T |
setHeight(Double height) |
T |
setIntegrity(Boolean integrity) |
T |
setLayer(org.ofdrw.core.basicStructure.pageObj.layer.Type layer)
设置 图层
|
T |
setLeft(Double left) |
T |
setMargin(Double... margin)
设置 外边距
根据参数的参数不同设置涉及到了到 上、右、下、左 各部分参数
1个参数,上、右、下、左 都相同 {arr[0], arr[0], arr[0], arr[0]}
2个参数,上和下相同、左和右相同 {arr[0], arr[1], arr[0], arr[1]}
3个参数,上、右、下、左(0) 分别设置 {arr[0], arr[1], arr[2], 0}
4个参数,上、右、下、左 分别设置 {arr[0], arr[1], arr[2], arr[3]}
|
T |
setMarginBottom(Double bottom) |
T |
setMarginLeft(Double left) |
T |
setMarginRight(Double right) |
T |
setMarginTop(Double top) |
T |
setOpacity(Double opacity)
设置透明度
0 - 表示全透明, 1 - 表示不透明
|
T |
setPadding(Double... padding)
设置 内边距
根据参数的参数不同设置涉及到了到 上、右、下、左 各部分参数
1个参数,上、右、下、左 都相同 {arr[0], arr[0], arr[0], arr[0]}
2个参数,上和下相同、左和右相同 {arr[0], arr[1], arr[0], arr[1]}
3个参数,上、右、下、左(0) 分别设置 {arr[0], arr[1], arr[2], 0}
4个参数,上、右、下、左 分别设置 {arr[0], arr[1], arr[2], arr[3]}
|
T |
setPaddingBottom(Double bottom) |
T |
setPaddingLeft(Double left) |
T |
setPaddingRight(Double right) |
T |
setPaddingTop(Double top) |
T |
setPlaceholder(boolean placeholder)
设置是否为 占位符
|
T |
setPosition(Position position) |
T |
setRight(Double right) |
T |
setTop(Double top) |
T |
setWidth(Double width) |
T |
setX(Double x) |
T |
setXY(Double x,
Double y)
设置位置
|
T |
setY(Double y) |
Div[] |
split(double sHeight)
根据给定的高度切分元素
截断元素前必须确定元素的宽度和高度,否则将会抛出异常
元素的分割只作用于竖直方向上,水平方向不做分割每次只会截断1次。
|
String |
toString() |
double |
widthPlus() |
public Div()
public Div(double x,
double y,
double width,
double height)
x - 固定布局的盒式模型左上角X坐标y - 固定布局的盒式模型左上角y坐标width - 宽度height - 高度public boolean isNoBorder()
public boolean isBlockElement()
块元素将会独占整个段
绝对定位默认不为块级元素
public Double getOpacity()
public T setOpacity(Double opacity)
0 - 表示全透明, 1 - 表示不透明
opacity - 透明度取值区间 [0,1]public int[] getBorderColor()
public T setBorderColor(int r, int g, int b)
r - 红色值(0~255)g - 绿色值(0~255)b - 蓝色值(0~255)public T setBorderColor(int[] rgb)
rgb - RGB数组,null 表示无色。public T setBorderColor(String color)
color - 颜色值,可以是 16进制值 "#FFFFFF"、 16进制值缩写 "#FF"F、RGB "rgb(255,255,255)"、颜色名称 "white"public Double getTop()
public Position getPosition()
public int[] getBackgroundColor()
public T setBackgroundColor(int r, int g, int b)
r - 红色值(0~255)g - 绿色值(0~255)b - 蓝色值(0~255)public T setBackgroundColor(String color)
color - 颜色值,可以是 16进制值 "#FFFFFF"、 16进制值缩写 "#FF"F、RGB "rgb(255,255,255)"、颜色名称 "white"public T setBackgroundColor(int[] backgroundColor)
backgroundColor - RGB数组public Double getWidth()
public Double getHeight()
public Double[] getPadding()
一定返回4个元素的数组
public T setPadding(Double... padding)
根据参数的参数不同设置涉及到了到 上、右、下、左 各部分参数 1个参数,上、右、下、左 都相同 {arr[0], arr[0], arr[0], arr[0]}
2个参数,上和下相同、左和右相同 {arr[0], arr[1], arr[0], arr[1]}
3个参数,上、右、下、左(0) 分别设置 {arr[0], arr[1], arr[2], 0}
4个参数,上、右、下、左 分别设置 {arr[0], arr[1], arr[2], arr[3]}
padding - 内边距,可变参数。public Double[] getBorder()
public T setBorder(Double... border)
根据参数的参数不同设置涉及到了到 上、右、下、左 各部分参数 1个参数,上、右、下、左 都相同 {arr[0], arr[0], arr[0], arr[0]}
2个参数,上和下相同、左和右相同 {arr[0], arr[1], arr[0], arr[1]}
3个参数,上、右、下、左(0) 分别设置 {arr[0], arr[1], arr[2], 0}
4个参数,上、右、下、左 分别设置 {arr[0], arr[1], arr[2], arr[3]}
border - 边框宽度,可变参数。public T setBorderDash(Double... dash)
取消虚线:setBorderDash(null)
设置虚线 与 空白相同 3:setBorderDash(3d)
设置虚线的 长度 3 与空白 2: setBorderDash(3d, 2d)
设置虚线的长度 3、空白 2、偏移量 1:setBorderDash(1d, 3d, 2d)
dash - 虚线样式,public Double[] getBorderDash()
数组中个元素意义:[虚线偏移量,虚线长度,虚线间隔 ...重复]
public Double[] getMargin()
public T setMargin(Double... margin)
根据参数的参数不同设置涉及到了到 上、右、下、左 各部分参数 1个参数,上、右、下、左 都相同 {arr[0], arr[0], arr[0], arr[0]}
2个参数,上和下相同、左和右相同 {arr[0], arr[1], arr[0], arr[1]}
3个参数,上、右、下、左(0) 分别设置 {arr[0], arr[1], arr[2], 0}
4个参数,上、右、下、左 分别设置 {arr[0], arr[1], arr[2], arr[3]}
margin - 外边距,可变参数。public Double getMarginTop()
public Double getMarginRight()
public Double getMarginBottom()
public Double getMarginLeft()
public Double getBorderTop()
public Double getBorderRight()
public Double getBorderBottom()
public Double getBorderLeft()
public Double getPaddingTop()
public Double getPaddingRight()
public Double getPaddingBottom()
public Double getPaddingLeft()
public Double getX()
public Double getY()
public T setBox(Double x, Double y, Double width, Double height)
x - 左上角X坐标y - 左上角Y坐标width - 宽度height - 高度public Clear getClear()
public AFloat getFloat()
public T setFloat(AFloat aFloat)
注意:如果需要设置居中,那么还需要同时设置 setClear(Clear)
为Clear.none或Clear.right
aFloat - 浮动样式public Double getLeft()
public Double getRight()
public Boolean isIntegrity()
public double widthPlus()
public double heightPlus()
public Rectangle doPrepare(Double widthLimit)
doPrepare 在接口中 RenderPreparewidthLimit - 宽度限制public Rectangle box()
注意:该方法必须在元素内容大小确定的情况才能放回正确的尺寸
也就是说必须在 doPrepare(Double) 或是手动设置宽度和高度之后调用才能返还正确值
public org.ofdrw.core.basicStructure.pageObj.layer.Type getLayer()
默认为Body
public T setLayer(org.ofdrw.core.basicStructure.pageObj.layer.Type layer)
layer - 图层public boolean isPlaceholder()
public T setPlaceholder(boolean placeholder)
placeholder - true 占位符,不参与渲染, false - 非占位符public T setDisplay(Display display)
display - 显示样式 Display.inlineBlock 行内联 或 Display.block 块级public Display getDisplay()
Display.inlineBlock 行内联 或 Display.block 块级public static Div placeholder(double width, double height, AFloat aFloat)
共享段空间,且不可分割
width - 宽度height - 高度aFloat - 浮动方向public static Div placeholder(Rectangle rec, AFloat aFloat)
rec - 矩形区域aFloat - 浮动方向public <T extends Div> T copyTo(T div)
T - 泛型参数div - 目标对象public Div[] split(double sHeight)
截断元素前必须确定元素的宽度和高度,否则将会抛出异常
元素的分割只作用于竖直方向上,水平方向不做分割每次只会截断1次。
截断的元素在截断出均无margin、border、padding
截断后的内容比截断高度高的多
split 在接口中 ElementSplitsHeight - 切分高度public <T extends Div> Div[] contentSplitAdjust(double sHeight, T div1, T div2)
根据分割高度调整两个克隆元素,达成分割元素的效果
T - Div子类泛型参数sHeight - 分割内容的高度div1 - 克隆元素1div2 - 克隆元素2public String elementType()
用于标识元素类型,选择合适的处理器,自定义元素请重写该方法
关联绘制器:DivRender
public ElementRenderFinishHandler getOnRenderFinish()
public void onRenderFinish(ElementRenderFinishHandler renderFinishHandler)
在该处理器中你可以得到元素在OFD容器的中文件位置和对象ID
renderFinishHandler - 处理器Copyright © 2024. All rights reserved.