此方法安装了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:\tt.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;

  

Delphi Pdf的使用方法的更多相关文章

  1. Delphi之静态方法,虚方法virtual,动态dynamic,抽象abstract,消息

    Delphi之静态方法,虚方法virtual,动态dynamic,抽象abstract,消息 http://www.cnblogs.com/zhwx/archive/2012/08/28/266055 ...

  2. [delphi]indy idhttp post方法

    网易 博客 LOFTCam-用心创造滤镜 LOFTER-最美图片社交APP 送20张免费照片冲印 > 注册登录  加关注 techiepc的博客 万事如意 首页 日志 LOFTER 相册 音乐 ...

  3. Delphi的移动文件方法(转)/删除文件:/文件的复制

    RenameFile,DeleteFile,MoveFile Delphi的移动文件方法 uses  ShellApi; procedure ShellFileOperation(fromFile: ...

  4. delphi操作文本文件的方法简介

    delphi操作文本文件的方法简介减小字体 增大字体 作者佚名来源不详发布时间2008-5-31 10:31:16发布人xuedelphi1 文件类型和标准过程       Delphi同Object ...

  5. PHP制作pdf文档方法

    原文:PHP制作pdf文档方法 本篇博客是在看完 php+mysql web书以后自己的测试代码,虽然是测试代码,但不是简单的粘贴复制,为了学习thinkPHP框架,自己就用这个来做的,而且这本书已经 ...

  6. 怎么编辑PDF文件内容,PDF文件编辑方法

    怎样编辑PDF文件内容?这是一个常常困扰我们的问题,工作当中我们经常会收到PDF格式的文件,但有时的文件内容不是我们想要的或者是觉得不合理的需要改掉.但是每次有这样的问题时都没有什么好的解决方法,每次 ...

  7. PDF文件怎么修改,PDF文件编辑方法

    PDF文件是一种独特的文件,在日常办公中已经成为我们使用最广泛的电子文档格式.在使用PDF文件中会遇到PDF文件有错区的时候,再从新制作一个PDF文件会比较麻烦,只能通过工具来对PDF文件进行修改,这 ...

  8. [.NET开发] C#使用doggleReport生成pdf报表的方法

    本文实例讲述了C#使用doggleReport生成pdf报表的方法.分享给大家供大家参考,具体如下: 1. 安装nuget -install package DoddleReport -install ...

  9. PDG转图像、PDF的若干方法

    作者:马健邮箱:stronghorse_mj@hotmail.com发布:2006.05.26更新:2008.08.24 补充说明:此文成文较早,其中对Pdg2Pic.FreePic2Pdf的描述早已 ...

随机推荐

  1. jquery 事件,注册 与重复事件处理

    jquery有时候会出现重复注册一个事件的问题,导致点击一个事件,这个事件被重复执行,也就是触发事件的次数有几次, 那么这个事件就会被执行叠加重复几次. 我这边做的一个项目,在某个页面初始化的时候,给 ...

  2. 一个由正则表达式引发的血案 vs2017使用rdlc实现批量打印 vs2017使用rdlc [asp.net core 源码分析] 01 - Session SignalR sql for xml path用法 MemCahe C# 操作Excel图形——绘制、读取、隐藏、删除图形 IOC,DIP,DI,IoC容器

    1. 血案由来 近期我在为Lazada卖家中心做一个自助注册的项目,其中的shop name校验规则较为复杂,要求:1. 英文字母大小写2. 数字3. 越南文4. 一些特殊字符,如“&”,“- ...

  3. 转: Your build settings specify a provisioning profile with the UUID, no provisioning profile was found

    http://blog.csdn.net/rbyyyblog/article/details/12220875 在Archive项目时,出现了“Your build settings specify ...

  4. iOS定位服务CoreLocation

    欢迎訪问我的新博客: 开发人员说 基于LBS的应用开发是当今移动开发中的一大热门, 当中主要涉及到地图和定位两个方面. iOS开发中, 定位服务依赖于CoreLocation框架, CLLocatio ...

  5. HTML里面的文本标签

    以下就是重要的标签: <html></html> 创建一个HTML文档,是网页源码的開始符和结束符,每一个网页的源码必然是以这两个标签開始和结束. <head>&l ...

  6. Mysql数据库分库备份,分表备份

    分库备份 #!/bin/sh DBPATH=/server/backup MYUSER=root MYPASS=oldboy123 SOCKET=/data/3306/mysql.sock MYCMD ...

  7. 657. Judge Route Circle【easy】

    657. Judge Route Circle[easy] Initially, there is a Robot at position (0, 0). Given a sequence of it ...

  8. python简单网页服务器示例

    参考:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/00138683268974 ...

  9. linu保持远程会话

    django的server启动后,若关闭ssh会就会自动切断进程,结汇对话 命令scree会保持这个会话,在关闭ssh后,仍然能访问 shell下 1screen 进入后 2启动server 关闭ss ...

  10. Doing Homework again(杭电1789)

    Doing Homework again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...