html 分页原理,html表格分页

最近要用TPageProducer替换模版,同时还须实现html分页,所见即所得,网上找了半天没发现,于是自己琢磨写了一个。代码用delphi6写,

由于实际需要,所以写例子的时候缩小了实际模型,供大家分享。这里写的例子表格,如果一整行的话肯定很容易控制

TDContent=class

TDtxt : String;

Htmltxt : String;

Height : Integer;

NextHeight : Integer;

constructor Create(aTDtxt : String);

end;

HtmlContent=class

Content : String;

Height : Integer;

TDList : TList;

constructor Create(aContent : String);

end;

PageHeight : Integer;

HeadHeight : Integer;

RestHeight : Integer;

clsHtmlContent : HtmlContent;

PageNo : Integer;

procedure MakeContent;  //假设内容

function CaluHeight(height,NextHeight : Integer) : Integer;   //计算页面高度

function NeedChangePage(height,NextHeight : Integer) :Boolean; //是否要分页

procedure SplitPage(allHtml : String); //分离页面

procedure MakeHtmlCode;//形成html

====实现代码

function TForm1.NeedChangePage(height,NextHeight : Integer) :Boolean; //是否要分页

begin

Result := False;

if RestHeight-height-NextHeight <= 0 then Result := True;

end;

procedure TForm1.SplitPage(allHtml : String);

var

tmppageNo : Integer;

lsSave : TStringList;

sPos,ePos : Integer;

s : String;

begin

lsSave := TStringList.Create;

tmpPageNo := 0;

sPos := 0;

while allHtml <> '' do

begin

tmpPageNo := tmpPageNo + 1;

ePos := pos('

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值