]> rtime.felk.cvut.cz Git - hornmich/skoda-qr-demo.git/blobdiff - QRScanner/glass/src/main/java/cz/cvut/fel/dce/qrscanner/pdfviewer/PdfPageView.java
Implement first and naive version of pdf viewer activity
[hornmich/skoda-qr-demo.git] / QRScanner / glass / src / main / java / cz / cvut / fel / dce / qrscanner / pdfviewer / PdfPageView.java
diff --git a/QRScanner/glass/src/main/java/cz/cvut/fel/dce/qrscanner/pdfviewer/PdfPageView.java b/QRScanner/glass/src/main/java/cz/cvut/fel/dce/qrscanner/pdfviewer/PdfPageView.java
new file mode 100644 (file)
index 0000000..ffa8d1c
--- /dev/null
@@ -0,0 +1,35 @@
+package cz.cvut.fel.dce.qrscanner.pdfviewer;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.Canvas;
+import android.graphics.Paint;
+import android.view.View;
+
+/**
+ * Created by michal on 16.2.15.
+ */
+public class PdfPageView  extends SceneView {
+       private Bitmap mPdfBitmap;
+       private Paint mBitmapPaint;
+
+       public PdfPageView(Context context, Bitmap pdfBitmap, float defZoom, float minZoom, float maxZoom, float defXCenter, float minX, float maxX, float defYCenter, float minY, float maxY) throws Exception {
+               super(context, defZoom, minZoom, maxZoom, defXCenter, minX, maxX, defYCenter, minY, maxY);
+               mPdfBitmap = Bitmap.createBitmap(pdfBitmap);
+               mBitmapPaint = new Paint();
+       }
+
+       @Override
+       protected void computeSceneDimmensions() {
+               mSceneWidth = mPdfBitmap.getWidth();
+               mSceneHeight = mPdfBitmap.getHeight();
+       }
+
+       @Override
+       public void draw(Canvas c) {
+               c.translate(c.getWidth()/2, c.getHeight()/2);
+               c.scale(mZoom.getValue(), mZoom.getValue());
+               c.translate(-mXPosition.getValue(), -mYPosition.getValue());
+               c.drawBitmap(mPdfBitmap, 0, 0, mBitmapPaint);
+       }
+}