導航:首頁 > 文檔加密 > net生成pdf

net生成pdf

發布時間:2022-06-14 06:19:20

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將DWG文件列印為PDF

pdf是掃描件,這個需要列印之後,掃描就是PDF文件了

4. .net如何將頁面生成pdf

using System;
using System.IO;
using System.Text;
using System.Collections;

namespace PDFGenerator
{

public class PDFGenerator
{
static float pageWidth = 594.0f;
static float pageDepth = 828.0f;
static float pageMargin = 30.0f;
static float fontSize = 20.0f;
static float leadSize = 10.0f;

static StreamWriter pPDF=new StreamWriter("E:\\myPDF.pdf");

static MemoryStream mPDF= new MemoryStream();

static void ConvertToByteAndAddtoStream(string strMsg)
{
Byte[] buffer=null;
buffer=ASCIIEncoding.ASCII.GetBytes(strMsg);
mPDF.Write(buffer,0,buffer.Length);
buffer=null;
}

static string xRefFormatting(long xValue)
{
string strMsg =xValue.ToString();
int iLen=strMsg.Length;
if (iLen<10)
{
StringBuilder s=new StringBuilder();
int i=10-iLen;
s.Append('0',i);
strMsg=s.ToString() + strMsg;
}
return strMsg;
}

static void Main(string[] args)
{
ArrayList xRefs=new ArrayList();
//Byte[] buffer=null;
float yPos =0f;
long streamStart=0;
long streamEnd=0;
long streamLen =0;
string strPDFMessage=null;
//PDF文檔頭信息
strPDFMessage="%PDF-1.1\n";
ConvertToByteAndAddtoStream(strPDFMessage);

xRefs.Add(mPDF.Length);
strPDFMessage="1 0 obj\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="<< /Length 2 0 R >>\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="stream\n";
ConvertToByteAndAddtoStream(strPDFMessage);
////////PDF文檔描述
streamStart=mPDF.Length;
//字體
strPDFMessage="BT\n/F0 " + fontSize +" Tf\n";
ConvertToByteAndAddtoStream(strPDFMessage);
//PDF文檔實體高度
yPos = pageDepth - pageMargin;
strPDFMessage=pageMargin + " " + yPos +" Td\n" ;
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage= leadSize+" TL\n" ;
ConvertToByteAndAddtoStream(strPDFMessage);

//實體內容
strPDFMessage= "(http://www.wenhui.org)Tj\n" ;
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage= "ET\n";
ConvertToByteAndAddtoStream(strPDFMessage);
streamEnd=mPDF.Length;

streamLen=streamEnd-streamStart;
strPDFMessage= "endstream\nendobj\n";
ConvertToByteAndAddtoStream(strPDFMessage);
//PDF文檔的版本信息
xRefs.Add(mPDF.Length);
strPDFMessage="2 0 obj\n"+ streamLen + "\nendobj\n";
ConvertToByteAndAddtoStream(strPDFMessage);

xRefs.Add(mPDF.Length);
strPDFMessage="3 0 obj\n<</Type/Page/Parent 4 0 R/Contents 1 0 R>>\nendobj\n";
ConvertToByteAndAddtoStream(strPDFMessage);

xRefs.Add(mPDF.Length);
strPDFMessage="4 0 obj\n<</Type /Pages /Count 1\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="/Kids[\n3 0 R\n]\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="/Resources<</ProcSet[/PDF/Text]/Font<</F0 5 0 R>> >>\n";
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="/MediaBox [ 0 0 "+ pageWidth + " " + pageDepth + " ]\n>>\nendobj\n";
ConvertToByteAndAddtoStream(strPDFMessage);

xRefs.Add(mPDF.Length);
strPDFMessage="5 0 obj\n<</Type/Font/Subtype/Type1/BaseFont/Courier/Encoding/WinAnsiEncoding>>\nendobj\n";
ConvertToByteAndAddtoStream(strPDFMessage);

xRefs.Add(mPDF.Length);
strPDFMessage="6 0 obj\n<</Type/Catalog/Pages 4 0 R>>\nendobj\n";
ConvertToByteAndAddtoStream(strPDFMessage);

streamStart=mPDF.Length;
strPDFMessage="xref\n0 7\n0000000000 65535 f \n";
for(int i=0;i<xRefs.Count;i++)
{
strPDFMessage+=xRefFormatting((long) xRefs[i])+" 00000 n \n";
}
ConvertToByteAndAddtoStream(strPDFMessage);
strPDFMessage="trailer\n<<\n/Size "+ (xRefs.Count+1)+"\n/Root 6 0 R\n>>\n";
ConvertToByteAndAddtoStream(strPDFMessage);

strPDFMessage="startxref\n" + streamStart+"\n%%EOF\n";
ConvertToByteAndAddtoStream(strPDFMessage);
mPDF.WriteTo(pPDF.BaseStream);

mPDF.Close();
pPDF.Close();
}
}

另外:C#中生成PDF文件的方法挺多,可以使用iTextSharp控制項,還有aspose的控制項也可以。這些控制項的功能都很強大,所以控制項的大小也會很大

5. 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();

}

}

6. autocad2010 二次開發 .NET COM 如何導出pdf

DWG轉PDF:

  1. 選擇需要轉PDF的圖紙,ctrl+P進如列印界面,列印機/繪圖儀中選擇DWG To PDF,設置好列印效果以後,(具體列印尺寸在列印范圍里選擇窗口然後選出需要列印的區域,再把列印比例設置好)

  2. 設置完成後點擊列印,然後選擇您想要的路徑即可,這就能轉成PDF文件且您自定義選擇路徑

7. 怎樣把.net頁面中的表格轉換成pdf

安裝Adobe
Acrobat軟體,安裝成功後網頁有個「將網頁轉換為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文件的一個問題..

table.Padding = 0;
table.Spacing = 2; //設置這個值的大小可以解決這個問題

10. .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轉換器默認將轉換出來的文件保存在原文件夾內,或者自定義文件夾存儲路徑,最後點擊右側"開始轉換"即可順利完成轉換。

閱讀全文

與net生成pdf相關的資料

熱點內容
江門哪裡有plc編程系統 瀏覽:376
安卓手機如何下載外服b站 瀏覽:700
pythonetree庫 瀏覽:759
數據插值演算法 瀏覽:723
澳大利亞加密貨幣逃稅 瀏覽:482
pdf文檔如何壓縮 瀏覽:329
java單例模式線程安全 瀏覽:646
特種pdf 瀏覽:160
加油什麼app劃算 瀏覽:715
開服要什麼樣的伺服器 瀏覽:33
pdf文件太大怎麼壓縮 瀏覽:29
UK開票顯示文件夾不存在 瀏覽:668
無錫江蘇大容量伺服器公司雲主機 瀏覽:503
pdf朱紹侯 瀏覽:227
編程貓演算法求和 瀏覽:556
品茗監測不到加密鎖 瀏覽:207
世界程序員收入 瀏覽:1000
filetypephp 瀏覽:728
鉸刀轉速進給的演算法 瀏覽:980
php二維數組取一列 瀏覽:377