当前位置: 首页 > news >正文

seo教学网站高端网站建设制作

seo教学网站,高端网站建设制作,自适应网站导航是怎么做的,最近韩国日本免费观看mv免费版​ 最近接到用户提过来的需求,需要一个能够自动打印图纸的功能,经过几天的研究整出来个初版了的,分享出来给大家,希望能有帮助。 需求描述: ​ 生产车间现场每天都有大量的图纸需要打印,一个一个打印太慢了&#xff0…

​ 最近接到用户提过来的需求,需要一个能够自动打印图纸的功能,经过几天的研究整出来个初版了的,分享出来给大家,希望能有帮助。
需求描述:

​ 生产车间现场每天都有大量的图纸需要打印,一个一个打印太慢了,希望可以有个批量打印的功能。
分析

​ 我们的图纸是存在服务器上,都是pdf版本的,所以批量打印程序可以通过文件名称,然后程序自动将共享文件推送到打印机上打印,这样就可以实现自动化了,并且后续还可以根据情况进行扩展

代码

初版的程序比较简单,使用的是springboot + spring shell 来实现,具体代码如下:

<!-- pom.xml 片段 -->
<!-- spring-boot-starter 版本是随意选的 -->
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.14</version>
</parent>
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><!-- spring-shell 版本需要与 spring-boot-starter 匹配 --><dependency><groupId>org.springframework.shell</groupId><artifactId>spring-shell-starter</artifactId><version>2.1.11</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.26</version><optional>true</optional><scope>compile</scope></dependency><dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.26</version></dependency><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.22</version></dependency></dependencies><build><finalName>DrawPrinter</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.5.4</version> <!-- 使用适合你的Spring Boot版本 --><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>

shell命令代码

package xxxx;import cn.hutool.core.util.StrUtil;
import com.higer.ipd.tools.drawprinter.commons.PdfPrinter;
import com.higer.ipd.tools.drawprinter.entity.DrawInfoEntity;
import com.higer.ipd.tools.drawprinter.service.IDrawInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.shell.standard.ShellComponent;
import org.springframework.shell.standard.ShellMethod;import java.io.File;
import java.util.HashMap;
import java.util.List;@ShellComponent
public class CommonCommand {@Autowiredprivate IDrawInfoService drawInfoService;@ShellMethod(value = "打印消息",key="000",group = "test")public void printMessage(String message) {System.out.println(message);}@ShellMethod(value = "查看本地打印机",key="101",group = "print")public void showLocPrinter(){PdfPrinter.getLocalPrinter().keySet().forEach(System.out::println);}@ShellMethod(value="打印图纸",key="103",group = "print")public void printPdf(String printerName,String fileName,String pageSize){try {String result = PdfPrinter.print(new File(fileName), printerName, pageSize);if(StrUtil.isBlank(result)){System.out.println("打印成功!");}else{System.out.println(result);}} catch (Exception e) {e.printStackTrace();System.out.println("打印出错!");}}
}

上面开发了两个shell命令:“查看本地打印机"和"打印图纸”.

打印图纸代码片段如下:

public static String print(File file, String printerName,String pageSize) throws Exception {if(StrUtil.isBlank(printerName) || file == null || !file.exists()){return "未指定打印机或待文件不存在,请确认!";}// 1.根据打印机名称找到对应的打印机服务,Map<String, PrintService> printerMap = getLocalPrinter();PrintService printService = printerMap.get(printerName);if(printService == null){return "没有找到指定的打印机!";}// 2.加载pdf文件,并设置打印配置,打印try (PDDocument document = PDDocument.load(file)){PrinterJob printJob = PrinterJob.getPrinterJob();printJob.setJobName(file.getName());printJob.setPrintService(printService);PDFPrintable pdfPrintable = new PDFPrintable(document, Scaling.SCALE_TO_FIT);Book book = new Book();PageFormat pageFormat = new PageFormat();pageFormat.setOrientation(PageFormat.PORTRAIT);//纵向pageFormat.setPaper(getPaper(pageSize));//设置纸张book.append(pdfPrintable, pageFormat, document.getNumberOfPages());printJob.setPageable(book);printJob.setCopies(1);//设置打印份数HashPrintRequestAttributeSet pars = new HashPrintRequestAttributeSet();pars.add(Sides.ONE_SIDED); //设置单双页printJob.print(pars);}return "";
}

效果

启动后进入输入命令状态,输入help可以看到帮助信息,效果如下:

在这里插入图片描述
输入 help 103 可以看到打印图纸的帮助信息,命令格式为: 103 打印机名称 文件名称 页面大小(A3/A4)

在这里插入图片描述
源码下载

http://www.dt0577.cn/news/4562.html

相关文章:

  • h5免费制作网站有哪些新开店铺怎么做推广
  • 网站开发语言的选择免费网站推广软件哪个好
  • 海口顶尖网站建设手机刷网站排名软件
  • 大连开发区天气优化二十条
  • c 如何做网站国际时事新闻最新消息
  • 公司网站二维码怎么做的seo服务是什么意思
  • 网站先做前端还是后端网站排名seo培训
  • 做模型挣钱的网站深圳网站设计
  • 外包网站建设百度今日数据统计
  • 手机可以做网站的服务器吗百度公司官网
  • 中国互联网公司排名2023seo外链发布技巧
  • 页面设计步骤seo人才招聘
  • 智能网站系统可以做app吗搜索引擎优化的主题
  • 做平面设计必知的网站在线友情链接
  • 网站建设学的是什么知识企业网站排名优化
  • 怎么样新建一个网站推广公司哪家好
  • python可以做网站吗哈尔滨seo关键词排名
  • wordpress安装打不开海淀区seo引擎优化
  • 洛阳网站推广公司电话北京网站优化策略
  • 一个网站做十个二级域名建站官网
  • 域名访问网站啥意思网络广告宣传平台
  • 做推送用什么网站最火的网络推广平台
  • 可以做砍价活动的网站hao123网址之家官网
  • 自助健站什么是网站推广
  • 临沂门户网站制作什么是竞价
  • 免费做网站的好不好厦门seo服务
  • 强生网站还要怎样做哪里有网页设计公司
  • 成都网站建设龙兵网络优化大师手机版下载
  • 影视cms系统排名seo赚钱吗
  • 哪个网站音乐做的最好的关键词排名怎样