安装 Acrobat Reader。
然后使用此命令将一个 PDF 文档打印到 Laserjet 打印机:
#cat mydocument.pdf | acroread -toPostScript | lp -dmylj2200
要只是打印其中的某些页:
#cat mydocument.pdf | acroread -toPostScript -start 5 -end 15 | lp -dmylj2200
——————————————————————————
实话实说,此命令非我想的,我没有做过类似任务,这个是某人在用hpunix的时候命令行打印所用的,这里只是铁一下,good luck
B. 打开了一个PDF,然后我发现右上角不是这个PDF的名称却是显示TO某家公司,为什么
正文:这是PDF编辑器平台打的广告,你关闭后再次打开就会显示你自己的PDF名称了。首先我们在手机中接受查看pdf文件需要使用到专业的PDF阅读器,这个时候就需要打开手机中的软件商店搜索pdf阅读器进行下载安装!将搜索到的轻快pdf阅读器安装在手机中。为什么选择这款PDF阅读器的原因是因为这款阅读器具有基本的编辑功能,在手机中使用这款阅读器可以对pdf文件进行编辑修改!打开安装完成的阅读器,进入到软件界面,通过右上角的添加按钮进入到文件添加界面,将需要查看的pdf文件添加到阅读器中。
文件添加完成后在阅读器首页即可查看到文件,每个文件名称后面都会有一个选项按钮(竖状三点形状)。点击名称后的三点选项即可弹出“重命名”和“删除”选项,点击重命名即可修改文件名称。点击“删除”选项即可删除该文件,注:文件删除后不可恢复,请谨慎删除。如需要修改文件内容可点击文件名称进入到阅读界面,根据阅读界面右上角四个功能选项以及长按文字1-2秒即可编辑修改文字内容。操作环境:【华为手机鸿蒙OS2.0 手机版本号2.0.0208】
拓展资料:
1、pdf是portable document format的缩写,意思是“便携式文档格式”。它是由 Adob_e Systems 开发的一种文件格式,用于独立于应用程序、操作系统和硬件的文件交换。 Pdf 文件基于 postscript 语言图像模型。无论使用何种打印机,都能保证准确的色彩和准确的打印效果,即PDF会忠实再现原稿的每一个字符、颜色和图像。便携式文件格式是一种电子文件格式。这种文件格式独立于操作系统平台,即PDF文件在windows、UNIX和Apple的Mac OS操作系统中很常见。这一特性使其成为互联网上电子文档分发和数字信息传播的理想文档格式。越来越多的电子书、产品说明、公司公告、网络资料和电子邮件开始使用PDF文件。
2、Adobe设计了PDF文件格式来支持跨平台多媒体综合信息的发布和发布,特别是为网络信息发布提供支持。为了实现这一目标,PDF具有许多其他电子文档格式无法比拟的优势。 pdf文件格式可以将与设备和分辨率无关的文本、字体、格式、颜色以及图形和图像封装在一个文件中。格式文件还可以包含电子信息,例如超文本链接、声音和动态图像。支持专业文件,集成度高,安全可靠。
3、对于普通读者来说,PDF制作的电子书具有纸质书的质感和阅读效果,能够真实呈现原书原貌,并且可以任意调整显示尺寸,为读者提供个性化的阅读方式。技术要点pdf主要由三种技术组成。派生自postscript生成和输出图形;pdf标志系统内嵌字体,字体随文件传输;结构化存储系统将这些元素和任何相关内容绑定到单个文件中,并带有适当的数据压缩系统。Pdf 文件使用行业标准压缩算法,通常比 postscript 文件更小,易于传输和存储。它也是页面独立的。一个PDF文件包含一个或多个“页面”,可以单独处理每一页,特别适合多处理器系统的工作。此外,一个PDF文件还包含文件中使用的PDF版本以及文件中一些重要结构的定位信息。由于其优势,PDF逐渐成为出版行业的新宠。
C. PDF格式是怎么创建的可不可以编辑
PDF文件制作方法
PDF文件目前已经是电子文档的事实标准,它体积小,传输方便而且文档内容清晰丰富。生成PDF文档的方式有很多种,可以购买专门的制作软件,如Abode Acrobat是其中最专业的,但是价格昂贵,不愿意使用盗版的可以使用其它方法生成。本文主要是介绍在 Windows 下生成PDF的几种方法,所用软件完全Free。而且生成的质量很不错。至于Linux下则方法更多。以后有机会详细介绍。
一、用Postscript? Printer + Ghostscript 生成
这是利用Postscript Printer先生成PS文件,然后利用Ghostscript将PS文件转换为PDF文件。首先需要下载以下几个文件:
1、Postscript? Printer 驱动。虽然其它的打印驱动也可以使用,但我推荐使用Adobe的驱动,可以在Adobe的网站下载,有2个文件可供下载:Winstchs.exe (中文简体)和 winstcht.exe(中文繁体)。可以根据需要下载。
2、中文PPD文件。PPD是Postscript Printer Description 的意思,也就是Postscript打印机描述文件。里面包含了字体,打印页面等的一些描述。Postscript打印机需要这些文件。推荐使用Adobe提供的Adobe PPD文件,是一个压缩包:adobe.zip。里面包含了简体和繁体的打印机说明。
3、Ghostscript程序。目前Windows的最新的版本是8.14,下载gs814w32.exe。这是一个自由软件。可以分析PS文件,并可以将PS文件转换成PDF文件。而且它还是下面要安装的程序(GSview)的底层驱动。
4、GSview是一个查看PS和PDF文件的工具。它是目前查看这类文件最快的软件,要比Acrobat Reader快的多。但是没有Acrobat Reader漂亮。下载最新的4.6版 gsv46w32.exe。安装它之前必须安装Ghostscript,因为Ghostscript是它的底层驱动。
下了安装这些软件。安装Ghostscript和GSview很方便,直接安装即可。记着先安装Ghostscript后安装GSview,而且在安装Ghostscript时也顺便安装好字体。
安装大约驱动有些麻烦。首先解压adobe.zip到一个目录中,这里假设下载到C:\downloads\adobe中。然后运行Winstchs.exe安装Postscript 驱动。
以下是安装要点:
安装到“打印机连接类型时”,选择“本地打印机”;打印端口选择“FILE: 本地端口”;然后是选择打印机型号,这里很重要,点击“浏览”,找到C:downloadsadobe目录,这时回显示5个型号的打印机,我们一般需要一个即可,“Acrobat Distiller CS”表示中文简体,“Acrobat Distiller CT”则是中文繁体。选择好简体然后确定。后面就直接下一步就很快可以安装好了。
安装好以后计算机可能需要重启,之后你会看到你的计算机会多处一个打印机,打印机名就是“Acrobat Distiller CS”。这就是安装好后的Postscript打印机了。如果你有多个打印机的话,也可以设为默认打印机。
那如何制作PDF文件呢?也比较简单。首先用Word等写作工具编辑好文档。然后选取打印机为“Acrobat Distiller CS”开始打印。这时会出现一个对话框标题是“打印到文件”,你可以选择打印出的PS文件名以及路径。另外文件名后缀是ps而且保存文件类型选择“所有文件”。不要使用prn,否则还需要该为ps,主要是因为GSview自动与ps文件关联。可以双击直接打开ps文件。
下来直接双击生成的ps文件,GSview程序会打开它,你也可以浏览用GSview看看打印的效果。如果不错就可以开始转换为pdf文件了。选择“File”下的“Convert”开始转换,里面也有一些选项可以选择,如转换多少页,分辨率选择多少,输出的文件名等等。而输出的文件名后缀必须是pdf。更详细的转换选项可以在“Convert”对话框的“Properties”里进行详细设置。不过一般只要这些默认值便可输出漂亮的PDF文件了。
现在你可以使用Acrobat Reader打开你生成好的PDF文件好好欣赏一下了。
举个例子,一个大约5.7M包含图片的Word文档,打印成PS文件大小是5.6M,而最后生成PDF文件的大小则是只有1.5M。这对于网络传输文档是很方便的,而且可以防止别人修改你的文件。如果用Acrobat打开PDF的话,就另当别论了,因为Acrobat本身就有PDF编辑功能,当然它也是一个很贵的软件。
提醒:
最近一直有看过这篇文章的朋友给我发信说生成的PDF文件中有乱码,我考察以后发现问题出在gsview的一些设置上,现在将具体的解决方法写在下面:
用gsview打开一个ps文件以后,选取File->Convert,处来一个对话框,点取Properties,再处来一个对话框,设置如下选项:
CompatibilityLevel 设为 1.3或1.4 PDFSETTINGS 设为 /default EmbedAllFonts 设为 True这样就可以正常的输出中文PDF文件了。
二、用OpenOffice生成
这是一个非常简单的方法。OpenOffice是一个开源的自由Office软件,目前功能我认为已经很不错了,而且在Windows下的速度也不错,其实它主要还是支持Linux等Unix类操作系统。简体中文版可以在它的中文网站下载。下载简体中文版即可,目前最新版是1.1.2。文件大小大概有上百M。
下载后安装即可。安装比较简单,这里不再介绍。
它的使用和Word很想象,很容易上手,而且可以兼容Word、Excel、PowerPoint文档,这些文档它都可以打开。因此你可以用它来编辑MS Office文档,也可以编辑它自己的OpenOffice文档。
至于生成PDF,那是一个非常简单的事情。可以在工具栏直接点击“直接输出PDF”按钮或者在“文件”下选取“输出成PDF”就可以非常容易的生成PDF文件。它生成PDF文件的质量也比较高。
三、用TeX/LaTeX生成
这种方法比较高级,生成的可定制选项非常多。涉及到TeX/LaTeX的许多知识,还要有专门的生成环境(latex、fptex等)。以后有专门的专栏讲解TeX/LaTeX。这里只是简单介绍一下它生成文件的流程。
编辑好tex文件后有有3个方法可以将tex源文件转换为pdf。
1、运行tex或latex程序由tex源文件生成dvi文件,再运行dvipdfm程序将dvi文件转换为pdf文件。
2、运行tex或latex程序由tex源文件生成dvi文件,再运行dvips程序将dvi文件转换为ps文件,然后运行ps2pdf将ps文件转换为pdf,或者运行GSview将ps文件转换为pdf文件。
3、直接运行pdftex或者pdflatex由tex文件直接生成pdf文件。
有兴趣TeX/LaTeX的可以看看这个入门文件《The Not So Short Introction to LateX2e》中文版。
这几种方法中,第二种最简单,非常容易转换。对于不想用OpenOffice的,也可以使用第一种方法。第一种方法生成步骤比第二种麻烦一些,但是质量确非常高。而第三种方法则用的不多,而学术界则用的比较多,因为在论文排版、书稿撰写等方面,TeX/LaTeX比Word排出的效果要好的多,很多国际包括国内的学术刊物对于投稿的要求都是要求TeX格式。
对于想使用盗版软件的人来说,化几块钱(可怜正版要好几千RMB啊)买个Adobe Acrobat 最新的6.0,安装以后,计算机会增加一个打印机“Adobe PdfWriter”,以后需要生成PDF文档时,只要选择这个打印机,则自动会输出PDF文件。不过还是不要使用盗版的好,人家编个软件也不容易
D. 由Postscript文件转换成的PDF文件,这种pdf文件如何转换成Word
1. PDF转TXT
1)PDF 是否为图片,如果是就不能直接转,得通过OCR识别成文字,ABBYY FineReader OCR Pro 10 简体中文破解版(迅雷下载)、Readiris Pro 12 (电驴下载),当然也可以识别文本的PDF文档。
2)如果 PDF 不是图片,转单个的 PDF 最好用的是福昕阅读器 Foxit Reader ,界面下,文件>另存为,选TXT格式,阅读器版本要高一点的,低版本不能转存;
3)有保护的文档,PDFDecrypt 或 PDF Password Cracker v3.1非Pro版,解密后再转换;不行的话,截图+OCR识别;
4)PDF 批量转TXT,下载 Atrise ToTXT 或者 AnyBizSoft PDF to TXT,这两个软件很好用,其它的软件很多转出来会乱码。
2. PDF 转图片
用 Zan Image Printer破解版。
3.PDF 转 Office 文档
用 Nitro Pdf Professional,电驴下破解版,牛的软件,按原样转换,有强大功能,完成多种格式与 PDF 的互转、PDF 的修改。
4. PDF 文档修改
Foxit Reader 自带的 PDFEdit.exe 可以做简单的局部修改。
Adobe Acrobat Professional 9 做全文编辑比较好。
----------------------------------------------------------------------------------------------------
转好的TXT文件可以用版本高点的EmEdit来编辑。
E. 如何免费pdf全部转化为word版
找软件PDF To Word Converter,最好是找破解版或者是绿色版的,还有也可以在线联网将PDF转为word文件
转出来的Word文件就可以正常进行编辑操作了。
F. 如何用java将pdf文件转换成word文件
需要用到插件jacob,自己去下载吧。
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
public class D2P {
private ActiveXComponent wordCom = null;
private Object wordDoc = null;
private final Variant False = new Variant(false);
private final Variant True = new Variant(true);
/** *//** *//** *//**
* 打开word文档
*
* @param filePath
* word文档
* @return 返回word文档对象
*/
public boolean openWord(String filePath) {
//建立ActiveX部件
wordCom = new ActiveXComponent("Word.Application");
try {
//返回wrdCom.Documents的Dispatch
Dispatch wrdDocs = wordCom.getProperty("Documents").toDispatch();
//调用wrdCom.Documents.Open方法打开指定的word文档,返回wordDoc
wordDoc = Dispatch.invoke(wrdDocs, "Open", Dispatch.Method,
new Object[] { filePath }, new int[1]).toDispatch();
return true;
} catch (Exception ex) {
ex.printStackTrace();
}
return false;
}
/** *//** *//** *//**
* 关闭word文档
*/
public void closeWord() {
//关闭word文件
wordCom.invoke("Quit", new Variant[] {});
}
/** *//** *//** *//**
* * 将word文档打印为PS文件后,使用Distiller将PS文件转换为PDF文件 *
*
* @param sourceFilePath
* 源文件路径 *
* @param destinPSFilePath
* 首先生成的PS文件路径 *
* @param destinPDFFilePath
* 生成PDF文件路径
*/
public void docToPDF(String sourceFilePath, String destinPSFilePath,
String destinPDFFilePath) {
if (!openWord(sourceFilePath)) {
closeWord();
return;
}
//建立Adobe Distiller的com对象
ActiveXComponent distiller = new ActiveXComponent(
"PDFDistiller.PDFDistiller.1");
try {
//设置当前使用的打印机,我的Adobe Distiller打印机名字为"Adobe PDF"
wordCom.setProperty("ActivePrinter", new Variant("MS Publisher Color Printer"));
//设置printout的参数,将word文档打印为postscript文档。目前只使用了前5个参数,如果要使用更多的话可以参考MSDN的office开发相关api
//是否在后台运行
Variant Background = False;
//是否追加打印
Variant Append = False;
//打印所有文档
int wdPrintAllDocument = 0;
Variant Range = new Variant(wdPrintAllDocument);
//输出的postscript文件的路径
Variant OutputFileName = new Variant(destinPSFilePath);
Dispatch.callN((Dispatch) wordDoc, "PrintOut", new Variant[] {
Background, Append, Range, OutputFileName });
System.out.println("由word文档打印为ps文档成功!");
//调用Distiller对象的FileToPDF方法所用的参数,详细内容参考Distiller Api手册
//作为输入的ps文档路径
Variant inputPostScriptFilePath = new Variant(destinPSFilePath);
//作为输出的pdf文档的路径
Variant outputPDFFilePath = new Variant(destinPDFFilePath);
//定义FileToPDF方法要使用adobe pdf设置文件的路径,在这里没有赋值表示并不使用pdf配置文件
Variant PDFOption = new Variant("");
//调用FileToPDF方法将ps文档转换为pdf文档
Dispatch.callN(distiller, "FileToPDF", new Variant[] {
inputPostScriptFilePath, outputPDFFilePath, PDFOption });
System.out.println("由ps文档转换为pdf文档成功!");
} catch (Exception ex) {
ex.printStackTrace();
} finally {
closeWord();
wordCom=null;
//释放在程序线程中引用的其它com,比如Adobe PDFDistiller
ComThread.Release();
}
}
public static void main(String[] argv) {
D2P d2p = new D2P();
d2p.docToPDF("d:/12.doc", "d:/1p.ps", "d:/1p.pdf");
//这里是你建一个叫12.doc的word文档,生成的文档将在D盘下
//1p.ps和1p.pdf(这是我们要的)
}
}
G. 如何将pdf格式文件转换成word格式文件
1.Office组件把PDF转成Word:
可以利用Office 2003中的Microsoft Office Document Imaging组件来实现PDF转WORD文档,也就是说利用WORD来完成该任务。方法如下:
用Adobe Reader打开想转换的PDF文件,接下来选择“文件→打印”菜单,在打开的“打印”窗口中将“打印机”栏中的名称设置为“Microsoft Office Document Image Writer”,确认后将该PDF文件输出为MDI格式的虚拟打印文件。
注:如果没有找到“Microsoft Office Document Image Writer”项,使用Office 2003安装光盘中的“添加/删除组件”更新安装该组件,选中“Office 工具 Microsoft DRAW转换器”。
然后,运行“Microsoft Office Document Imaging”,并利用它来打开刚才保存的MDI文件,选择“工具→将文本发送到Word”菜单,在弹出的窗口中选中“在输出时保持图片版式不变”,确认后系统会提示“必须在执行此操作前重新运行OCR。这可能需要一些时间”,不管它,确认即可。
注:对PDF转DOC的识别率不是特别完美,转换后会丢失原来的排版格式,所以转换后还需要手工对其进行排版和校对工作。
以上仅在word2003中可用,其他版本没有Microsoft Office Document Image Writer。
2.利用第三方工具软件:
ScanSoft PDF Converter For Microsoft Word
下载地址:
http://www.mydown.com/soft/245/245551.html
3.ASP.Net实现将Word转换PDF格式:
一:必备工具
安装必须的工具MS VS.Net2003,MS Office2003,Adobe Acrobat 7.0 Professional,postscript.exe,gs811w32.exe
MS VS.Net2003的安装不说明
MS Office2003的安装不说明
Adobe Acrobat 7.0 Professional安装说明
运行setup.exe文件,出现输入序列号,就运行注册机,用鼠标在第一行刷下就可以看见序列号,复制粘贴到Adobe Acrobat 7.0 Professional安装程序对话框,安装到最后出现注册时,点击PHONE...将安装程序中显示的第二行序列号(第一行是刚才注册机生成的序列号)复制粘贴到注册机的第二行,点击右边的按钮,再用鼠标刷第三行授权号就出来了,将其复制粘贴到安装程序的最后一行,完成安装注册!
postscript.exe默认安装就可以了,它是一个PDF转换时所需要的脚本
gs811w32.exe默认安装就可以,它其实是个PDF虚拟打印机的驱动
二:配置虚拟打印机
进入Windows的控制面板,进入打印机,点击"添加打印机"图标.在安装对话框上"按一步",出现选择打印机时,在制造商一栏中选择"Generic",在打印机一栏中,选择"MS Publisher Color Printer",然后一路按下一步,知道安装结束.
三:开始写第一个程序(脚本程序)
为什么要使用脚本程序进行转换呢,其实实际测试过程中,使用PDF Distiller的对象引用到C#后,转换成功,但整个PDF Distiller对象不能释放,第二次再转换时,就发生了错误,故此处使用脚本程序实现转换.这样我们只要在C#的程序中调用脚本程序就可以实现WORD到PDF的转换。
宿主脚本文件名:ConvertDoc2PDF.js
脚本文件内容:
var files = WScript.Arguments;
var fso = new ActiveXObject("Scripting.FileSystemObject");
var word = new ActiveXObject("Word.Application");
var PDF = new ActiveXObject("PDFDistiller.PDFDistiller.1");
word.ActivePrinter = "MS Publisher Color Printer";
//files(0) 为WORD文档文件名
//files(1) 为,转换后需要保存的路径
//调用fso.GetBaseName(files(0))后,为无路径,无扩展名,的文件名
//files.length为文件参数的个数,使用循环可以支持多个WORD文档的转换
var docfile = files(0);
var psfile = files(1) + fso.GetBaseName(files(0)) + ".ps";
var pdffile = files(1) + fso.GetBaseName(files(0)) + ".pdf";
var logfile = files(1) + fso.GetBaseName(files(0)) + ".log";
try{
var doc = word.Documents.Open(docfile);
//WORD文件转成PS文件;
word.PrintOut(false, false, 0, psfile);
doc.Close(0);
//PS文件转成PDF文件;
PDF.FileToPDF(psfile,pdffile,"");
fso.GetFile(psfile).Delete();//删除PS脚本文件
fso.GetFile(logfile).Delete();//删除转换的日志文件
word.Quit();
WScript.Echo("isuccess");//成功
WScript.Quit(0);
}
catch(x)
{
word.Quit();
WScript.Echo("isfail");//失败
WScript.Quit(0);
}
然后测试该脚本程序
启动MS-DOS,输入如下命令:
c:\>cscript //nologo c:\ConvertDoc2PDF.js c:\test.doc c:\
说明:
运行成功后将看到test.pdf文档了
c:\test.doc参数对应的是脚本程序中的files(0)
c:\参数对应的是脚本程序中的files(1)
你可以安照该脚本改写成,支持多个参数,使用FOR循环,一次转换多个WORD文档,此处没有使用多个文件转换功能,是考虑到,该段脚本放在C#的线程中执行,这样一来也可以转换多个WORD文档.
四:使用C#调用ConvertDoc2PDF.js脚本
新建一个C#的WINDOWS应用程序,添加一个按钮button1
添加一个函数,函数名StartConvertPDF
public void StartConvertPDF()
{
Process proc = new Process();
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.WorkingDirectory = @"c:\";
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true; //输入重定向
proc.Start();
proc.StandardInput.WriteLine(@"cscript //nologo c:\ConvertDoc2PDF.js c:\test.doc c:\");
proc.StandardInput.WriteLine("exit");
proc.WaitForExit();
}
然后在按钮的CLICK事件中添加调用线程的代码
private void button1_Click(object sender, System.EventArgs e)
{
//定义线程序
Thread thConvert = new Thread(new ThreadStart(StartConvertData));
thConvert.Start();
}
注意:在测试上面的C#程序时,必须添加如下命名空间
using System.Diagnostics;
using System.Threading;
五:健壮的C#调用代码(实际考虑,可放在B/S系统中)
完成第4步的C#测试后,细心的读者,可能看到一点问题,那就是如何得到脚本运行后输出的结果,如何给线程中调用的StartConvertData方法传递参数
1:传递参数,此话说来也可用一篇教程告诉大家线程中方法如何来传递参数,现在就讲一个方案,此种方案很多,我采用一个类,初始化这个类,然后调用该类的方法作为线程执行的方法
2:得到脚本的输出结果,使用Process对象的输出重定向,就是说改变输出方向,使脚本不输出到控制台(MS-DOS窗口),而是重定向输出到C#程序中,并采用线程的异步回调方法,显示脚本运行结果。
添加一个新类,类名为ToPdf
using System;
using System.Diagnostics;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace Doc2Pdf
{
public class ToPdf
{
private string strWord = "";//此处的WORD文件不含路径
private string sPath = "";
public string sExecResult = "";
public bool bSuccess = false;
public ToPdf(string sParamWord,string sParamPath)
{
strWord = sParamWord;
sPath = sParamPath;
}
public void StartConvertPDF()
{
Process proc = new Process();
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.WorkingDirectory = sPath;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true;//标准输入重定向
proc.StartInfo.RedirectStandardOutput = true;//标准输出重定向
proc.Start();
proc.StandardInput.WriteLine("cscript //nologo "+sPath+"ConvertDoc2PDF.js "+sPath+strWord+ " "+sPath);
proc.StandardInput.WriteLine("exit");
sExecResult = proc.StandardOutput.ReadToEnd();//返回脚本执行的结果
proc.WaitForExit();
proc.Close();
}
public void EndConvertPDF(System.IAsyncResult ar)//ar参数必须写,是线程执行完成后的回调函数
{
if(sExecResult.IndexOf("isuccess")!=-1)bSuccess=true;
else if(sExecResult.IndexOf("isfail")!=-1)bSuccess=false;
//如果放在B/S系统,你可以在此处写数据库,是成功还是失败,并用一个WEBService程序不断检查数据库,此WEBService程序不放在该回调用函数中
//如果放在C/S系统,回调函数可以不放在类中,以便在窗体程序中调用结果
}
}
}
改写原来的button1_Click事件中的代码
private void button1_Click(object sender, System.EventArgs e)
{
ToPdf my2Pdf = new ToPdf("test.doc","c:\\");
ThreadStart thStartConvert = new ThreadStart(my2Pdf.StartConvertPDF); //开始异步调用线程
thStartConvert.BeginInvoke(new AsyncCallback(my2Pdf.EndConvertPDF),null);//设置异步线程的回调函数
//如果需要转换多个WORD,你可以用循环
//如果是B/S系统,可以将本段代码放在ASPX中,并结合客户端的无刷新显示数据的技术,不断访问WEBService程序,以确定PDF是否转换成功或失败
}
六:编写更加健壮的C#调用代码(实际考虑,可放在WINDOWS的服务程序中)
实际使用时,由于转化PDF时CPU的占用率很高,考虑只在同一时间转换一篇WORD文档,放弃异步线程的回调函数的使用,考虑一个WINDOWS的服务程序。
写一个函数CheckData2Convert(),不断的检查没有转换的WORD文档,并使用循环调用ToPdf类中执行转换方法StartConvertPDF
//以下给出,泛代码,用户按照自己的需求,填写完整即可
//bool bStart为全局变量,控制循环的进入与退出
//例:18:30开始检查并转换,那么18:30时,bStart=true;并启动转换线程
//6:30停止转换线程,bStart=fasle;
private void CheckData2Convert()
{
//检查指定目录下的没有转换的WORD文档,你同样可以检查数据库中记录的没有转换的WORD文档
string sPath = System.Threading.Thread.GetDomain().BaseDirectory; //当前的路径
while(bStart)
{
int iFileCount = CheckWord(); //CheckWord为一个方法,检查当前没有转换的WORD文档,返回没有转换的文件数,该方法的代码由读者自己编写
for(int i=0;i<iFileCount;i++)
{
string sWord = GetWordFileName(i) //GetWordFileName为一个方法,返回一个不带路径的WORD文件名,该方法的代码由读者自己编写
//ToPdf类中的StartConvertPDF()方法使用的是不带路径的WORD文件名
ToPdf my2Pdf = new ToPdf(sWord ,sPath);
my2Pdf.StartConvertPDF();
if(my2Pdf.sExecResult.IndexOf("isuccess")!=-1)
{
//成功,写日志,或回写数据库
}
else if(my2Pdf.sExecResult.IndexOf("isfail")!=-1)
{
//失败,写日志,或回写数据库
}
}
if(!bStart)break;
Thread.Sleep(1000);
}
}
然后在服务的开始事件中,启动线程
protected override void OnStart(string[] args)
{
//可以使用一个开始定时器,检查是否到开始时间,时间一到,就开始执行线程,此处的开始执行线程可以放在开始定时事件中
//可以使用一个结束定时器,检查是否到结束时间,时间一到,就结束线程,结束线程的代码可以放在结束定时事件中
//注意:应该使用组件中的定时器,而不是Windows的FORMS中的定时器
//该定时器的类名为System.Timers.Timer,千万别搞错,不然执行不会正常的
bStart = true;
Thread thConvert = new Thread(new ThreadStart(StartConvertData));
thConvert.Start();
}
然后在服务的结束事件中,设置停止线程的标识bStart= false
protected override void OnStop()
{
bStart = false;
//为何次处不停止线程呢,因为考虑到,现在线程正在转换WORD文档,但没有结束,所以只设置停止标识,转换完成后,线程也执行结束了.
}
H. PDF 文件如何打开
或winace生成的压缩文件
2.ain:ain是一种压缩文件格式,解开ain需要用ain.exe。在网上可以找到。
可以在各大的FTPpub/msdosutility之类地方寻找ain.exe
3.arj,a01,a02...:
arj是一种非常常见的压缩文件格式,它可以支持带目录,多文件压缩,
一般FTP中DOSutility目录下都可以找到arj.exe,一般的版本有2.4
2,2.382.50等,其文件格式是通用的,不存在格式不认问题。
a01,a02,a03是arj在多文件压缩时后面文件的缺省文件名。
展开arj文件可以用arjx-va-yfilename.arj
在windows下可以试试用winzip展开。
4.asp:
.asp文件通常指的是ActiveServerPages文件,这个文本文件可以
包括下列部分的任意组合:文本/HTML标记/ASP脚本命令,可以用
ie浏览器直接打开,也可以用记事本打开编辑。
.asp文件也可能是一种文档格式的文件,可以用cajviewer打开。
5.avi:
一般用windows自带的媒体播放器就可以播放。
如果没有图象只有声音,则可能是mpeg4格式,需要装插件。
如果有单独的字幕文件,则可以用其它播放器。
B:
1.BHX(BINHEX):
BinHex是苹果机器的一种编码方式.
WinZip可以解码.将email以文本方式存盘,扩展名为.BHX,
就可以直接用WinZip解压了.
2..bin
光盘映象文件,可以:
a.用Bin2ISO将bin转成ISO文件,然后用WinImage解开.
注意:有些BIN文件实际上就是ISO文件如果上面的办法有问题
可以直接将后缀改成iso,然后用WinImage解解看
b.用ISOBuster直接解BIN.
c.用daemon直接将BIN文件虚拟成光驱
C:
1.caj:cajviewer,CAJ文件浏览器是中国学术期刊(光盘版)电子杂志社(CAJEJPH)
的产品。它是为中国期刊网()的全文检索,浏览开发的。
2.cdi:光盘映像文件,用DISKJuggle就可以打开
3.cdr:CorelDraw
4.cdp:NtiCdMaker做的光盘Image.用NtiCdMaker的FileCopy刻.
5.cfm:
www浏览器(服务器支持,类似asp,php,jsp)or文本编辑器看源码
6.chi:chm(htmlhelp)的索引,和chm文件一起使用
7.chm:
基于Html文件格式的帮助文档,在IE4.0以上可以双击直接打开。
制作工具可以采用HtmlHelpWorkShop。
8.cif:是easycdcreator地image文件
9.cpj:
WinONCD的工程文件,不过如果那个Raw文件是2072字节的扇区的话就是标准的ISO文件
换个扩展名,用什么刻录软件都可以,最差用WinImage直接展开安装也行。
10.cpx:cpx是一种压缩过的矢量图格式,CorelDraw
D:
1.dat:
一般指数据文件,比如某些音碟或者某些应用程序的数据。
是个很通用的扩展名(比如影碟,一般数据,......),无法判断用那个程序打开,
除非有更多信息,比如这些文件是做什么用的。
是某个软件附带的,还是独立存在的,等等。
2.dbf:
DOS下:
foxbase
foxpro
DN中F3(view)
Windows:
qview(快速查看)
FoxPro
Office中Excel等.
3.ddi:DISKDUPE,unimg,unddi,undisk
4.dvi:Latex处理过的文件,用任何一种Latex软件都可看它。
5.dxf:AutoCad,3DMax
6.dxr:
E:
1.ecw:有可能是ENSONIQAudioPCI声卡的波表样本
2.emf:扩展的wmf文件
3.eml:outlookexpress
4.eps:
eps是一种特殊的ps文件,通常是嵌入其他文档中使用.制作这种文件非常简单:
a)在Windows中安装一台PostScript打印机(并不是真的要买一台,仅仅是安装驱动
程序),例如HPLaserJet5P/5MPPostScript,设置其属性中的PostScript输出格式为
内嵌的PostScript,打印端口设为FILE(在磁盘上创建文件);
b)在任何绘图软件中编辑好图形后,在打印对话框中将打印机设为那个PostScript
打印机,然后打印到文件,文件名可取为xxx.eps,这将是你所需要的eps文件.
很多常用软件,比如ACDSee、Word等都可打开eps文件。
F:
1.fcd:用vitrulCD-ROM打开
2.fla:Flash
G:
1gerberfile(.dat.rep.pho文件):电路图可以送去制板的
2.gif:gif是一种很普遍的图像格式,用几乎所有的图像处理软件都可以处理gif。
3.gtp:guitarpro
.gtp是2.2以下版本的,3.0版本的是.gp3
H:
1.hlp:编辑可用helpmagic,helpscribe
2.hqx:
hqx格式就是所谓的Binhex4.0文件。
实际是Ascii文件。
在PC上可以用winzip6.2以上解开。
在Mac机上,如果你用Fetch2.0以上来传
(在随机的AppleInternetConnectKit上已带)
可以自动转成原来的Binary文件。
一般来说,你down了hqx格式的文件在PC上是派不上
什么用场的,当然你可以用来和别人交换word文件什么的。
I:
1.icl:IconLibrary,用AxIcons打开,一个专用的画图标的软件。
2.ic图标文件,可以用acdsee转成bmp文件。
3.idx:cterm非常下载下来的文件索引,用cterm自带的indexread打开
4.iges:iges是一个基于NURBS的文件格式,可以用AutoCad打开,如果不行,可以可以先拿到rhino中转成DXF
5.img:
img是软盘image文件,一个img就是一个软盘,尼需要一个工具将这样
的文件展开还原到软盘上,就是hd-,
6.is
一般是光盘镜像,直接用来刻盘或者用winimage解开
也可以装一个虚拟光盘软件daemon直接将之虚拟成光盘。
J:
1、.jpg,.jpeg:
.jpg是一种高压缩比的真彩图像文件格式,一般的图像处理软件都可以
显示jpg图像。推荐使用的看jpg程序有:在DOS下sea,在windows下用
acdsee,在UNIX下可以用xv来看jpg。
K:
1、.kc:
可以用king打开。
L:
1.lwp:LotusWordPro格式
2.lrc:一个winamp插件的歌词文件,可以在放mp3时显示歌词。以前叫lricsmate
3.lzh:
lzh是很老的一种压缩文件格式,近几年已经很少用了,展开lzh
文件需要lha.exe,在FTP的DOSutility目录下应该有。
好象以前有一种自解压然后运行的exe是用lha压的,lzh用winrar就能解
4.ldb
Access数据库锁定文件,纪录数据库的锁定信息,
比如是否被打开,是否以独占形式访问等等。
M:1.max:3DMax文件。
2.mdb:MicrosoftAccess数据库文件
3.mdl:Rose文件
4.mif:一种是MaxPlusII的文件
5.mov:电影文件,用Quicktime打开。
6.mpp:ProjectFile(MsProject)
7.msf:
part1:文件头,我见到的几个都是mstor打头的,文件头包括版本信息、注册表
的一些键值、图片的位置信息等等,关系不是很大,不必仔细研究。
part2:图片序列,图片都是jpeg格式的,每张图片的头可以通过查找"JFIF"字符串查到,查到后一定要后退六个字节,才是真正的jpeg文件头。也就是说
jpeg文件的第七到第十个字节是"JFIF"。每两张图片之间会有大量的字节
填充0,中间你会找到屏保运行时产生的临时文件的名字,如c:\\1.jpg;
由于jpg文件不校验字节和长度的,你可以随便取到临时文件名上面的哪个
0上。把之间的部分拷贝出来另存为.jpg文件就可以了,
part3:图片都取出来了,还管它干什么,呵呵
7.msi:
MSWindows的新的安装文件标准。已经在Office2000和Windows2000中采用。
98或NT下,可以装下面的软件:InstMsi9x.exe,InstMsiNT.exe
N:
1.nb:Mathematica的一种文件格式把。
2.nf
察看方法:
1.文本编辑器都可以看。建议将自动换行设为80列。
专门的查看软件:
NFOShow1.1是网友写的,实际效果是我见过最好的,不过有时时会出错退出。DAMN.NFO.Viewer.v2.0只有几十k,很好用,足够了。还可以在dos窗口下typexx.nfo
3.ngp,.ngc:
是模拟器游戏的文件neopocott0.35b(ngp模拟器)ngp模拟器neopocott升级到
了v0.35b版本,可在win9x,2k,me平台上运行。新版本暂停功能得到修改,支持
了ngc的扩展名文件,可以更好的存储和读取文件,增加了对键盘的设置等等
4.njx:南极星的字处理软件的文档格式
5.nrg:Nero做的CDImage,用nero直接打开刻盘即可
1.opx:Microsoft组织结构图,用office自带的组件可以打开,
默认不安装,需要添加程序。
P:
1.pdf:
pdf是adobe公司开发的一种类似于poscript的文件格式。可以用
adobe的acrobat,arcrbatreader来编辑,打开pdf文件
2.pdg:超星阅读器SSreader3.52以上版本
3.phtml:cajviewer
4.pl:一般说来是PERLScript,也可能是mp3播放软件的playlist文件
5.ppt.pps:PowerPoint
6、prn:
prn文件是打印机文件,比如你在Word中选择"打印到文件"就会生成这种文件。
你可以把扩展名改为ps,然后用GSView打开。
或者用PrFile这个软件直接把prn文件送到PS打印机打印出来。
7.ps:
ps的意思是PostScript,这是一种页面描述语言,主要用于高质量打印。
在UNIX和windows下都可以用GhostView来看ps文件。其homepage是
如果你有PoscriptScript支持的打印机,可以直接打印PS文件。
如果你想制做PS文件,简单的办法是:在Windows下安装一个支持PostScript
的打印机驱动程序,比如HP4PS,你不需用非有这个打印机安装在你的机器上。安装好
驱动之后,在WIndows下任何一个编辑器中编辑好你需要转成PS的文件,比如从
Word下。然后选择"打印",选择那个PS兼容的驱动程序,然后选择"printtofile",
它将把打印输出送到一个文件中去。因为你用了一个Poscript的打印驱动程序,
那么这个打印文件就是PostScript文件了。将该文件改名字为XXX.ps就可以了。
8.ps.gz:
gzippedpostsript文件,可以用gsview直接打开,其支持gzip
如果是用IE下载的,有可能实际已经解开,可以去掉gz后缀试试。
9.psz:改成*.ps.gz试试,然后用gzip或者winzip解开就是.ps文件了
10.psf:outlinePostScriptprinterfont(ChiWriter)
11.ptl:AUTOCAD做出来的打印文件
Q:
R:
1、.rar,.r01,r02......:
rar是一种压缩文件格式,在DOS下解开RAR可以用rar.exe,在各大FTP
里面都可以找到,一般在pub/msdosutility之类地方。需要注意的是rar
高版本压缩的文件低版本不认。当前最新的rarforDOS是2.X版,如果
能找到2.x版的话最好不要用1.X板的rar,2版的rar文件相互是通用的。
rar的命令行参数几乎和arj一样,rarx-v-yfilename.rar
可以展开文件,包括带目录和多文件压缩。
rar多文件压缩时rar之后的文件名是r00,r01,r02....
DOS下的软件不支持长文件名,所以如果你的rar里面有长文件名并且因为
在DOS下展开丢失了得话,可以试试winrarforwin95,支持长文件名。
在各大ftp上应该也可以找到。其所有版本都可以认rar2.X得文件。
2、.raw:
是easycd或者winoncd等软件做的CDROM的ISO镜像
RAW属于MODE1的
3、.raw:
可用Photoshop看。
4、.rom:
是很小的音乐压缩格式,使用realplayer可以播放。
5、.rom:
是模拟器的文件吧。
6、.rpm:
RPM是RedhatPackageManager的简写。
是Linux底下的软件包管理系统。
到Linux底下用使用rpm来对它进行操作。
7、.rm:
RM文件是一个包含了RA文件URL地址的文件,作用就同M3L与MP3一样,用于
REALPLAYER在INTERNET上播放RA流。
8、.rmx:
可以用realplayer打开。
9、.rtf:
richtextformat
包含格式的文本,可用于各种编辑器间交换文件,但是体积要比专用格式大很多。可以用word,写字板打开,一般的支持格式的编辑器都能打开。
S:
1、.sfe:filesplit分割文件。
用filesplit可以把他们合并成原来的zip文件。
或许还有自动合并得bat文件呢。
2、.sfv:
不是文件分割器产生的,是sfv32w产生的,一般用来做windows下的文件校验。
3、.shar:
ShellArchive,文本格式的打包文件,类似tar,不过tar生成的为binaryfile,在UNIX下sh<*.shar即可解包,或用专门的shar/unsharutilities。
4、.shg:
是microsoft的helpworkshop的图形处理工具生成的图形文件,
是用来在help中调用的。
5、.sit:
MacintoshStuffitarchives,
aswellasUUE(uuencoded),HQX(BinHex),bin(MacBinary),ZIP,ARC,
ARJ,andGZarchives
use"AladdinExpander"toexpand
6、.srm:
呵呵,当然是用Kiven电子书库了.你可以去化云坊down3.0.12的版本,也可以去的主页上当最新版.还有源码的呦.
7、.stx:
SyntaxfileofEditPlus
8、:
是Flash的动画格式,如果浏览器装了插件,可以用浏览器打开,但最好用
FlashPlayerBrowser打开。
9、.swp:
ScientificWordPlace
10、.spw
SigmaPlotWorksheet
T:
1、.tar.GZor.tar:
.tar.gz,或者.tgz的文件一般是在UNIX下用tar和gunzip压缩的文件。
可能的文件名还有.tar.GZ等。gunzip是一种比pkzip压缩比高的压缩程序,一般UNIX下都有。tar是一个多文件目录打包器,一般也是在unix下。
在UNIX下展开.tar.gz文件用tarzxvffilename.tar.gz就可以了或者用gunzip-dfilename.tar.gz得到filename.tar然后用tarxvffilename.tar解包,两步完成。
在PC环境下解tgz,可以用winzip6.2以上版本,可以直接打开extract。
建议在win95或者NT下使用winzip,因为很多这样的文件都是在UNIX下压缩的,
很可能有长文件名,但是WIndows3.1是不支持长文件名的,however,win31下的winzip也是应当可以展开tgz的。
2、.tar.Z:
.Z的文件一般是在UNIX下用compress命令压缩的。在UNIX下解开可以用uncompressfilename.Z。在PC下可以用winzip6.2以上版本,建议使用
win95版本的winzip,因为win31不支持长文件名,而UNIX下的文件很
可能是长文件名。但win31下winzip应该也可以解开。
如果是.tar.Z的文件的话可以用uncompress先解开外面一层,然后用
tarxvffilename.tar解开tar文件。在PC下还是用winzip。
3、.tex:
.tex本身是个文本文件,必须经过编译成dvi文件,使用winLatex就可以,如果你有unix当然会带TeX或LaTex的。
U:
1、.ufo:
问:这种文件要用什么程序打开?quickviewplus可以吗?
答1:使用photoimpact应该可以.
答2:通常是漫画,可以用冷雨浏览来看.
答3:找ufo2jpg.exe可以将ufo文件变成熟悉的JPG
2、.uu,.uue:
.uu是uucode的文件。uucode是一种把8bit文件转成7bit的算法。
我们知道,exe文件或者其他二进制文件是不可以直接用email
发出去的。uucode可以把这些文件转成7bit格式,就是普通文本文件格式
(如下面的样子),然后就可以被接收方还原。
begin640pass
M("$Y-2V]R<5!1=UI!.C`Z,#I3=7!E`@<F]O=#IB>$Y-2V]R<5!1=UI!.C`Z,#I3=7!E<BU5<V5R.B\\Z+V)I;B]C
M<V@@<WES861M.BHZ,#HP.E-Y<W1E;2!6"B`@(&=U97-T.F-U-&I)=&M%9&HN
M:S(Z.3DX.CDY.#I\'=65S="!!8V-O=6YT.B]U<W(O<&5O<&QE+V=U97-T.B]B
如果你收到一个email是uucode做的,可以把它存成一个文件,将begin640..
之前的部分删除,然后改文件名为.uu,然后用uudecode解开。
在windows下可以用winzip6.2以上版本。
V:
1、.vcd:
一般是virtualdriver的虚拟光驱文件
也可以转换成iso,用daemon打开,参见格式转换,.vcd->.iso
另外金山影霸的文件也可能是vcd。
2、.vcf:
是地址本文件,用outlookexpress可以打开,(双击就可以)。
3、.vob:
DVD数据文件
4、.vos:
VOS是一款强大的电子琴模拟软件,.vos文件可以用它打开。
5、.vqf:
用Winamp播放,需要装相应的插件。
备注:VQF是YAMAHA公司和日本NTT公司联合开发的一种新音乐格式,它的压缩比比MP3更高,音质却与MP3不相上下,而它之所以没有MP3那般出尽风头,大概与其推出时间较迟以及缺和相应的广告宣传有关吧,加之其播放、制作工具目前还不是很丰富,所以知道的人不是很多。但不管怎么说,VQF的确是一种优秀的音乐压缩格式。常见播放工具有YamahaVQPlayer等等。
6、.vsd:
visio画的流程图
7、.vss:
visiotemplatefile
W:1、.wdl:
Dynadoc,华康文件阅读器可用dynadoc或FPread32.exe为关键字在ftp搜索引擎搜索。
2、.wmf:
WINDOWS的图元文件,用ACDSEE可以看,WORD也可以打开。
3、.wpd:
WPD是corel公司的wordperfect字处理软件的文档的扩展名。
4、.wsz:
winamp的skin,down下来以后是wsz格式ws打开一个winzip先,然后用winzip里的open。。。。。。。
X:
1、.xls:
MicroSoftExcel的文件。
2、.xml:
eXtensibleMarkupLanguage
SGML的一个子集,1998年2月正式发布1.0版
目前IE5.0可支持,可以在IE5.0下浏览.xml文件,但同时必须有相应的.xsl文件
才能正常显示。
Y:
......
Z:
1、.zip:
zip是一种最常见的压缩格式,在UNIX下解开zip用unzip命令。
在PC下解开zip可以用pkunzip.exe,一般在大ftp里面都可以找到,
或者用winzip解开。pkunzip-dfilename.zip可以带目录结构解开文件。
I. 怎么才能在pdf格式下阅读英文可以有查词功能
Hello,
我觉得这种情况下,可以借助于有道词典中的划词功能。安装一个有道词典,将划词功能勾选上。