基于labwindows 应用PDFlib自动生成PDF文件

最近由于工作需要,需要将文件格式作为PDF格式输入,于是在网上搜集资料,基于C#,java 到时有零星的代码,基于C的没有,自己看了API, 官方案列基本实现功能,仅供参考。下载相关文件地址:http://www.pdflib.com/ 

具体实现步骤如下(参考http://blog.csdn.net/wangjie0377/article/details/7163370):

一 准备PDFlib包,将PDFlib.dll 复制一份到system32,  并且把PDFlib.lib和PDFlib.h文件加入到项目工程里,并在相应的单元加入引用的头文件。


二 PDF部分代码实现:

PDF *p=NULL; 
int img;
SavePanelDisplayToFile (panelHandle1,VAL_FULL_PANEL,VAL_ENTIRE_OBJECT,-1,-1,imageFileName);
if((p=PDF_new())==(PDF *)0)
{
printf("Couldn't create PDFlib object (out of memory)!/n");
        return(2);
}

PDF_TRY(p) 
{
//PDF_set_parameter( p,"license","X600605-009100-4E7661-329E0C");//去除水印。将注册号写入。
if (PDF_begin_document(p,pdfFileName , 0, "") == -1) 
{
printf("Error: %s/n", PDF_get_errmsg(p));
return(2);
}

PDF_begin_page_ext(p, a4_width, a4_height, "");
if(img=PDF_load_image(p,"auto", imageFileName, 0, "")==-1)
{
  printf("Error: %s/n", PDF_get_errmsg(p));
  return(2);

PDF_fit_image(p, img, 0, 0, "adjustpage");
PDF_close_image(p, img);
PDF_end_page_ext(p, "");
PDF_end_document(p, "");

}
PDF_CATCH(p) 
{
printf("PDFlib exception occurred in sample:/n");
printf("[%d] %s: %s/n",
PDF_get_errnum(p), PDF_get_apiname(p), PDF_get_errmsg(p));
PDF_delete(p);
getchar();
return(2);
   
     }

PDF_delete(p);


三 虽然能正常的输出pdf 格式的文件,但是美中不足的是PDF文件中含有水印,怎么去掉呢?

第一种是获得官方授权的license,将注册号填入到注释部分。

第二种是破解,网上有很多种,个人推荐网上牛人的巧方法,直接从.DLL文件中修改。

详细说明请看牛人文章:http://bbs.pediy.com/showthread.php?p=1419309


郑重说明:请支持正版,获取授权。大笑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值