91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Spire.Pdf 的各種操作總結(jié)

admin
2018年1月23日 15:19 本文熱度 6962

簡介 

試驗新產(chǎn)品總是給我?guī)?/span>許多挑戰(zhàn),當然這也是一個引進創(chuàng)新技術(shù)的好方法。在這里我要跟大家分享的是使用Spire.Pdf的過程,它是來自E-iceblue公司的輕便PDF程序庫。

設(shè)計情節(jié)

我以前經(jīng)常沒事就搞搞PDF。Spire.Pdf是用C# 寫的PDF組件。他們自己聲稱:

pastingSpire.PDF for .NET is a professional PDF component applied to creating, writing, editing, handling and reading PDF files without any external dependencies within .NET application. Using this .NET PDF library, you can implement rich capabilities to create PDF files from scratch or process existing PDF documents entirely through C#/VB.NET without installing Adobe Acrobat.

先決條件

首先,從這下載它的免費版:http://freepdf.codeplex.com/

安裝下載的軟件,結(jié)果你會得到兩個dll文件(Spire.License.dll和 Spire.Pdf.dll),如下圖所示在你的程序中添加他們的引用:

 

創(chuàng)建PDF并設(shè)置它的格式

創(chuàng)建PDF和使用Spire.Pdf一樣簡單。這就意味著,僅僅用Spire.Pdf寫幾行代碼就可以實現(xiàn)了。參照以下代碼:

//Create a pdf document.
PdfDocument doc = new PdfDocument();
// Create one page
PdfPageBase page = doc.Pages.Add();
//Draw the text
page.Canvas.DrawString("Hello, I''m Created By SPIRE.PDF!",
new PdfFont(PdfFontFamily.TimesRoman, 30f),
new PdfSolidBrush(Color.Black), 1010);
//Save pdf file.
doc.SaveToFile("MyFirstPDF.pdf");
doc.Close();

以上代碼創(chuàng)建了一個單頁的PDF文件

  

 現(xiàn)在我們在同一個PDF文件中再加點料,像邊框啊,水印啦,再加一些有格式設(shè)置的圖片。我為了讓我這篇教程看上去比較簡潔,就把所有代碼附在了示例中。它是一個包含了所有代碼的小型windows窗口程序,你可以從這里下載

轉(zhuǎn)換成其它格式并設(shè)置相應的格式:

基本上每個程序員都被這類的需求困擾過。從一種格式轉(zhuǎn)換成另一種格式在開發(fā)模式中是一件痛苦的事情。舉例來說,現(xiàn)在有很多程序員會問如何把HTML頁面轉(zhuǎn)換為PDF?Spire.Pdf對這個問題給出了簡單的解決方法。不僅僅如此,SPIRE.PDF還提供了如下的轉(zhuǎn)換:

HTML To PDF

·         XPS to PDF

·         PDF to XPS

·         PDF to Image

HTMLPDF的轉(zhuǎn)換:

我上面說的,這是幾乎每個開發(fā)人員都需要的功能。用 Spire.Pdf的話,轉(zhuǎn)換簡直是飛一般的感覺。Spire.Pdf包含創(chuàng)建方法“LoadFromHTML”,它可以用URL做為參數(shù)而返回一個PDF文件。

//create PdfDocument instance
PdfDocument doc = new PdfDocument();
//load html from URL
string url = "http://www.google.com";
var thread = new Thread(() =>
{
    doc.LoadFromHTML(url, falsetruetrue);
 
});
//set to single thread
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
//save to PDF document
doc.SaveToFile("FromHTML.pdf", FileFormat.PDF);
doc.Close();
System.Diagnostics.Process.Start("FromHTML.pdf");

從上面的幾行代碼中,你可以觀察到我嘗試從URL中創(chuàng)建一個PDF文件,只是一行叫做LoadFromHTML的方法就可以實現(xiàn)神奇的轉(zhuǎn)換,下面幾行為保存文件。下面在轉(zhuǎn)換中有趣的事情就是SPIRE.PDF將鏈接地址的頁面自動轉(zhuǎn)換為PDF鏈接。

PDFXPS的轉(zhuǎn)換:

XPS,是另外一個Microsoft2006年開發(fā)的流行文件格式。 Spire.Pdf也提供了將目標文件保存為XPS格式的選擇??聪旅娲a, Spire.Pdf僅僅是加載了PDF文件并使用SaveToFile方法將文件保存為需要的格式。

