Imprimer des photos
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Prendre et partager des photos est l'une des utilisations les plus courantes des appareils mobiles. Si votre application
prend des photos, les affiche ou permet aux utilisateurs de les partager, vous devriez envisager d'activer l'impression
de ces images dans votre application. La bibliothèque Android Support offre une fonction pratique pour activer l'impression d'image à l'aide d'un
une quantité minimale de code et un ensemble simple
d'options de mise en page.
Cette leçon explique comment imprimer une image à l'aide de la classe PrintHelper
de la bibliothèque Support v4.
Imprimer une image
La classe PrintHelper
de la bibliothèque Android Support fournit
un moyen simple
d'imprimer des images. La classe possède une seule option de mise en page, setScaleMode()
,
qui vous permet d'imprimer avec l'une des deux options suivantes:
SCALE_MODE_FIT
- Ceci
redimensionne l'image de sorte que toute l'image s'affiche dans la zone imprimable de la page.
SCALE_MODE_FILL
- Ceci
redimensionne l'image de sorte qu'elle occupe toute la zone imprimable de la page. Choisir cette option
signifie qu'une partie du haut et du bas, ou des bords gauche et droit de l'image, est
non imprimées. Cette option est la valeur par défaut si vous ne définissez pas de mode d'échelle.
Les deux options de mise à l'échelle de setScaleMode()
conservent le format existant de l'image. L'exemple de code suivant
montre comment créer une instance de la classe PrintHelper
, définissez le
de mise à l'échelle et démarrez le processus d'impression:
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);
}
Cette méthode peut être appelée en tant qu'action pour un élément de menu. Notez que les éléments de menu associés à des actions
qui ne sont pas toujours prises en charge (comme l'impression) doivent être placées dans le menu à développer. Pour plus
consultez la conception de la barre d'action
.
Une fois que la méthode printBitmap()
est
aucune autre action de votre application n'est requise. Interface utilisateur d'impression d'Android
s'affiche, ce qui permet à l'utilisateur de sélectionner une imprimante et des options d'impression. L'utilisateur peut alors imprimer
ou annuler l'action. Si l'utilisateur choisit d'imprimer l'image, une tâche d'impression est créée et un
d'impression s'affiche dans la barre système.
Pour inclure du contenu supplémentaire dans vos tirages au-delà d'une simple image, vous devez
créer un document imprimé. Pour plus d'informations sur la création de documents à imprimer, consultez la
imprimer un document HTML ;
Imprimer un document personnalisé
leçons.
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 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."]]