C#如何从pdf page url
获取PDF格式的文本例如,网页包含PDF文本,我想阅读页面中的所有文本
答案 0 :(得分:0)
PDFBox是一个Java PDF库,您也可以在C#中使用。
你应该:
1.解压缩包" PDFBox.zip",获取
IKVM.GNU.Classpath.dll
PDFBox-0.7.3.dll
FontBox-0.1.0-dev.dll
IKVM.Runtime.dll
2.将此DLL导入您的C#项目。使用:
using org.pdfbox.pdmodel;
using org.pdfbox.util;
3.编写您的代码可能是这样的:
using System.IO;
using System.Text;
using org.pdfbox.pdmodel;
using org.pdfbox.util;
namespace PDFReader
{
class Program
{
public static void pdf2txt(FileInfo pdffile, FileInfo txtfile)
{
PDDocument doc = PDDocument.load(pdffile.FullName);
PDFTextStripper pdfStripper = new PDFTextStripper();
string text = pdfStripper.getText(doc);
StreamWriter swPdfChange = new StreamWriter(txtfile.FullName, false, Encoding.GetEncoding("gb2312"));
swPdfChange.Write(text);
swPdfChange.Close();
}
static void Main(string[] args)
{
pdf2txt(new FileInfo(@"C:/Users/yourpdf.pdf"), new FileInfo(@"C:/Users/yourcontent.txt"));
}
}
}
希望这可以帮到你。
答案 1 :(得分:0)
//首先发送页面www.abc.com的源路径
public byte[] GetByteArray(string sourcePath)
{
byte[] outBytes = null;
try
{
using (WebClient wc = new WebClient())
{
outBytes = wc.DownloadData(sourcePath);
}
}
catch (Exception ex)
{
throw ex;
}
return outBytes;
}
//上面的方法返回一个字节数组使用该字节数组
//使用Itextsharp.dll从字节数组中获取文本
//用于下载给定https://sourceforge.net/projects/itextsharp/
public string[] GetLines(byte[] outBytes)
{
string resultPdfText = "";
string[] lines = null;
try
{
MemoryStream outPDF = new MemoryStream();
using (PdfReader pdfr = new PdfReader(outBytes))
{
iTextSharp.text.Document doc = new iTextSharp.text.Document();
iTextSharp.text.Document.Compress = true;
PdfWriter writer = PdfWriter.GetInstance(doc, outPDF);
doc.Open();
for (int i = 1; i <= pdfr.NumberOfPages; i++)
{
resultPdfText += PdfTextExtractor.GetTextFromPage(pdfr, i, new LocationTextExtractionStrategy());
}
lines = resultPdfText.Split('\n');
}
}
catch (Exception ex)
{
throw ex;
}
return lines;
}
答案 2 :(得分:-1)
如果您想从在线源加载pdf,请使用此库添加此代码
using System.IO;
using org.apache.pdfbox.pdmodel;
using org.apache.pdfbox.util;
using System.Text;
using java.net;
并在代码中使用像这样的新URL()方法更改加载文件方法
PDDocument doc = PDDocument.load((new URL("http://www.pdf995.com/samples/pdf.pdf")));
PDFTextStripper pdfStripper = new PDFTextStripper();
string text = pdfStripper.getText(doc);