问题描述
我的工作需要到应用程序打开,阅读和查看PDF 在Android应用程序。我有资产文件夹中的PDF文件。默认情况下Android不支持PDF格式。
I am working on an application which require to open, read and view pdf in Android Application. I am having a pdf files in assets folder. By default android does not support pdf.
有没有被用于打开,阅读和查看PDF文件的任何API。这些文件是在资产的文件夹。
Is there any API which is used to open, read and view pdf files. These files are in Assets folder.
经过两天的艰苦努力,做了很多研究及发展; DI已经得到一点解决办法,但几个疑问尚存
After two days hard work and doing a lot of R&D I have got little bit solution but few Queries still remaining.
我已经使用的 PDF查看器的图书馆,以显示PDF格式的机器人。而下面是我的code
I have used PdfViewer its a Library to display PDF in android. And below is my code
MainActivity
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = new Intent(this, MyPdfViewerActivity.class);
intent.putExtra(PdfViewerActivity.EXTRA_PDFFILENAME,
"mnt/sdcard/sample.pdf");
startActivity(intent);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
MyPdfViewerActivity
public class MyPdfViewerActivity extends PdfViewerActivity {
public int getPreviousPageImageResource() {
return R.drawable.left_arrow;
}
public int getNextPageImageResource() {
return R.drawable.right_arrow;
}
public int getZoomInImageResource() {
return R.drawable.zoom_in;
}
public int getZoomOutImageResource() {
return R.drawable.zoom_out;
}
public int getPdfPasswordLayoutResource() {
return R.layout.pdf_file_password;
}
public int getPdfPageNumberResource() {
return R.layout.dialog_pagenumber;
}
public int getPdfPasswordEditField() {
return R.id.etPassword;
}
public int getPdfPasswordOkButton() {
return R.id.btOK;
}
public int getPdfPasswordExitButton() {
return R.id.btExit;
}
public int getPdfPageNumberEditField() {
return R.id.pagenum_edit;
}
}
有一个查询这是需要时间的加载PDF页面,并没有输出到来。模拟器的屏幕截图
There is a queryIt is taking time in loading Pdf page and there is no output coming. Screenshot of Emulator
有没有什么解决方案,如何解决这个问题呢?
Is there any solution how to resolve this problem?
谢谢!
推荐答案
尝试的Android pdfview 库。它工作得很好。
Try android-pdfview library. It works very well.
在你的布局包括PDFView:
Include PDFView in your layout:
<com.joanzapata.pdfview.PDFView
android:id="@+id/pdfView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
加载PDF文件:
public class PDFViewActivity extends Activity implements OnPageChangeListener {
public static final String SAMPLE_FILE = "sample.pdf";
public static final String ABOUT_FILE = "about.pdf";
PDFView pdfView;
String pdfName = SAMPLE_FILE;
Integer pageNumber = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pdfView =(PDFView)findViewById(R.id.pdfView);
pdfView.fromAsset(pdfName)
.defaultPage(1)
.showMinimap(false)
.enableSwipe(true)
.load();
}
@Override
public void onPageChanged(int page, int pageCount) {
pageNumber = page;
setTitle(format("%s %s / %s", pdfName, page, pageCount));
}
}
这篇关于我怎样才能读取和Android的浏览PDF?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!