Skip to content

Commit 2c7fdb6

Browse files
committed
i18n(fr): Update guides/images from #8447 #8646
Signed-off-by: Thomas Bonnet <thomasbnt@protonmail.com>
1 parent 218e322 commit 2c7fdb6

1 file changed

Lines changed: 1 addition & 222 deletions

File tree

src/content/docs/fr/guides/images.mdx

Lines changed: 1 addition & 222 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import Since from '~/components/Since.astro';
77
import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro';
88
import RecipeLinks from "~/components/RecipeLinks.astro";
99
import { Steps } from '@astrojs/starlight/components'
10-
import Badge from "~/components/Badge.astro"
1110

1211
Astro vous propose plusieurs façons d'utiliser les images sur votre site, qu'elles soient stockées localement dans votre projet, liées à une URL externe, ou gérées dans un CMS ou un CDN !
1312

@@ -743,224 +742,4 @@ export default defineConfig({
743742

744743
## Intégrations communautaires
745744

746-
Il existe plusieurs [intégrations d'images communautaires](https://astro.build/integrations?search=images) tierces pour optimiser et travailler avec des images dans votre projet Astro.
747-
748-
## Mise à jour vers la v3.0 à partir de la v2.x
749-
750-
`astro:assets` n'est plus derrière un drapeau expérimental dans Astro v3.0.
751-
752-
`<Image />` est maintenant un composant intégré et l'intégration précédente `@astrojs/image` a été supprimée.
753-
754-
Ces changements, ainsi que d'autres changements liés à l'utilisation des images dans Astro, peuvent entraîner des ruptures lorsque vous mettez à jour votre projet Astro à partir d'une version antérieure.
755-
756-
Veuillez suivre les instructions ci-dessous pour mettre à jour un projet Astro v2.x vers la version 3.0.
757-
758-
### Mise à jour à partir de `experimental.assets`
759-
760-
Si vous aviez précédemment activé le drapeau expérimental pour `astro:assets`, vous devrez mettre à jour votre projet pour Astro v3.0 qui inclut maintenant les fonctionnalités des assets par défaut.
761-
762-
#### Supprimer l'indicateur `experimental.assets
763-
764-
Supprime le drapeau expérimental :
765-
766-
```js title="astro.config.mjs" del={4-6}
767-
import { defineConfig } from 'astro/config';
768-
769-
export default defineConfig({
770-
experimental: {
771-
assets: true
772-
}
773-
});
774-
```
775-
776-
Si nécessaire, mettez également à jour votre fichier `src/env.d.ts` pour remplacer la référence `astro/client-image` par `astro/client` :
777-
778-
```ts title="src/env.d.ts" del={1} ins={2}
779-
/// <reference types="astro/client-image" />
780-
/// <reference types="astro/client" />
781-
```
782-
783-
#### Supprimer l'alias d'importation `~/assets`
784-
785-
Cet alias d'importation n'est plus inclus par défaut avec `astro:assets`. Si vous utilisiez cet alias avec des actifs expérimentaux, vous devez les convertir en chemins de fichiers relatifs, ou [créer vos propres alias d'importation](/fr/guides/imports/#alias).
786-
787-
```astro title="src/pages/posts/post-1.astro" del={2} ins={3}
788-
---
789-
import rocket from '~/assets/rocket.png';
790-
import rocket from '../../assets/rocket.png';
791-
---
792-
```
793-
794-
#### Ajout d'un support simple pour Cloudflare, Deno, Vercel Edge et Netlify Edge
795-
796-
Astro v3.0 permet à `astro:assets` de fonctionner sans erreur dans Cloudflare, Deno, Vercel Edge et Netlify Edge, qui ne supportent pas l'optimisation d'image Squoosh et Sharp intégrée à Astro. Notez qu'Astro n'effectue aucune transformation ou traitement d'image dans ces environnements. Cependant, vous pouvez toujours profiter des autres avantages de l'utilisation de `astro:assets`, y compris l'absence de décalage cumulatif de la mise en page (CLS), l'attribut `alt` imposé, et une expérience de création cohérente.
797-
798-
Si vous évitiez auparavant d'utiliser `astro:assets` à cause de ces contraintes, vous pouvez maintenant le faire sans problème. Vous pouvez configurer le service d'images no-op pour qu'il accepte explicitement ce comportement :
799-
800-
```js title="astro.config.mjs" ins={4-8}
801-
import { defineConfig } from 'astro/config';
802-
803-
export default defineConfig({
804-
image: {
805-
service: {
806-
entrypoint: 'astro/assets/services/noop'
807-
}
808-
}
809-
});
810-
```
811-
812-
### Décidez où stocker votre images
813-
814-
Consultez le guide Images pour vous aider à décider [où stocker vos images](#où-stocker-les-images).Vous pouvez souhaiter profiter des nouvelles options pour stocker vos images avec la flexibilité ajoutée `astro:assets` brings. Par exemple, les images relatives de votre projet `src/` peuvent maintenant être référencées dans Markdown, MDX et Markdoc en utilisant la syntaxe Markdown standard `![alt](src)`.
815-
816-
### Mise à jour des balises `<img>` existantes
817-
818-
Auparavant, l'importation d'une image renvoyait une simple chaîne de caractères contenant le chemin de l'image. Désormais, les images importées correspondent à la signature suivante :
819-
820-
```ts
821-
interface ImageMetadata {
822-
src: string;
823-
width: number;
824-
height: number;
825-
format: string;
826-
}
827-
```
828-
829-
Vous devez mettre à jour l'attribut `src` de toutes les balises `<img>` existantes (y compris toutes les [images dans les composants du cadre de l'interface utilisateur](#images-dans-les-composants-framework-ui)) et vous pouvez également mettre à jour d'autres attributs qui sont maintenant disponibles pour vous à partir de l'image importée.
830-
831-
```astro title="src/components/MyComponent.astro" ".src" ".width" ".height" del={4} ins={6}
832-
---
833-
import rocket from '../images/rocket.svg';
834-
---
835-
<img src={rocket} width="250" height="250" alt="Une fusée dans l'espace." />
836-
837-
<img src={rocket.src} width={rocket.width} height={rocket.height} alt="Une fusée dans l'espace." />
838-
```
839-
840-
### Mettez à jour vos fichiers Markdown, MDX et Markdoc
841-
842-
Les images relatives de votre projet `src/` peuvent maintenant être référencées dans Markdown, MDX et Markdoc en utilisant la syntaxe Markdown standard `![alt](src)`.
843-
844-
Cela vous permet de déplacer vos images du répertoire `public/` vers votre projet `src/` où elles seront traitées et optimisées. Vos images existantes dans `public/` et les images distantes sont toujours valides mais ne sont pas optimisées par le processus de construction d'Astro.
845-
846-
```md title="src/pages/posts/post-1.md" "/_astro" ".hash" "../../assets/"
847-
# Ma Page Markdown
848-
849-
<!-- Les images locales sont désormais possibles! -->
850-
![A starry night sky.](../../images/stars.png)
851-
852-
<!-- Gardez vos images à côté de votre contenu ! -->
853-
![A starry night sky.](./stars.png)
854-
```
855-
856-
Si vous souhaitez avoir plus de contrôle sur les attributs de vos images, nous vous recommandons d'utiliser le format de fichier `.mdx`, qui vous permet d'inclure le composant `<Image />` d'Astro ou une balise JSX `<img />` en plus de la syntaxe Markdown. Utilisez l'[intégration MDX](/fr/guides/integrations-guide/mdx/) pour ajouter la prise en charge de MDX à Astro.
857-
858-
### Supprimer `@astrojs/image`
859-
860-
861-
Si vous utilisiez l'intégration d'images dans Astro v2.x, suivez les étapes suivantes :
862-
863-
<Steps>
864-
1. Supprimez l'intégration `@astrojs/image`.
865-
866-
Vous devez [supprimer l'intégration](/fr/guides/integrations-guide/#supprimer-une-intégration) en la désinstallant puis en la supprimant de votre fichier `astro.config.mjs`.
867-
868-
```js del={3,7}
869-
// astro.config.mjs
870-
import { defineConfig } from 'astro/config';
871-
import image from '@astrojs/image';
872-
873-
export default defineConfig({
874-
integrations: [
875-
image(),
876-
]
877-
})
878-
```
879-
880-
2. Mettre à jour les types (si nécessaire)
881-
882-
Si vous aviez des types spéciaux configurés pour `@astrojs/image` dans `src/env.d.ts`, vous pouvez avoir besoin de les changer pour les types Astro par défaut si votre mise à jour vers la v3 n'a pas effectué cette étape pour vous.
883-
884-
```ts title="src/env.d.ts" del={1} ins={2}
885-
/// <reference types="@astrojs/image/client" />
886-
/// <reference types="astro/client" />
887-
```
888-
889-
De même, mettez à jour `tsconfig.json` si nécessaire :
890-
891-
```json title="tsconfig.json" del={3} ins={4}
892-
{
893-
"compilerOptions": {
894-
"types": ["@astrojs/image/client"]
895-
"types": ["astro/client"]
896-
}
897-
}
898-
```
899-
900-
3. Migrer tous les composants `<Image />` existants
901-
902-
Changez toutes les instructions `import` de `@astrojs/image/components` à `astro:assets` afin d'utiliser le nouveau composant intégré `<Image />`.
903-
904-
Supprimez tous les attributs du composant qui ne sont pas des [propriétés d'image actuellement supportées](/fr/guides/images/#propriétés).
905-
906-
Par exemple, `aspectRatio` n'est plus supporté, car il est maintenant automatiquement déduit des attributs `width` et `height`.
907-
908-
```astro title="src/components/MyComponent.astro" del= {2,11} ins={3}
909-
---
910-
import { Image } from '@astrojs/image/components';
911-
import { Image } from 'astro:assets';
912-
import localImage from '../assets/logo.png';
913-
const localAlt = 'The Astro Logo';
914-
---
915-
916-
<Image
917-
src={localImage}
918-
width={300}
919-
aspectRatio="16:9"
920-
alt={localAlt}
921-
/>
922-
```
923-
924-
4. Choisir un service d'images par défaut
925-
926-
[Sharp](https://github.com/lovell/sharp) est maintenant le service d'image par défaut utilisé pour `astro:assets`. Si vous souhaitez utiliser Sharp, aucune configuration n'est nécessaire.
927-
928-
Si vous préférez utiliser [Squoosh](https://github.com/GoogleChromeLabs/squoosh) pour transformer vos images, mettez à jour votre configuration avec l'option `image.service` suivante :
929-
930-
```js title="astro.config.mjs" ins={4-6}
931-
import { defineConfig, squooshImageService } from 'astro/config';
932-
933-
export default defineConfig({
934-
image: {
935-
service: squooshImageService(),
936-
},
937-
});
938-
```
939-
</Steps>
940-
941-
### Mise à jour des schémas des collections de contenu
942-
943-
Vous pouvez maintenant déclarer une image associée à une entrée de collection de contenu, telle que l'image de couverture d'un article de blog, dans votre frontmatter en utilisant son chemin relatif au dossier courant.
944-
945-
La nouvelle aide `image` pour les collections de contenu vous permet de valider les métadonnées de l'image en utilisant Zod. En savoir plus sur [comment utiliser les images dans les collections de contenus](/fr/guides/images/#images-dans-les-collections-de-contenus)
946-
947-
### Naviguer dans les importations d'images dans Astro v3.0
948-
949-
Dans Astro v3.0, si vous devez conserver l'ancien comportement d'importation des images et exiger une représentation sous forme de chaîne de l'URL de l'image, ajoutez `?url` à la fin du chemin de l'image lorsque vous l'importez. Par exemple :
950-
951-
```astro title="src/pages/blog/MyImages.astro"
952-
---
953-
import Sprite from '../assets/logo.svg?url';
954-
---
955-
956-
<svg>
957-
<use xlink:href={Sprite + '#cart'} />
958-
</svg>
959-
960-
```
961-
962-
Cette approche permet d'obtenir la chaîne d'URL. Gardez à l'esprit que pendant le développement, Astro utilise un chemin `src/`, mais lors de la construction, il génère des chemins hachés comme `/_astro/cat.a6737dd3.png`.
963-
964-
Si vous préférez travailler directement avec l'objet image lui-même, vous pouvez accéder à la propriété `.src`. Cette approche est la meilleure pour des tâches telles que la gestion des dimensions des images pour les métriques de Core Web Vitals et la prévention de CLS.
965-
966-
Si vous êtes en train de passer au nouveau comportement d'importation, la combinaison des méthodes `?url` et `.src` peut être la bonne méthode pour une gestion transparente des images.
745+
Il existe plusieurs [intégrations d'images communautaires](https://astro.build/integrations?search=images) pour optimiser et travailler avec des images dans votre projet Astro.

0 commit comments

Comments
 (0)