android.print.PrintDocumentAdapter Java Examples
The following examples show how to use
android.print.PrintDocumentAdapter.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DetailFragment.java From kolabnotes-android with GNU Lesser General Public License v3.0 | 7 votes |
private void printNote() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { PrintManager printManager = (PrintManager) activity.getSystemService(Context.PRINT_SERVICE); String jobName = getString(R.string.app_name) + " Document"; // GitHub issue 197 if(editor != null){ PrintDocumentAdapter printAdapter = editor.createPrintDocumentAdapter(); printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build()); }else if(editText != null){ printEditText(jobName); }else{ Toast.makeText(activity, R.string.empty_note_description, Toast.LENGTH_LONG).show(); } } }
Example #2
Source File: ProWebView.java From prowebview with Apache License 2.0 | 7 votes |
/** * Print the current web site */ @RequiresApi(19) public void printWebView(@Nullable PrintListener listener) { PrintManager printManager = (PrintManager) getContext().getSystemService(Context.PRINT_SERVICE); PrintDocumentAdapter printAdapter = createPrintDocumentAdapter(); PrintAttributes.Builder builder = new PrintAttributes.Builder(); builder.setMediaSize(PrintAttributes.MediaSize.NA_LETTER); if (printManager != null) { PrintJob printJob = printManager.print(getTitle(), printAdapter, builder.build()); if (listener!=null) { if(printJob.isCompleted()){ listener.onSuccess(); } else { listener.onFailed(); } } } else { if (listener != null) { listener.onFailed(); } } }
Example #3
Source File: ShareUtil.java From Stringlate with MIT License | 7 votes |
/** * Print a {@link WebView}'s contents, also allows to create a PDF * * @param webview WebView * @param jobName Name of the job (affects PDF name too) * @return {{@link PrintJob}} or null */ @RequiresApi(api = Build.VERSION_CODES.KITKAT) @SuppressWarnings("deprecation") public PrintJob print(WebView webview, String jobName) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { PrintDocumentAdapter printAdapter; PrintManager printManager = (PrintManager) webview.getContext().getSystemService(Context.PRINT_SERVICE); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { printAdapter = webview.createPrintDocumentAdapter(jobName); } else { printAdapter = webview.createPrintDocumentAdapter(); } if (printManager != null) { return printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build()); } } else { Log.e(getClass().getName(), "ERROR: Method called on too low Android API version"); } return null; }
Example #4
Source File: PdfActivity.java From AndroidAnimationExercise with Apache License 2.0 | 6 votes |
private void genPdfFile() { PrintManager printManager = (PrintManager) getSystemService(Context.PRINT_SERVICE); // Get a print adapter instance PrintDocumentAdapter printAdapter; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { printAdapter = mWebView.createPrintDocumentAdapter("my.pdf"); } else { printAdapter = mWebView.createPrintDocumentAdapter(); } // Create a print job with name and adapter instance String jobName = getString(R.string.app_name) + " Document"; PrintAttributes attributes = new PrintAttributes.Builder() .setMediaSize(PrintAttributes.MediaSize.ISO_A4) .setResolution(new PrintAttributes.Resolution("id", Context.PRINT_SERVICE, 200, 200)) .setColorMode(PrintAttributes.COLOR_MODE_COLOR) .setMinMargins(PrintAttributes.Margins.NO_MARGINS) .build(); printManager.print(jobName, printAdapter, attributes); }
Example #5
Source File: MainActivity.java From Notepad with Apache License 2.0 | 5 votes |
@SuppressWarnings("deprecation") @TargetApi(Build.VERSION_CODES.KITKAT) private void createWebPrintJob(WebView webView) { // Get a PrintManager instance PrintManager printManager = (PrintManager) getSystemService(PRINT_SERVICE); // Get a print adapter instance PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter(); // Create a print job with name and adapter instance String jobName = getString(R.string.document, getString(R.string.app_name)); printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build()); }
Example #6
Source File: TemplatePrinterActivity.java From commcare-android with Apache License 2.0 | 5 votes |
/** * Starts a print job for the given WebView * * Source: https://developer.android.com/training/printing/html-docs.html * * @param v the WebView to be printed */ @TargetApi(Build.VERSION_CODES.KITKAT) private void createWebPrintJob(WebView v) { // Get a PrintManager instance PrintManager printManager = (PrintManager) getSystemService(Context.PRINT_SERVICE); // Get a print adapter instance PrintDocumentAdapter printAdapter = new PrintDocumentAdapterWrapper(this, v.createPrintDocumentAdapter()); // Create a print job with name and adapter instance printJob = printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build()); }
Example #7
Source File: DetailFragment.java From kolabnotes-android with GNU Lesser General Public License v3.0 | 5 votes |
private void createWebPrintJob(WebView webView, String jobName) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { // Get a PrintManager instance PrintManager printManager = (PrintManager) getActivity() .getSystemService(Context.PRINT_SERVICE); // Get a print adapter instance PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter(); // Create a print job with name and adapter instance PrintJob printJob = printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build()); } }
Example #8
Source File: ShareUtil.java From memetastic with GNU General Public License v3.0 | 5 votes |
/** * Print a {@link WebView}'s contents, also allows to create a PDF * * @param webview WebView * @param jobName Name of the job (affects PDF name too) * @return {{@link PrintJob}} or null */ @RequiresApi(api = Build.VERSION_CODES.KITKAT) public PrintJob print(final WebView webview, final String jobName, final boolean... landscape) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { final PrintDocumentAdapter printAdapter; final PrintManager printManager = (PrintManager) _context.getSystemService(Context.PRINT_SERVICE); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { printAdapter = webview.createPrintDocumentAdapter(jobName); } else { printAdapter = webview.createPrintDocumentAdapter(); } final PrintAttributes.Builder attrib = new PrintAttributes.Builder(); if (landscape != null && landscape.length > 0 && landscape[0]) { attrib.setMediaSize(new PrintAttributes.MediaSize("ISO_A4", "android", 11690, 8270)); attrib.setMinMargins(new PrintAttributes.Margins(0, 0, 0, 0)); } if (printManager != null) { try { return printManager.print(jobName, printAdapter, attrib.build()); } catch (Exception ignored) { } } } else { Log.e(getClass().getName(), "ERROR: Method called on too low Android API version"); } return null; }
Example #9
Source File: MainActivity.java From Android-SmartWebView with MIT License | 5 votes |
private void print_page(WebView view, String print_name, boolean manual) { PrintManager printManager = (PrintManager) getSystemService(Context.PRINT_SERVICE); PrintDocumentAdapter printAdapter = view.createPrintDocumentAdapter(print_name); PrintAttributes.Builder builder = new PrintAttributes.Builder(); builder.setMediaSize(PrintAttributes.MediaSize.ISO_A5); PrintJob printJob = printManager.print(print_name, printAdapter, builder.build()); if(printJob.isCompleted()){ Toast.makeText(getApplicationContext(), R.string.print_complete, Toast.LENGTH_LONG).show(); } else if(printJob.isFailed()){ Toast.makeText(getApplicationContext(), R.string.print_failed, Toast.LENGTH_LONG).show(); } }
Example #10
Source File: PreviewFragment.java From Resume-Builder with MIT License | 5 votes |
private void createWebPrintJob(WebView webView) { // Get a PrintManager instance PrintManager printManager = (PrintManager) getActivity() .getSystemService(Context.PRINT_SERVICE); // Get a print adapter instance PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter(); // Create a print job with name and adapter instance String jobName = getString(R.string.app_name) + " Document"; PrintJob printJob = printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build()); }
Example #11
Source File: ShareUtil.java From openlauncher with Apache License 2.0 | 4 votes |
/** * Print a {@link WebView}'s contents, also allows to create a PDF * * @param webview WebView * @param jobName Name of the job (affects PDF name too) * @return {{@link PrintJob}} or null */ @RequiresApi(api = Build.VERSION_CODES.KITKAT) public PrintJob print(final WebView webview, final String jobName, final boolean... landscape) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { final PrintDocumentAdapter printAdapter; final PrintManager printManager = (PrintManager) _context.getSystemService(Context.PRINT_SERVICE); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { printAdapter = webview.createPrintDocumentAdapter(jobName); } else { printAdapter = webview.createPrintDocumentAdapter(); } final PrintAttributes.Builder attrib = new PrintAttributes.Builder(); if (landscape != null && landscape.length > 0 && landscape[0]) { attrib.setMediaSize(new PrintAttributes.MediaSize("ISO_A4", "android", 11690, 8270)); attrib.setMinMargins(new PrintAttributes.Margins(0, 0, 0, 0)); } if (printManager != null) { try { return printManager.print(jobName, printAdapter, attrib.build()); } catch (Exception ignored) { } } } else { Log.e(getClass().getName(), "ERROR: Method called on too low Android API version"); } return null; }
Example #12
Source File: PrintManagerDelegateImpl.java From 365browser with Apache License 2.0 | 4 votes |
@Override public void print(String printJobName, PrintDocumentAdapter documentAdapter, PrintAttributes attributes) { dumpJobStatesForDebug(); mPrintManager.print(printJobName, documentAdapter, attributes); }
Example #13
Source File: TemplatePrinterActivity.java From commcare-android with Apache License 2.0 | 4 votes |
public PrintDocumentAdapterWrapper(Activity activity, PrintDocumentAdapter adapter) { super(); this.activity = activity; this.delegate = adapter; }
Example #14
Source File: WebView.java From android_9.0.0_r45 with Apache License 2.0 | 4 votes |
/** * @deprecated Use {@link #createPrintDocumentAdapter(String)} which requires user * to provide a print document name. */ @Deprecated public PrintDocumentAdapter createPrintDocumentAdapter() { checkThread(); return mProvider.createPrintDocumentAdapter("default"); }
Example #15
Source File: PrintManagerDelegate.java From 365browser with Apache License 2.0 | 2 votes |
/** * Same as {@link android.print.PrintManager#print}, except this doesn't return a * {@link android.print.PrintJob} since the clients don't need it. */ void print(String printJobName, PrintDocumentAdapter documentAdapter, PrintAttributes attributes);
Example #16
Source File: WebView.java From android_9.0.0_r45 with Apache License 2.0 | 2 votes |
/** * Creates a PrintDocumentAdapter that provides the content of this WebView for printing. * * The adapter works by converting the WebView contents to a PDF stream. The WebView cannot * be drawn during the conversion process - any such draws are undefined. It is recommended * to use a dedicated off screen WebView for the printing. If necessary, an application may * temporarily hide a visible WebView by using a custom PrintDocumentAdapter instance * wrapped around the object returned and observing the onStart and onFinish methods. See * {@link android.print.PrintDocumentAdapter} for more information. * * @param documentName The user-facing name of the printed document. See * {@link android.print.PrintDocumentInfo} */ public PrintDocumentAdapter createPrintDocumentAdapter(String documentName) { checkThread(); return mProvider.createPrintDocumentAdapter(documentName); }
Example #17
Source File: WebViewProvider.java From android_9.0.0_r45 with Apache License 2.0 | votes |
public PrintDocumentAdapter createPrintDocumentAdapter(String documentName);