//Input  pdf file
String file = @"G:\FromHTML.pdf";
//open pdf document
PdfDocument doc = new PdfDocument();
doc.LoadFromFile(file);
//convert to xps file.
doc.SaveToFile(@"G:\PDFToXPS.xps", FileFormat.XPS);
doc.Close();

XPSPDF的轉(zhuǎn)換:

Spire.Pdf 也提供了上述方法的逆向轉(zhuǎn)換,那就是從XPSPDF的轉(zhuǎn)換,有所不同的是加載文件方法的不同。這里我們使用方法LoadFromXPS就可以了。
//open xps document
PdfDocument doc = new PdfDocument();
doc.LoadFromXPS(file);
//convert to pdf file.
doc.SaveToFile("XPSToPDF.pdf");

Spire.Pdf使用枚舉FileFormat,我們可以有4種格式的輸出文件:DOC, HTML, PDF XPS。

  

擷取PDF –PDF中擷取文本/圖片

在平常工作中,我遇到過需要單獨從PDF文件中擷取圖片或文本的問題。

Spire.Pdf也給出了簡潔的解決方案。做的很好的地方是,提供一個單行的代碼就是調(diào)用“that”就搞定了。
//Create a pdf document.
PdfDocument doc = new PdfDocument();
// Load the PDF Document
doc.LoadFromFile(@"G:\sample.pdf");
// Image collection to hold
IList<Image> images = new List<Image>();
// Loop thru each pages
foreach (PdfPageBase page in doc.Pages)
{
// Check that page contains any images
if (page.ExtractImages() != null)
{
     foreach (Image image in page.ExtractImages())
      {
         images.Add(image);
       }
 }
 }
//close the document
 doc.Close();
 //save image
int index = 0;
foreach (Image image in images)
{
  String imageFileName = String.Format("Image-{0}.png", index++);
  image.Save(imageFileName, ImageFormat.Png);
}

在以上代碼中圖片被保存為png格式,輸出界面如下圖:

 

PDF中擷取文本也是很簡單。每個編程人員的職業(yè)生涯都會面對的擷取。Spire.Pdf可以用以下代碼來解決:

//Create a pdf document.
PdfDocument doc = new PdfDocument();
// Load the PDF Document
doc.LoadFromFile(@"G:\sample.pdf");
// String for hold the extracted text
StringBuilder buffer = new StringBuilder();
foreach (PdfPageBase page in doc.Pages)
{
    buffer.Append(page.ExtractText());
}
doc.Close();
//save text
String fileName = "TextInPdf.txt";
File.WriteAllText(fileName, buffer.ToString());
buffer = null;

上面的程序片段就將文本提取出來并生成名為TextInPdf.txt的文本文檔。

結(jié)論

綜上所述,換句話說,它用簡單有效的方法處理PDF文件。SPIRE.PDF是一個很好的解決PDF API。


該文章在 2018/1/23 15:19:48 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務費用、相關(guān)報表等業(yè)務管理,結(jié)合碼頭的業(yè)務特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 成人公开在线导航网 | 亚洲无码av午夜在线观看 | 日韩25区中文字幕 | 日韩激情在线观看 | 国产欧美高 | 国产人妖的免 | 日韩精品sp | 日本韩国欧 | 国产一区在线 | 日产2025免费一 | 成人大黄全免费网站 | 日韩中文免费视频 | 91免费网站 | 人妖视频日本一 | 日韩在线欧美综合网 | 国产精品第一二三区 | 国产系列在线观看 | 福利社午夜影院 | 国产高清在线看 | 精品国产手机自 | 精品亚洲影视自拍 | 九一spank国产| 日本中文字幕高清7 | 欧美在线观看视 | 中文字幕无吗热视频 | 91系列在线观看免 | 国产视频第一页 | 国产精品夜夜春夜夜 | 日本福利一区二 | 日韩美女午夜福利 | 日本一区 | 国产美女精品视 | 午夜成人福利电影 | 精品一区二区免费 | 日本综合国产欧美 | 国产高清中文 | 日本秋霞免费 | 青青草一区二区 | 成人性毛 | 国产区视频在线 | 成人高清在线视频 |