From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.help Subject: Re: Printing from WindowXP version of emacs Date: Tue, 20 Dec 2005 22:21:22 +0200 Message-ID: References: <1134660719.186074.250590@z14g2000cwz.googlegroups.com> NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1135111131 9347 80.91.229.2 (20 Dec 2005 20:38:51 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 20 Dec 2005 20:38:51 +0000 (UTC) Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Tue Dec 20 21:38:50 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EooDR-0006M7-LC for geh-help-gnu-emacs@m.gmane.org; Tue, 20 Dec 2005 21:36:09 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EooEM-0006Ky-9R for geh-help-gnu-emacs@m.gmane.org; Tue, 20 Dec 2005 15:37:06 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Eonzz-0004SX-Fa for help-gnu-emacs@gnu.org; Tue, 20 Dec 2005 15:22:15 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Eonzy-0004Rx-ED for help-gnu-emacs@gnu.org; Tue, 20 Dec 2005 15:22:14 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Eonzx-0004Ro-Va for help-gnu-emacs@gnu.org; Tue, 20 Dec 2005 15:22:14 -0500 Original-Received: from [192.114.186.66] (helo=romy.inter.net.il) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Eoo38-0001QP-RX for help-gnu-emacs@gnu.org; Tue, 20 Dec 2005 15:25:31 -0500 Original-Received: from HOME-C4E4A596F7 (IGLD-80-230-91-180.inter.net.il [80.230.91.180]) by romy.inter.net.il (MOS 3.7.2-GA) with ESMTP id DFE69823 (AUTH halo1); Tue, 20 Dec 2005 22:21:14 +0200 (IST) Original-To: help-gnu-emacs@gnu.org In-reply-to: (message from Peter Boettcher on Tue, 20 Dec 2005 09:45:00 -0500) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:32118 Archived-At: > From: Peter Boettcher > Date: Tue, 20 Dec 2005 09:45:00 -0500 > > There are many printers out there now which do not support PostScript, > do not support PCL, and do not, in fact, even support plain text. > They are often called "winprinters" because the windows drivers > perform all the processing on the host CPU, and send simple rasterized > data to the printer. True. > The printer itself will not even print "a" when told to. That depends on the exact meaning of ``when told to''. If by that you mean (what I meant) that the character `a' is written to a port, such as LPT1, which is captured by the OS and redirected to the printer interface, then the printer _will_ print ``when told to''. > On Linux, these printers are accessed via the normal lpr print spools, > but they have filters set up to rasterize the input PS or raw text > before outputing. Similar things happen on MS-Windows; see this page for a more detailed description: http://www.microsoft.com/resources/documentation/Windows/XP/all/reskit/en-us/Default.asp > The question on windows is: how does one access the driver which (in > some cases) must rasterize the input, rather than going directly to > the device. This is a misunderstanding, and if I somehow caused it by inaccurate or misleading wording, I'm sorry: you do NOT ``go directly to the device'' on MS-Windows, at least not on its modern versions. Direct access to devices is only possible for privileged code, one that normally runs in the kernel address space or in a device driver. When, on Windows, Emacs writes to a port such as PRN or to a share name such as \\server\printer, as if they were normal files, this creates a printer job that passes through a series of processors (see the URL above) and only in the end is sent through the wire to the physical device. In other words, these names are not some door to the wire that goes to the printer, they are special names that the OS watches and whose traffic is captured and processed extensively before it gets to the device. Same as on Unix. > Copying plain text to the network name of the printer seems not to > do the right thing universally But not for the reasons that the plain text somehow gets untranslated to the printer: that is simply impossible on Windows. There's some other factor at work here.