调用打印机_涨知识|你不知道的关于打印机的打印过程和打印机驱动的那些事...

047809d8e00aa88738ad94b6b3bbe1f5.png

以前一直以为打印很简单,不就是编辑好文件按个“打印”就行了?但其实打印过程可以复杂到你分分钟“怀疑人生”。你以为的打印过程可能是这样的 ↓。

eb55c1a5aa2648359938d62e56ab72ad.png
我们看到的打印过程

然而,真正的打印过程是这样的

0b7d7c1d80cebcc5d8a88ab551920317.png
实际上的打印过程

打印机打印一页文件或图片,需要经过很多复杂的步骤,才能输出完整的图像,而整个过程只需要短短几秒钟的时间。

5b1d94dd3a00e785169675216459c97c.png

从办公软件到纸张输出,这中间的每个步骤又是环环相扣的,任何一个环节出现问题都可能会导致打印失败。

所以每个环节都得重视起来,首先需要了解每个环节的内容是什么,每个环节又是怎么运作的。

实际上打印机的打印过程

首先,在文件中点击“打印”之后,办公软件就会调用驱动程序,执行打印的操作。

3650b6bdb34926320f44dcd870a01bf9.png

办公软件调用驱动执行打印操作后,打印驱动会将原始的文件转换为打印机可以识别的数据格式,一般为PCL、PostScript等,打印数据会在本地保存起来,路径为: C:WindowsSystem32SpoolPrinters

8bdda65041302e95d8b061925dc861f9.png

然后本地打印数据会通过打印机端口将数据发送到打印机上,打印机接收数据的端口为USB或者网口。

c6d96cf1b8d4c3acc956c033f206d01a.png

有的打印机上面会有指示灯闪烁,代表数据正在传输,或者网卡的灯频繁闪烁,代表数据通讯频繁。

此时打印机一般会显示正在处理数据,或者正在处理之类的说明,将打印数据进行解析。然后指挥打印机成像的组件,比如激光器和硒鼓,或者打印喷头等完成成像的工作。纸张成像后,打印机将纸张从打印机出纸口吐出。

当电脑发送打印任务后,需要经过以上步骤才能输出图像,而在这个过程中需要借助打印机驱动来完成。

什么是打印机驱动?

然而,很多人知道打印机需要装驱动,却很少有人知道打印机驱动到底长什么样?为什么要安装打印机驱动。

e478a534a2e672cea86636cfdd27eb48.png

打印机驱动程序通俗理解就是,打印机和电脑之间的一个翻译器。电脑和打印机使用的是不同的语言,在发送指令时需要一个“翻译器”才能顺顺利利沟通。

在你眼中打印机驱动是什么样子的?这样

a33847a6189e754925bb1ab6e896f16e.png

或是这样

fcea269bbd04a481fe13d0f3c204db74.png
这个其实是驱动的图标

NO,NO,NO,其实打印机驱动是这样

5ead76367ba2fc362c26ccbf1d642f3b.png

当我们点开安装好的打印机驱动,其实打开的是打印机助手,在打印机助手中,用户可以查询打印机状态、打印状态、设置纸张类型和纸张尺寸等。

45847254354b1700f1a74ea82a58773f.png

而打印机驱动则是“藏”在打印机属性中的,点击“打印机属性”-“高级”才能看到真正的打印机驱动。

72543f866c1dc7f9352dbb1d0e627061.png

其实我们下载的打印机驱动程序压缩包里面还包含了其他程序,方便进行其他操作,如扫描、复印等。

所以,在平时的打印中,打印机驱动一般是作为“翻译器”而存在的。

现在,你对打印机的打印过程和打印机驱动的了解,有没有多一些呢?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/336611.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kite 使用 go_使用Apache Storm和Kite SDK Morphlines的可配置ETL处理

kite 使用 go从我担任软件工程师的第一天起,我总是听到很多方面的相同要求: “ 我们希望所有内容都可配置,我们希望在运行时更改所有内容,我们希望有一个可视化工具来应用所有这些逻辑,以便非开发人员使用和配置我们的…

使用react实现select_使用 Hooks 优化 React 组件

奇技指南本文内容主要是我之前分享的文字版,若想看重点的话可以看之前的Slide: https://ppt.baomitu.com/d/75fc979a本文作者奇舞团前端开发工程师李喆明。需求描述由于作者所在的业务是资讯内容类业务,因而在业务中会经常碰到如下场景:有一个…

cacti不能实时刷新流量图_介绍一种编码帧内刷新算法

0.引言本文主要介绍一种帧内刷新算法,解决I帧太大带来的延迟问题,可以在调优时,值得借鉴。帧内刷新技术避免 I 帧尖峰带来的带宽压力,可以有效地降低视频通信中的缓冲区延迟。帧内刷新算法是一种视频错误恢复的方法,通…

按钮自动居中布局_CSS布局技巧

css实现左右布局和居中布局显示是前端进行页面设计的基础,也是全面了解并学习css一个很好的切入点,因为其中会涉及到对许多css基础点的认知。实现css入门,理解左右布局的实现方式是必经之路,同时也能使我们在项目中涉及前端编码的…

jooq_jOOQ星期二:拉斐尔·温特豪德(Rafael Winterhalter)正在与字节好友合作字节码...

