提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2020-11-17 10:13:47.673|阅读 353 次
概述:在不同的公司和组织中,打印PDF文档通常是一项关键功能,可以通过在环境中进行配置来使用Aspose.PDF for Java API 。在本文中,将介绍在Java应用程序中可能出现的不同PDF打印方案
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
相关链接:
在不同的公司和组织中,打印PDF文档通常是一项关键功能,可以通过在环境中进行配置来使用Aspose.PDF for Java API 。在本文中,将介绍在Java应用程序中可能出现的不同PDF打印方案。
目前,Java版Aspose.PDF升级到v20.10版,感兴趣的朋友可点击下方按钮下载最新版。(安装包仅提供部分功能,并设置限制,如需试用完整功能请)
按照以下步骤使用Java代码轻松打印PDF文件:
下面的代码段显示了如何使用Java以编程方式打印PDF文件:
//Create PdfViewer object PdfViewer viewer = new PdfViewer(); //Open input PDF file viewer.bindPdf(dataDir + "Test.pdf"); //Print PDF document viewer.printDocument(); //Close PDF file viewer.close();
使用Java语言,打印多个文件或批量打印PDF文件是一个简单的过程。您可以按照以下步骤打印许多PDF文件:
以下代码显示了如何使用Java语言打印多个PDF文件:
// Initialize a list of String type
Listfiles = new ArrayList<>();
// Add multiple files to be printed
files.add(dataDir + "First.pdf");
files.add(dataDir + "Second.pdf");
// Process each file to print
for (String file : files)
{
//Create PdfViewer object
PdfViewer viewer = new PdfViewer();
//Open input PDF file
viewer.bindPdf(file);
//Print PDF document
viewer.printDocument();
//Close PDF file
viewer.close();
}
API在打印PDF文件时为您提供了很多控制。可以根据需要在打印文件时使用不同的字段和方法。例如,如果不想打印PDF文件的所有页面,而只打印几页。它可以是连续的页面范围,例如从第3页到第7页,也可以是随机的页面,如第1,5和6页。可以通过以下步骤涵盖这两种情况:
以下代码显示了如何使用Java打印PDF文档中的特定页面或页面范围:
// Create PdfViewer object
PdfViewer viewer = new PdfViewer();
// Open input PDF file
viewer.bindPdf(dataDir + "test.pdf");
// Set attributes for printing
viewer.setAutoResize(true); // Print the file with adjusted size
viewer.setAutoRotate(true); // Print the file with adjusted rotation
viewer.setPrintPageDialog(false); // Do not produce the page number dialog when printing
// Create objects for printer and page settings and PrintDocument
PrintPageSettings pgs = new PrintPageSettings();
PdfPrinterSettings ps = new PdfPrinterSettings();
// Set printer name
ps.setPrinterName("Microsoft Print to PDF");
// ps.setPrintRange(2); // 0 = all pages; 1 = selection; 2 = some pages
// ps.setFromPage(1);
// ps.setToPage(2);
ps.setPrintRange(1); // 0 = all pages; 1 = selection; 2 = some pages
ps.setSelectedPages(new int[]{1, 3, 5});
// Print document using printer and page settings
viewer.printDocumentWithSettings(pgs, ps);
有时,PDF文件使用密码保护或加密,以确保对数据的授权访问。可以使用Java代码轻松访问和打印安全或加密的PDF文件,并根据需要打印文件。需要按照以下步骤操作:
以下代码基于以下步骤,这些步骤说明了如何使用Java代码打印受保护的PDF文件:
//Load secure PDF document while specifying User or Owner password Document document = new Document(dataDir + "Password.pdf" , "userORowner"); //Create PdfViewer object PdfViewer viewer = new PdfViewer(); //Open input PDF file viewer.bindPdf(document); //Print PDF document viewer.printDocument(); //Close PDF file viewer.close();
将文件发送到打印机的打印队列后,您可以关注打印作业的状态。这使您的应用程序可以确定打印是否成功。PdfViewer类公开了getPrintStatus方法,该方法可帮助您检查打印作业的状态。例如,在将PDF打印为XPS格式时,可以按照以下步骤获取状态:
以下代码显示了如何使用Java代码在PDF打印过程中检查打印任务的状态:
// Create PdfViewer object
PdfViewer viewer = new PdfViewer();
// Open input PDF file
viewer.bindPdf(dataDir + "test.pdf");
// Set attributes for printing
viewer.setAutoResize(true); // Print the file with adjusted size
viewer.setAutoRotate(true); // Print the file with adjusted rotation
viewer.setPrintPageDialog(false); // Do not produce the page number dialog when printing
// Create objects for printer and page settings and PrintDocument
PrintPageSettings pgs = new PrintPageSettings();
PdfPrinterSettings ps = new PdfPrinterSettings();
// Set printer name
ps.setPrinterName("Microsoft Print to PDF");
// Resultant Printout name
ps.setPrintFileName(dataDir + "ResultantPrintout.xps");
// Print the output to file
ps.setPrintToFile(true);
// Print the document with settings specified above
viewer.printDocumentWithSettings(pgs, ps);
// Check the print status
if (viewer.getPrintStatus() != null)
{
// An exception was thrown
Exception ex = (Exception)viewer.getPrintStatus();
if (ex != null)
{
// Get exception message
}
}
else
{
// No errors were found. Printing job has completed successfully
System.out.println("printing completed without any issue..");
}
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn




在现代软件开发过程中,自动化单元测试是确保代码质量与可靠性的关键环节。尤其对于特定框架(如MFC)的代码,测试复杂度显著增加,常因依赖外部资源或交互操作而难以在静默环境中顺利执行。Parasoft C/C++test作为专业的软件测试工具,致力于帮助开发团队高效实施自动化测试,通过其强大的桩函数功能,能够有效模拟依赖组件的行为,从而实现对复杂逻辑的隔离测试。
本文将为大家介绍如何在MyEclipse中使用XDoclet开发EJB 2 Session Bean,欢迎下载最新版体验!
如果能将 CSV 自动转换为 PDF ,就能快速生成清晰、美观的报表,既节省手动排版时间,又能保持数据的专业呈现。本文将介绍如何使用 Spire.XLS for Java 实现这一过程——从加载 CSV 到输出高质量 PDF,仅需数行代码即可完成。
Parasoft C/C++test是一款专为C/C++代码设计的自动化测试工具,通过静态代码分析、单元测试和运行时错误检测等功能,帮助开发团队在早期发现并修复缺陷,提升代码质量和开发效率 。在实际使用中,尤其是在VC6此类旧版开发环境中执行单元测试时,可能会因环境兼容性问题触发链接错误。
相关产品
Aspose.PDF for Java是一种轻量级的处理API,可用代码处理PDF文档。
最新文章 MORE
永利最大(官方)网站相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站