Chinaunix首页 | 论坛 | 博客
  • 博客访问: 567227
  • 博文数量: 826
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5015
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-22 18:09
文章分类

全部博文(826)

文章存档

2011年(1)

2008年(825)

我的朋友

分类: LINUX

2008-08-22 18:18:41

 
笔者是一个Linux系统管理员,最近我多了一项额外的工作——帮一些Windows用户将PostScript文件转换为PDF格式。这是因为在Linux下有一个免费的Ghostscript工具,可以方便地实现这种转换;但Windows下没有免费的转换工具。

  我想出一种方法,使得Windows用户不必学习Linux命令,只需简单地将文件“打印”,就可以完成转换,下面就来介绍一下。

  基本原理

  此方法的基本原理就是利用Ghostscript将PostScript文件转换成PDF格式,然后,通过Samba在Linux下创建一台虚拟的PS-Printer打印机,再使用该虚拟打印机把转换后的PDF格式文件输出到一个共享目录中,供Windows用户使用。下面简单介绍一下所应用到的软件。

  1.Samba

  Samba是一个运行于Linux环境下的软件,它提供了Windows访问Linux的桥梁,让用户能够在不同的系统环境下方便地共享文件和打印机。

  2.Ghostscript

  在Ghostscript中包含了一个ps2pdf工具,该工具能将PostScript转为PDF格式。如果系统有gs命令,则说明已经安装了Ghostscript,否则需要根据系统版本自行安装。

  设置方法

  1.创建“打印”脚本

  创建一个脚本,将打印池中的PostScript文件转化成PDF格式,并把它输出到指定的目录下。通过Samba共享该目录后,用户就可以阅读所创建的PDF文件了。

  首先,为相关用户设置文件输出目录的读、写权限:

#chownnobody/home/becks/pdf
#chmod740 /home/becks/pdf

  然后,根据实际需要设置其它人的权限。

  权限设置完毕后,创建如下内容的脚本,用于将PostScript文件转换为PDF格式:

#!/bin/sh
NAME=`date %b%d-%H%M%S`
#下面填写要输出PDF文件的路径
OUTDIR=/home/becks/pdf
ps2pdf$1$OUTDIR/$NAME.temp
mv$OUTDIR/$NAME.temp$OUTDIR/$NAME.pdf
rm$1

  将此脚本存放到Linux系统下的/usr/bin目录中,并命名为printpdf。该脚本也可以到下载。

  2.设置Samba

  修改smb.conf文件为如下内容:

[global]
 guestaccount=nobody
 hostsallow=192.168.1.0
 security=share
 workgroup=ec-base.com
[PDF]
 path=/home/becks/pdf
 browseable=yes
 writeable=yes
 guestok=yes
 forceuser=nobody
[pdfprinter]
 path=/tmp
 printable=yes
 guestok=yes
 printcommand=/usr/bin/printpdf%s
 useclientdriver=yes
 lpqcommand=  
 lprmcommand=

阅读(168) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~