Drukowanie zdjęć
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Robienie i udostępnianie zdjęć to jedno z najpopularniejszych zastosowań urządzeń mobilnych. Jeśli Twoja aplikacja
robi zdjęcia, wyświetla je lub pozwala użytkownikom udostępniać obrazy, warto włączyć opcję drukowania
tych obrazów w aplikacji. Biblioteka pomocy Androida to wygodna funkcja, która umożliwia drukowanie obrazów za pomocą
wymaga minimalnej ilości kodu i prostego zestawu opcji układu wydruku.
Z tej lekcji dowiesz się, jak wydrukować obraz przy użyciu klasy PrintHelper
biblioteki pomocy wersji 4.
Drukuj zdjęcie
Klasa PrintHelper
w bibliotece pomocy Androida udostępnia
pozwalającą w prosty sposób drukować zdjęcia. Klasa ma jedną opcję układu: setScaleMode()
,
która umożliwia drukowanie na 2 sposoby:
SCALE_MODE_FIT
– to
tak, aby zmienić rozmiar obrazu w taki sposób, aby cały obraz był widoczny w obszarze przeznaczonym do wydrukowania.
SCALE_MODE_FILL
– to
przeskaluje obraz tak, aby wypełniał cały obszar strony do wydrukowania. Wybór
oznacza, że pewna część górnej i dolnej, lewej i prawej krawędzi obrazu jest
nie wydrukowano. Ta opcja jest wartością domyślną, jeśli nie ustawisz trybu skalowania.
Obie opcje skalowania obrazu setScaleMode()
zachowują bieżący współczynnik proporcji obrazu. Ten przykładowy kod
pokazuje, jak utworzyć instancję klasy PrintHelper
, ustawić
opcję skalowania i rozpocznij proces drukowania:
Kotlin
private fun doPhotoPrint() {
activity?.also { context ->
PrintHelper(context).apply {
scaleMode = PrintHelper.SCALE_MODE_FIT
}.also { printHelper ->
val bitmap = BitmapFactory.decodeResource(resources, R.drawable.droids)
printHelper.printBitmap("droids.jpg - test print", bitmap)
}
}
}
Java
private void doPhotoPrint() {
PrintHelper photoPrinter = new PrintHelper(getActivity());
photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);
Bitmap bitmap = BitmapFactory.decodeResource(getResources(),
R.drawable.droids);
photoPrinter.printBitmap("droids.jpg - test print", bitmap);
}
Metodę tę można wywołać jako działanie dla elementu menu. Zwróć uwagę, że pozycje menu dotyczące działań, które są
które nie zawsze są obsługiwane (np. drukowanie), należy umieścić w rozszerzonym menu. Więcej
informacji, zobacz projekt paska działań.
Google.
Po zastosowaniu metody printBitmap()
nie musisz podejmować żadnych działań z Twojego zgłoszenia. Interfejs Androida Print
pozwala użytkownikowi wybrać drukarkę i opcje drukowania. Użytkownik może następnie wydrukować
lub anuluj działanie. Jeśli użytkownik zdecyduje się wydrukować obraz, zostanie utworzone zadanie drukowania,
na pasku systemowym pojawi się powiadomienie o drukowaniu.
Jeśli chcesz dołączyć do wydruków dodatkowe treści (oprócz obrazu), musisz
i utworzyć dokument do wydruku. Informacje o tworzeniu dokumentów do drukowania znajdziesz w
Drukowanie dokumentu HTML lub
Drukowanie dokumentu niestandardowego
lekcji.
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-27 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-27 UTC."],[],[],null,["# Printing photos\n\nTaking and sharing photos is one of the most popular uses for mobile devices. If your application\ntakes photos, displays them, or allows users to share images, you should consider enabling printing\nof those images in your application. The [Android Support Library](/tools/support-library) provides a convenient function for enabling image printing using a\nminimal amount of code and simple set of print layout options.\n\nThis lesson shows you how to print an image using the v4 support library [PrintHelper](/reference/androidx/print/PrintHelper) class.\n\nPrint an image\n--------------\n\nThe Android Support Library [PrintHelper](/reference/androidx/print/PrintHelper) class provides\na simple way to print images. The class has a single layout option, [setScaleMode()](/reference/androidx/print/PrintHelper#setScaleMode(int)),\nwhich allows you to print with one of two options:\n\n- [SCALE_MODE_FIT](/reference/androidx/print/PrintHelper#SCALE_MODE_FIT) - This option sizes the image so that the whole image is shown within the printable area of the page.\n- [SCALE_MODE_FILL](/reference/androidx/print/PrintHelper#SCALE_MODE_FILL) - This option scales the image so that it fills the entire printable area of the page. Choosing this setting means that some portion of the top and bottom, or left and right edges of the image is not printed. This option is the default value if you do not set a scale mode.\n\nBoth scaling options for [setScaleMode()](/reference/androidx/print/PrintHelper#setScaleMode(int)) keep the existing aspect ratio of the image intact. The following code example\nshows how to create an instance of the [PrintHelper](/reference/androidx/print/PrintHelper) class, set the\nscaling option, and start the printing process: \n\n### Kotlin\n\n```kotlin\nprivate fun doPhotoPrint() {\n activity?.also { context -\u003e\n PrintHelper(context).apply {\n scaleMode = PrintHelper.SCALE_MODE_FIT\n }.also { printHelper -\u003e\n val bitmap = BitmapFactory.decodeResource(resources, R.drawable.droids)\n printHelper.printBitmap(\"droids.jpg - test print\", bitmap)\n }\n }\n}\n```\n\n### Java\n\n```java\nprivate void doPhotoPrint() {\n PrintHelper photoPrinter = new PrintHelper(getActivity());\n photoPrinter.setScaleMode(PrintHelper.SCALE_MODE_FIT);\n Bitmap bitmap = BitmapFactory.decodeResource(getResources(),\n R.drawable.droids);\n photoPrinter.printBitmap(\"droids.jpg - test print\", bitmap);\n}\n```\n\n\nThis method can be called as the action for a menu item. Note that menu items for actions that are\nnot always supported (such as printing) should be placed in the overflow menu. For more\ninformation, see the [Action Bar](/design/patterns/actionbar) design\nguide.\n\nAfter the [printBitmap()](/reference/androidx/print/PrintHelper#printBitmap(java.lang.String, android.graphics.Bitmap)) method is\ncalled, no further action from your application is required. The Android print user interface\nappears, allowing the user to select a printer and printing options. The user can then print the\nimage or cancel the action. If the user chooses to print the image, a print job is created and a\nprinting notification appears in the system bar.\n\nIf you want to include additional content in your printouts beyond just an image, you must\nconstruct a print document. For information on creating documents for printing, see the\n[Printing an HTML document](/training/printing/html-docs) or\n[Printing a custom document](/training/printing/custom-docs)\nlessons."]]