-1

API 5.0 で PDFRenderer を使用してアプリケーションを作成しています。pdfrenderer.jar を外部に追加する必要がありましたが、次のエラーが表示されるようになりました - 「コンストラクター PDFRenderer(ParcelFileDescriptor) は定義されていません」

4

3 に答える 3

0

PDFRenderer(ParcelFileDescriptor input) 入力がシーク可能なファイル記述子である場合に使用します。

Pdf Renderer は基本的にファイル記述子をパラメータとして取りますが、何も指定していません。

開発者ページを参照してください https://developer.android.com/reference/android/graphics/pdf/PdfRenderer.html

于 2014-12-04T05:48:39.653 に答える
0
private void render() {
    try {
        Log.e("In render()","render");
        imageView = (ImageView) findViewById(R.id.imageView);
        int REQ_WIDTH = 1;
        int REQ_HEIGHT = 1;
        REQ_WIDTH = imageView.getWidth();
        REQ_HEIGHT = imageView.getHeight();
        Log.e("In render2()","render2");
        System.out.println("req_height"+REQ_HEIGHT+" "+"REQ_WIDTH"+REQ_WIDTH);

       Bitmap bitmap = Bitmap.createBitmap(REQ_WIDTH, REQ_HEIGHT, Bitmap.Config.ARGB_4444);


        File file = new File("/home/woigames/Desktop/PDF/DebitCards-tc.pdf");

        PDFRenderer renderer = new PDFRenderer(ParcelFileDescriptor.open(file, ParcelFileDescriptor.MODE_READ_ONLY));

        if(renderer != null)
        {
            Log.i("renderer not null","check");
        }
        else 
        {
            Log.i("renderer is null","check");
        }
        final int pageCount = renderer.getPageCount();

        if (currentPage < 0) {
            currentPage = 0;
        } else if (currentPage > renderer.getPageCount()) {
            currentPage = renderer.getPageCount() - 1;
        }

        Matrix m = imageView.getImageMatrix();
        Rect rect = new Rect(0, 0, REQ_WIDTH, REQ_HEIGHT);
        renderer.openPage(currentPage).render(bitmap, rect, m, PdfRenderer.Page.RENDER_MODE_FOR_DISPLAY);

        imageView.setImageMatrix(m);
        imageView.setImageBitmap(bitmap);
        imageView.invalidate();
        renderer.close();

    } catch (Exception e) {
        e.printStackTrace();
    }
于 2014-12-04T08:04:23.633 に答える