此方法安装了llPDFLib.v3.6 控件、对pdf左侧、右侧正文进行了操作。 procedure TForm1.Button1Click(Sender: TObject); var node,nd1:TPDFOutlineNode; PW,ph:integer; bmp:TBitmap; begin bmp:=TBitmap.Create; bmp.LoadFromFile('d:4601.bmp'); sPdf:=TPDFDocument.Create(nil); //pdf文档信息 sPdf.DocumentInfo.CreationDate:=Now; sPdf.DocumentInfo.Producer:='Producer'; sPdf.DocumentInfo.Author:='Author'; sPdf.DocumentInfo.Creator:='Creator'; sPdf.DocumentInfo.Keywords:='Keywords'; sPdf.DocumentInfo.Subject:='subject'; sPdf.DocumentInfo.Title:='Title'; sPdf.FileName:='d: t.pdf'; sPdf.Compression:=ctFlate; spdf.OwnerPassword:='123'; sPdf.ProtectionEnabled:=True; sPdf.PageMode:= pmUseOutlines; sPdf.AutoLaunch:=true; sPdf.PageLayout:=plSinglePage; sPdf.BeginDoc; node:=sPdf.Outlines.Add(nil,'目录1',TPDFGoToPageAction.Create,GB2312_CHARSET); node.Expanded:=True; TPDFGoToPageAction(node.Action).PageIndex:=0; nd1:=sPdf.Outlines.AddChild(node,'第一章',TPDFGoToPageAction.Create,GB2312_CHARSET); nd1.Expanded:=true; TPDFGoToPageAction(nd1.Action).PageIndex:=0; pw:=sPdf.PageWidth; ph:=sPdf.PageHeight; sPdf.CurrentPage.SetActiveFont('黑体',[fsUnderline],50,GB2312_CHARSET); with sPdf do begin Canvas.Font.Size:=50; Canvas.Font.Color:=clRed; Canvas.Font.Style:=[fsBold,fsUnderline]; Canvas.MoveTo(0,10); Canvas.LineTo(PW,10); SetTextAlign(sPdf.Canvas.Handle, TA_CENTER or TA_TOP); //居中 Canvas.TextOut(Round(pw/2),30,'新的故事就要开始了'); Canvas.TextOut(50,30,IntToStr(pw)+','+inttostr(ph)); Canvas.MoveTo(0,50); Canvas.LineTo(PW,50); Canvas.Draw(100,100,bmp); end; sPdf.NewPage; nd1:=sPdf.Outlines.AddChild(node,'第二章',TPDFGoToPageAction.Create,GB2312_CHARSET); nd1.Expanded:=true; TPDFGoToPageAction(nd1.Action).PageIndex:=1; sPdf.EndDoc; sPdf.Free; bmp.Free; end;