2015-06-30 3 views
0

У меня есть действие, которое содержит фотографию (сделанное камерой с использованием начального действия для результата) и некоторый текст в editboxes. Я хочу напечатать содержание этого полного действия на бумаге. Видел документы Google, которые говорят, что мне нужно будет преобразовать содержимое в документ PDF, прежде чем я его распечатаю. Он также имеет пример, как преобразовать текст в pdf-документ, но как насчет изображения? Печать может быть даже снимком экрана активности (в большем размере, чем экран телефона)Как распечатать содержимое андроидной активности на бумаге с помощью принтера

Может ли кто-нибудь направить меня на любой учебный пример такой работы или пример кода, чтобы понять, как это сделать. спасибо за обмен знаниями ...!

+0

Вам удалось это решить. Даже я выгляжу похожим. –

+0

Нет, требование изменилось. клиент сказал только для печати текста. Мы использовали printmarvel bluetooth-принтеры для печати текста. У этого есть свое приложение для этой цели, и все, что вам нужно, просто передать текст, который будет напечатан, в качестве аргумента для приложения для принтеров. Проблема только в том, что это дает квитанции вроде отпечатков. Однако подходит для наших требований. –

+0

@ Pawan Rawat, thaks для информации. –

ответ

0

Думаю, вы видели это tutorial. В этом есть этот метод.

private void drawPage(PdfDocument.Page page) { 
    Canvas canvas = page.getCanvas(); 

    // units are in points (1/72 of an inch) 
    int titleBaseLine = 72; 
    int leftMargin = 54; 

    Paint paint = new Paint(); 
    paint.setColor(Color.BLACK); 
    paint.setTextSize(36); 
    canvas.drawText("Test Title", leftMargin, titleBaseLine, paint); 

    paint.setTextSize(11); 
    canvas.drawText("Test paragraph", leftMargin, titleBaseLine + 25,   paint); 

    paint.setColor(Color.BLUE); 
    canvas.drawRect(100, 100, 172, 172, paint); 
} 

Чтобы нарисовать картинку, используйте Canvas. drawBitmap способ. Сначала получите растровое изображение от ImageView.

Bitmap bitmap = ((BitmapDrawable)image.getDrawable()).getBitmap(); 

Затем нарисуйте его:

canvas.drawBitmap (bitmap, null, new Rect(10, 10, 100, 100), null); 

Кроме того, посмотрите на эту link.