Печать PDF с помощью диспетчера печати - предварительный просмотр не соответствует выводу - PullRequest
0 голосов
/ 14 мая 2018

Я использую приведенный здесь пример для печати PDF-файлов через Android Printing Framework: Как печатать PDF с помощью Android 4.4 Framework для печати

Однако предварительный просмотр не соответствует печативыход.По правде говоря, вывод правильный, но предварительный просмотр - нет.Есть ли способ исправить это?

РЕДАКТИРОВАТЬ: Google PDF Viewer, очевидно, правильно показывает предварительный просмотр при попытке печати PDF.Есть ли какой-то неизвестный способ заставить предварительный просмотр правильно отображаться в предварительном просмотре?Похоже, нигде нет решений.

1 Ответ

0 голосов
/ 22 мая 2018

Мое предложение заключается в том, что данные, которые вы хотите распечатать, загрузить через веб-просмотр и распечатать эти данные с помощью PrintManager с помощью адаптера веб-просмотра

у нас есть Printmanager https://developer.android.com/reference/android/print/PrintManager и распечатываем данные, и этому менеджеру требуется printadapter, который будет получать из веб-просмотра createPrintDocumentAdapter

PrintManager printManager = (PrintManager)getSystemService(Context.PRINT_SERVICE);
PrintDocumentAdapter printAdapter;
if(android.os.Build.VERSION.SDK_INT >= 21){
    printAdapter = webView.createPrintDocumentAdapter(jobName);
}else{
    printAdapter = webView.createPrintDocumentAdapter();
}
PrintAttributes.Builder builder = new PrintAttributes.Builder();
builder.setMinMargins(PrintAttributes.Margins.NO_MARGINS);
builder.setMediaSize(PrintAttributes.MediaSize.ISO_A4);
File filePdf = new File(pathAndJobName);
printManager.print(filePdf.getName(), printAdapter, builder.build());

спасибо,

...