我搜索到PDF文件轉換爲圖像在Android中,itry與itextpdf-5.3.1.jarPDF格式轉換爲與iText的圖像中的Android
,但我有例外,在我機應用。我把這個庫放在libs文件夾中。
療法是我的代碼
package com.example.zakiexemple;
import java.io.File;
import java.io.FileOutputStream;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
import com.itextpdf.text.pdf.PRStream;
import com.itextpdf.text.pdf.PdfName;
import com.itextpdf.text.pdf.PdfObject;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfStream;
public class MainActivity extends Activity {
PdfReader reader;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bt = (Button) findViewById(R.id.Button);
//final WebView wb = (WebView) findViewById(R.id.webView1);
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
File file = new File("/sdcard/003_overview.pdf");
try{
reader = new PdfReader(file.getAbsolutePath());
for (int i = 0; i < reader.getXrefSize(); i++) {
PdfObject pdfobj= reader.getPdfObject(i);
if (pdfobj == null || !pdfobj.isStream()) {
continue;
}
PdfStream stream = (PdfStream) pdfobj;
PdfObject pdfsubtype = stream.get(PdfName.SUBTYPE);
if (pdfsubtype != null && pdfsubtype.toString().equals(PdfName.IMAGE.toString())) {
byte[] img = PdfReader.getStreamBytesRaw((PRStream) stream);
FileOutputStream out = new FileOutputStream(new
File(file.getParentFile(),String.format("%1$05d", i) + ".jpg"));
out.write(img); out.flush(); out.close();
Toast.makeText(getBaseContext(), "howa hadak", Toast.LENGTH_SHORT).show();
}
}
}
catch (Exception e) { }
}
}) ;
}
}
和日誌錯誤
03-15 08:12:35.835: E/dalvikvm(937): Could not find class 'org.bouncycastle.cert.X509CertificateHolder', referenced from method com.itextpdf.text.pdf.PdfReader.readDecryptedDocObj 03-15 08:12:35.835: W/dalvikvm(937): VFY: unable to resolve new-instance 1533 (Lorg/bouncycastle/cert/X509CertificateHolder;) in Lcom/itextpdf/text/pdf/PdfReader; 03-15 08:12:35.835: D/dalvikvm(937): VFY: replacing opcode 0x22 at 0x030e 03-15 08:12:35.946: D/dalvikvm(937): DexOpt: unable to opt direct call 0x318a at 0x318 in Lcom/itextpdf/text/pdf/PdfReader;.readDecryptedDocObj 03-15 08:12:35.946: D/dalvikvm(937): DexOpt: unable to opt direct call 0x31a5 at 0x33d in Lcom/itextpdf/text/pdf/PdfReader;.readDecryptedDocObj 03-15 08:12:36.505: D/dalvikvm(937): GC_CONCURRENT freed 743K, 14% free 5345K/6212K, paused 71ms+85ms, total 216ms
我想我還沒有爲Android好iText庫。
你能給出好的鏈接嗎?
hy michel謝謝。我在哪裏可以在我的progect中添加密鑰文件 – 2013-03-15 09:04:27
我有另一個日誌異常: 找不到應用程序。 我的問題是在我的程序中,我不使用任何電子郵件應用程序。 爲何出現此錯誤 – 2013-03-15 09:26:29
可以使用LicenseFile的LoadLicenseFile方法添加密鑰文件。可能是一個類似的名字,從我的頭頂開始。至於你的「amil」日誌,你可以發佈更多的信息嗎? – 2013-03-15 09:29:46