jooq欢迎来到jOOQ Tuesdays系列。 在本系列文章中,我们每隔一个月的第三个星期二发布一篇文章,从jOOQ的角度采访我们发现该行业令人兴奋的人。 这包括从事SQL,Java,开放源代码以及各种其他相关主题的人员。 我们很高兴在第七版中…

多方法接口回调_啊?Java反射遇到接口

本文适合有点Java反射基础的同学,在Java反射调用方法时遇到接口参数是一件很蛋疼的事情。在反射调用方法时需要传参数,像传递基本数据类型进去用就完事,传个对象进去怎么整都没关系,因为你在外部有对象的引用,但 如果需…

0与1世界的初级编程篇之C语言

C语言是一门面向过程的计算机编程语言,与C、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速,工作量小…

QT 手动创建信号函数 与 槽函数

自定义信号槽必须要有Q_OBJCT 自己通过关键字signals创建信号函数,只声明信号函数即可,系统会自动定义它。 利用 public slots: 声明一个槽函数,槽函数不会自动生成,并且去定义它。

九九乘法表代码口述_利用随机函数实现座次表的随机排座

昨天听完讲座,晚上忍不住写了份学后感,今天有老师在文章下留言问如何实现随机排座,上午在快速理赔中心处理交通事故,处理完后将车开去4S店维修,回来后给娃做完中饭就开始写代码实现这个功能,因为有C功底&am…

jep使用_JEP 277“增强弃用”非常好。 但这是一个更好的选择

jep使用维护API很难。 我们正在维护非常复杂的jOOQ API。 但是就语义版本而言,我们遵循相对宽松的规则 。 当您阅读Brian Goetz和其他人关于在JDK中保持向后兼容性的评论时,我只能对他们的工作表示敬意。 显然,我们都希望最终移除Vector &a…

古巴比伦乘法_古巴平台中的通用过滤器–类固醇上的excel过滤器

古巴比伦乘法正如我上次承诺的那样,我计划浏览该平台的某些功能,这些功能我认为非常有价值。 所以我将在这里做一些系列。 从明显的用户界面,过滤,安全性到一些高级功能(如Web Portal,可扩展性,…

excel运行没反应_Excel数据很少文件却很大,问题出在哪里呢?两种方法轻松解决...

经常和Excel打交道的小伙伴可能会有这样的困惑,一个Excel工作簿中的数据明明很少,文件所占的空间却很大。打开这种Excel工作簿后,电脑CPU占用率瞬间飙升,甚至遇见工作簿没有响应的情况出现。遇见这样的工作簿让人窝火,…

java lambda::_基准测试:Java 8 Lambda和流如何使您的代码慢5倍

java lambda::与长期的实现相比,Java 8 lambda和流的性能如何? Lambda表达式和流在Java 8中受到了热烈的欢迎。这些是迄今为止很激动人心的功能,很长一段时间以来,它们就已经应用到Java中了。 新的语言功能使我们可以在代码中采用…

如何在java中实现小数点自增_java编个计算器怎么在加入小数点

展开全部我做的可以运行,你看看吧!import java.awt.*;import java.awt.event.*;import java.lang.*;import javax.swing.*;public class Counter extends Frame{//声明三个面板的布局GridLayout gl1,gl2,gl3;Panel p0,p1,p2,p3;JTextField tf1;TextField…

在Java中使用FileChannel和ByteBuffer对文件进行读写

过去,我讨论过RandomAccessFile以及如何将其用于在Java中进行更快的IO,在本Java NIO教程中,我们将了解如何通过使用FileChannel和ByteBuffer来使用读/写数据。 Channel提供了一种从文件读取数据的替代方法,它提供了比InputStream…

tp5防止sql注入mysql_PHP+Mysql防止SQL注入的方法(life)

这篇文章介绍的内容是关于PHPMysql防止SQL注入的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下我的官方群点击此处。方法一:mysql_real_escape_string -- 转义 SQL 语句中使用的字符串中的特殊字符&#xff0…

neo4j 关系属性_Neo4j:特定关系与一般关系+属性

neo4j 关系属性为了在Neo4j查询中获得最佳的遍历速度,我们应该使关系类型尽可能具体 。 让我们看一下几周前我在Skillsmatter上发表的“ 建模建议引擎建模 ”演讲中的一个例子。 我需要决定如何为成员和事件之间的“ RSVP”关系建模。 一个人可以对某个事件表示“…

2008r2配置 iis mysql php_Windows 2008 R2服务器配置文档iis+php+mysql

关闭防火墙关闭防火墙打开桌面远程连接修复系统依赖文件IIS配置添加角色创建一个网站验证iis是否成功删除默认创建的网站添加网站PHP配置安装解压,改名创建一个php.ini,php.ini由php.ini-production改名得到如果输入php -v后出现如下报错解决方法如下(安…

接口入口在什么地方_弱电工程施工图审查要点?有哪些地方需要审核?审核要求是什么?...

前言:弱电工程施工图审核标准是什么呢?需要审核哪些方面呢?有没有可以参考的地方?今天就分享一套弱电系统施工图审核技术要求,可以参考正文:1.设计文件设计文件是否完整(包括设计说明、平面图、系统图(单体…

drill apache_Apache Drill 1.4性能增强的简要概述

drill apache今天,我们很高兴地宣布,MapR发行版中现已提供Apache Drill 1.4。 钻1.4是MAPR生产就绪和支持的版本,可以从下载这里 ,找到1.4版本说明这里 。 Drill 1.4以其高度灵活和可扩展的体系结构为基础,带来了多种…