1. 急~急~~急~~~ ASP.NET 怎么讲图片生成pdf文件,求代码
我是借助组件完成导出PDF文件的。在写代码之前,你要下载一个名为iTextSharp的组件,并将其引用到你的程序中。然后将生成的PDF文件通过流形式导出。
代码如下:C#的
stringstrPDF_Nm=DateTime.Now.Year+"-"+DateTime.Now.Month+"-"+DateTime.Now.Day+"-"+DateTime.Now.Hour+"-"+DateTime.Now.Minute+".pdf";
iTextSharp.text.Documentdocument=newDocument();
iTextSharp.text.pdf.PdfWriterpdfwrite=PdfWriter.GetInstance(document,newFileStream(HttpContext.Current.Server.MapPath("~/img_Tmp/"+strPDF_Nm),FileMode.Create));
document.Open();
BaseFontbasefont=BaseFont.CreateFont(@"C:WindowsFontsSTKAITI.TTF",BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED);
//解决PDF不能显示中文的关键;创建一个中文楷体的字体对象
iTextSharp.text.Fontfont=newiTextSharp.text.Font(basefont,14);
iTextSharp.text.Tabletable=newiTextSharp.text.Table(4);
iTextSharp.text.Cellcells=newCell(newPhrase("不良报告",font));
cells.Colspan=4;
cells.HorizontalAlignment=1;
table.AddCell(cells);
iTextSharp.text.Imagejpg=iTextSharp.text.Image.GetInstance(Server.MapPath("~/img_Tmp/"+strSavePath));
document.Add(jpg);
document.Add(table);
document.Close();
pdfwrite.Close();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ContentType="application/PDF";
HttpContext.Current.Response.WriteFile(HttpContext.Current.Server.MapPath("~/img_Tmp/"+strPDF_Nm));
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.Close();
2. 在ASP.NET中怎么把网页形式转换为pdf格式
将htm转换为pdf的任务,这是一个有很有用的功能块,然而很遗憾,网上没有现成可行(包括开源/免费、易用和可维护性的考虑)方案。既然没有现成的解决方案就自己着手解决吧。 从htm生成pdf大概可以分两步实现,第一步,解析htm,就是将htm源文件中那一对文本转换为浏览器最终呈现给我们那种图文并茂的结果。这是一个不可完成的任务,因为目前为止业界的软件巨头也没有谁把htm解析做得很好的。对比ie、firefox等浏览器的显示结果便可想而知。既然业界难题,我也就不去钻牛角尖做技术攻关了,先跳过这步,考虑下一步的事情。 第二步,绘制pdf,这个简单,网上有很多资料,有兴趣的朋友可以研究pdf的文件格式,安装二进制组装pdf。我有兴趣,然而没有时间,我觉得软件从业者时刻都应该关注最有价值的事情。软件从业者要提高效率的第一法门便是重用,网上有一个叫itextsharp的东西是用来绘制pdf的,可以免费使用而且开源。 下载itextsharp,试着用itextsharp绘制htm看看效果,如您所料,绘制出的是htm的源代码。因为第一步的事情我们还没有解决,下面来解决第一步的事情。 记得很久以前见过一个.net写的网页snap工具,大概思路是利用webbrowser的DrawToBitmap方法将ie的显示结果输出到Sytem.Drawing.Bitmap对象。大概代码如下: //WebBrowser wb=null; System.Drawing.Bitmap bmp = new System.Drawing.Bitmap(w, h); wb.DrawToBitmap(bmp, new System.Drawing.Rectangle(0,0, w, h));ok,htm可以解析了,现在重组刚才的代码,思路如下: 使用webbrowser将htm解析并转换为图片,使用itextsharp将刚才的图片绘制成pdf。 有用是给公司开发的功能,暂时不便公开源码,提供我编译后的工具供下载使用,您也可以根据上面的思路定制: 使用方法, 1.将单个url转换为pdf:PageToPDF.exe "http://www.g.cn/" "google.jpg" 2.将多个url转换为pdf:pagetopdf.exe task.txt "C:\pdfdir\" task.txt是任务里表,里面提供多行url,每个url以#文件名为后缀,如:http://www..com/#b表示将http://www..com/转换为pdf文件名为b(扩展名系统自己会追加) 在asp.net环境下使用 将pagetopdf上传至网站中,设定好目录权限,示例代码: Code public static bool CreatePPDF(string url,string path) { try { if (string.IsNullOrEmpty(url) || string.IsNullOrEmpty(path)) return false; Process p = new Process(); string str = System.Web.HttpContext.Current.Server.MapPath("~/afafafasf/PageToPDF.exe "); if (!System.IO.File.Exists(str)) return false; p.StartInfo.FileName = str; p.StartInfo.Arguments = " \"" + url + "\" " + path; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardInput = true; p.StartInfo.RedirectStandardOutput = true; p.StartInfo.RedirectStandardError = true; p.StartInfo.CreateNoWindow = true; p.Start(); System.Threading.Thread.Sleep(500); return true; } catch(Exception ex) { Sys.Log.error("Pdf create err.",ex); } return false; } 特性 在使用任务形式工作时,系统会启动多个进程,即任务管理器中会有多个pagetopdf.exe的进程,这是系统调度程序自己启动的,为了加个任务处理速度。进程数由调度程序自己控制,最多不会超过十个。
记得采纳啊
3. .net打印pdf文件
方法一(web):window.print()
print()方法是浏览器打印功能的一种程序调用。print方法用于打印当前窗口的内容。
打印当前页:
function printPage(){
window.print();
}
打印局部页面:
前端页面:<iframe style="width:100%;height:100%;" id="fileId" src="文件路径">
</iframe>
<input type="button" name="print" id="print" value="打印" />
js:$("#print").click(function () {
var iframe = document.getElementById("fileId");
iframe.contentWindow.print();
});
方法二:调用系统API(得保证本地装有相关的软件)
PrintDocument pd = new PrintDocument();
pd.PrinterSettings.PrinterName = "Microsoft Print to PDF";
Process p = new Process
{
StartInfo = new ProcessStartInfo
{
CreateNoWindow = false,
WindowStyle = ProcessWindowStyle.Hidden,
UseShellExecute = true,
FileName = filePath,//文件路径
Verb = "print",
Arguments = @"/p /h \" + filePath + "\"\"" + pd.PrinterSettings.PrinterName + "\""
}
};
p.Start();
p.WaitForExit();
方法三:spire打印方式(收费)下面是简单的使用例子
var pdf = new PdfDocument(filePath);
//设置打印机
pdf.PrintSettings.PrinterName = "Microsoft Print to PDF";
pdf.print();
方法四:安装RawPrint
var printer = new Printer();
var file = File.Open(filePath, FileMode.Open);
byte[] array = new byte[file.Length];
file.Read(array, 0, array.Length);
printer.PrintRawStream(printerName, file, "打印机上显示的任务名");
file.Close();
printer.PrintRawFile(printerName, fileFullPath, "打印机上显示的任务名");
这个测试时虚拟打印机上正常,使用公司打印机时出现乱码问题以及打印任务不停的问题
4. ASP.Net网站 Word转pdf
1.使用iText导出PDF报表文件示例代码
/**
* 导出PDF示例
* @author RainTion
* @param args
*/
publicstaticvoid main(String[] args) {
try {
Document document = new Document();
PdfWriter. getInstance(document, new FileOutputStream("F:\\test.pdf" ));
document.open();
document.add(new Paragraph( "pride in me!" ));
document.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (DocumentException e) {
e.printStackTrace();
}
}
2.使用iText导出Word报表文件示例代码
/**
* 导出Word示例
* @author RainTion
* @param args
*/
publicstaticvoid main(String[] args) {
try {
Document document = new Document(PageSize.A4);
RtfWriter2. getInstance(document, new FileOutputStream("F:\\test.doc" ));
document.open();
Paragraph title = new Paragraph("你好 地球人..." );
document.add(title);
document.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (DocumentException e) {
e.printStackTrace();
}
}
5. 如何用.NET将DWG文件打印为PDF
pdf是扫描件,这个需要打印之后,扫描就是PDF文件了
6. .net实现excel2010转成pdf
迅捷Excel转换成pdf转换器可将扫描文档、图像、文本照片和PDF文档转换为最通用的编辑格式 (DOC, XLS, PPT, HTML, PDF, ePub)
步骤一、 选择转换模式。excel转pdf转换软件目前支持八大转换模式,包括常见的excel转pdf、excel转pdf、PDF转图片等,点击图标勾选即可。
步骤二 、添加文件。点击excel转pdf转换软件的"添加文件"按钮,将PDF文件添加到程序界面,软件支持添加多个PDF文件。
步骤三 、输出选项。excel转pdf转换器默认将转换出来的文件保存在原文件夹内,或者自定义文件夹存储路径,最后点击右侧"开始转换"即可顺利完成转换。
7. VB.NET 如何实现图片转PDF呢
你说的不太满意是什么意思,你莫非是希望图片转换成的pdf能被选中文字并复制粘贴?
8. vb.net 导出PDF
这是MSDN给出的一些答案:
http://social.msdn.microsoft.com/Forums/vstudio/en-US/e79afbe3-70d8-4d4e-b651-a864b7e5e7d9/read-parse-a-pdf-file-using-vbnet
http://social.msdn.microsoft.com/Forums/vstudio/en-US/4ca6b6fc-b483-44b3-bce0-eeb2f159c879/how-to-read-a-pdf-text-in-vbnet
http://social.msdn.microsoft.com/Forums/vstudio/en-US/83dd4a50-ee2a-4a57-a71b-7d2f5e06d024/how-to-read-pdf-file-line-by-line-like-text-file
9. 怎样把.net页面中的表格转换成pdf
安装Adobe
Acrobat软件,安装成功后网页有个“将网页转换为PDF”的插件功能,能将任何网页及文档转成PDF文档。