首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Android中渲染PDF

如何在Android中渲染PDF
EN

Stack Overflow用户
提问于 2010-05-21 23:21:01
回答 4查看 85.5K关注 0票数 83

在我的应用程序中,我将接收一个字节流,并将其转换为手机内存中的pdf文件。如何将其呈现为pdf?并在活动中展示出来吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-05-22 05:35:28

有些手机(比如Nexus One)预装了一个Quickoffice版本,所以一旦你把文件保存到SD卡上,就可以很容易地发送相应的意图。

代码语言:javascript
复制
public class OpenPdf extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Button button = (Button) findViewById(R.id.OpenPdfButton);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                File file = new File("/sdcard/example.pdf");

                if (file.exists()) {
                    Uri path = Uri.fromFile(file);
                    Intent intent = new Intent(Intent.ACTION_VIEW);
                    intent.setDataAndType(path, "application/pdf");
                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

                    try {
                        startActivity(intent);
                    } 
                    catch (ActivityNotFoundException e) {
                        Toast.makeText(OpenPdf.this, 
                            "No Application Available to View PDF", 
                            Toast.LENGTH_SHORT).show();
                    }
                }
            }
        });
    }
}
票数 115
EN

Stack Overflow用户

发布于 2012-06-02 18:16:01

Open pdf file in webview

代码语言:javascript
复制
public class MyPdfViewActivity extends Activity {

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    WebView mWebView=new WebView(MyPdfViewActivity.this);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setPluginsEnabled(true);
    mWebView.loadUrl("https://docs.google.com/gview?embedded=true&url="+LinkTo);
    setContentView(mWebView);
  }
}
票数 16
EN

Stack Overflow用户

发布于 2014-05-26 22:17:51

对于本地pdf文件,可以通过第三方库进行渲染。例如,使用MuPDF library,它支持的文件类型包括PDF、PNG和JPEG。

MuPDF的一个缺点是它使用本机库来实现这一目标,因此以后在BlackBerry平台上移植应用程序就不容易了。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2883355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档