@jjlmoya/utils-converters 1.25.0 → 1.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/src/category/i18n/de.ts +1 -1
- package/src/category/i18n/en.ts +1 -1
- package/src/category/i18n/fr.ts +1 -1
- package/src/category/i18n/id.ts +1 -1
- package/src/category/i18n/it.ts +1 -1
- package/src/category/i18n/nl.ts +1 -1
- package/src/category/i18n/pl.ts +1 -1
- package/src/category/i18n/pt.ts +1 -1
- package/src/category/i18n/sv.ts +1 -1
- package/src/tests/bibliography_wellformed_export.test.ts +46 -0
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/seo_wellformed_export.test.ts +65 -0
- package/src/tests/tool_validation.test.ts +15 -15
- package/src/tool/avifAJpg/i18n/en.ts +164 -164
- package/src/tool/avifAJpg/i18n/es.ts +164 -164
- package/src/tool/avifAJpg/i18n/fr.ts +164 -164
- package/src/tool/avifAJpg/i18n/ja.ts +166 -166
- package/src/tool/avifAJpg/i18n/ko.ts +166 -166
- package/src/tool/avifAJpg/i18n/zh.ts +166 -166
- package/src/tool/avifAJpg/seo.astro +15 -15
- package/src/tool/avifAPng/i18n/en.ts +164 -164
- package/src/tool/avifAPng/i18n/es.ts +164 -164
- package/src/tool/avifAPng/i18n/fr.ts +164 -164
- package/src/tool/avifAPng/i18n/ja.ts +166 -166
- package/src/tool/avifAPng/i18n/ko.ts +166 -166
- package/src/tool/avifAPng/i18n/zh.ts +166 -166
- package/src/tool/avifAPng/seo.astro +15 -15
- package/src/tool/avifAWebp/i18n/en.ts +164 -164
- package/src/tool/avifAWebp/i18n/es.ts +164 -164
- package/src/tool/avifAWebp/i18n/fr.ts +164 -164
- package/src/tool/avifAWebp/i18n/ja.ts +166 -166
- package/src/tool/avifAWebp/i18n/ko.ts +166 -166
- package/src/tool/avifAWebp/i18n/zh.ts +166 -166
- package/src/tool/avifAWebp/seo.astro +15 -15
- package/src/tool/bmpAJpg/i18n/en.ts +164 -164
- package/src/tool/bmpAJpg/i18n/es.ts +164 -164
- package/src/tool/bmpAJpg/i18n/fr.ts +164 -164
- package/src/tool/bmpAJpg/i18n/ja.ts +166 -166
- package/src/tool/bmpAJpg/i18n/ko.ts +166 -166
- package/src/tool/bmpAJpg/i18n/zh.ts +166 -166
- package/src/tool/bmpAJpg/seo.astro +15 -15
- package/src/tool/bmpAPng/i18n/en.ts +164 -164
- package/src/tool/bmpAPng/i18n/es.ts +164 -164
- package/src/tool/bmpAPng/i18n/fr.ts +164 -164
- package/src/tool/bmpAPng/i18n/ja.ts +165 -165
- package/src/tool/bmpAPng/i18n/ko.ts +165 -165
- package/src/tool/bmpAPng/i18n/zh.ts +165 -165
- package/src/tool/bmpAPng/seo.astro +15 -15
- package/src/tool/bmpAWebp/i18n/en.ts +164 -164
- package/src/tool/bmpAWebp/i18n/es.ts +164 -164
- package/src/tool/bmpAWebp/i18n/fr.ts +164 -164
- package/src/tool/bmpAWebp/i18n/ja.ts +166 -166
- package/src/tool/bmpAWebp/i18n/ko.ts +166 -166
- package/src/tool/bmpAWebp/i18n/zh.ts +166 -166
- package/src/tool/bmpAWebp/seo.astro +15 -15
- package/src/tool/gifAJpg/i18n/en.ts +164 -164
- package/src/tool/gifAJpg/i18n/es.ts +164 -164
- package/src/tool/gifAJpg/i18n/fr.ts +164 -164
- package/src/tool/gifAJpg/i18n/ja.ts +166 -166
- package/src/tool/gifAJpg/i18n/ko.ts +166 -166
- package/src/tool/gifAJpg/i18n/zh.ts +166 -166
- package/src/tool/gifAJpg/seo.astro +15 -15
- package/src/tool/gifAPng/i18n/en.ts +164 -164
- package/src/tool/gifAPng/i18n/es.ts +164 -164
- package/src/tool/gifAPng/i18n/fr.ts +164 -164
- package/src/tool/gifAPng/i18n/ja.ts +166 -166
- package/src/tool/gifAPng/i18n/ko.ts +166 -166
- package/src/tool/gifAPng/i18n/zh.ts +166 -166
- package/src/tool/gifAPng/seo.astro +15 -15
- package/src/tool/gifAWebp/i18n/en.ts +164 -164
- package/src/tool/gifAWebp/i18n/es.ts +164 -164
- package/src/tool/gifAWebp/i18n/fr.ts +164 -164
- package/src/tool/gifAWebp/i18n/ja.ts +166 -166
- package/src/tool/gifAWebp/i18n/ko.ts +166 -166
- package/src/tool/gifAWebp/i18n/zh.ts +166 -166
- package/src/tool/gifAWebp/seo.astro +15 -15
- package/src/tool/imagenBase64/i18n/en.ts +154 -154
- package/src/tool/imagenBase64/i18n/es.ts +154 -154
- package/src/tool/imagenBase64/i18n/fr.ts +154 -154
- package/src/tool/imagenBase64/seo.astro +15 -15
- package/src/tool/jpgAIco/seo.astro +15 -15
- package/src/tool/jpgAPng/i18n/en.ts +164 -164
- package/src/tool/jpgAPng/i18n/es.ts +164 -164
- package/src/tool/jpgAPng/i18n/fr.ts +164 -164
- package/src/tool/jpgAPng/i18n/ja.ts +166 -166
- package/src/tool/jpgAPng/i18n/ko.ts +166 -166
- package/src/tool/jpgAPng/i18n/zh.ts +166 -166
- package/src/tool/jpgAPng/seo.astro +15 -15
- package/src/tool/jpgAWebp/i18n/en.ts +164 -164
- package/src/tool/jpgAWebp/i18n/es.ts +164 -164
- package/src/tool/jpgAWebp/i18n/fr.ts +164 -164
- package/src/tool/jpgAWebp/seo.astro +15 -15
- package/src/tool/pngAIco/seo.astro +15 -15
- package/src/tool/pngAJpg/i18n/de.ts +21 -21
- package/src/tool/pngAJpg/i18n/es.ts +177 -177
- package/src/tool/pngAJpg/i18n/fr.ts +137 -137
- package/src/tool/pngAJpg/i18n/id.ts +89 -89
- package/src/tool/pngAJpg/i18n/it.ts +89 -89
- package/src/tool/pngAJpg/i18n/ko.ts +177 -177
- package/src/tool/pngAJpg/i18n/nl.ts +20 -20
- package/src/tool/pngAJpg/i18n/pl.ts +89 -89
- package/src/tool/pngAJpg/i18n/pt.ts +89 -89
- package/src/tool/pngAJpg/i18n/ru.ts +177 -177
- package/src/tool/pngAJpg/i18n/sv.ts +89 -89
- package/src/tool/pngAJpg/i18n/tr.ts +89 -89
- package/src/tool/pngAJpg/seo.astro +15 -15
- package/src/tool/pngAWebp/i18n/en.ts +164 -164
- package/src/tool/pngAWebp/i18n/es.ts +164 -164
- package/src/tool/pngAWebp/i18n/fr.ts +164 -164
- package/src/tool/pngAWebp/seo.astro +15 -15
- package/src/tool/svgAJpg/i18n/fr.ts +164 -164
- package/src/tool/svgAJpg/seo.astro +15 -15
- package/src/tool/svgAPng/i18n/fr.ts +164 -164
- package/src/tool/svgAPng/seo.astro +15 -15
- package/src/tool/webpAIco/seo.astro +15 -15
- package/src/tool/webpAJpg/seo.astro +15 -15
- package/src/tool/webpAPng/bibliography.ts +13 -13
- package/src/tool/webpAPng/i18n/de.ts +166 -166
- package/src/tool/webpAPng/i18n/es.ts +171 -171
- package/src/tool/webpAPng/i18n/fr.ts +166 -166
- package/src/tool/webpAPng/i18n/id.ts +166 -166
- package/src/tool/webpAPng/i18n/it.ts +166 -166
- package/src/tool/webpAPng/i18n/nl.ts +166 -166
- package/src/tool/webpAPng/i18n/pl.ts +166 -166
- package/src/tool/webpAPng/i18n/pt.ts +166 -166
- package/src/tool/webpAPng/i18n/ru.ts +166 -166
- package/src/tool/webpAPng/i18n/sv.ts +166 -166
- package/src/tool/webpAPng/i18n/tr.ts +167 -167
- package/src/tool/webpAPng/seo.astro +15 -15
|
@@ -1,168 +1,168 @@
|
|
|
1
1
|
import { bibliography } from '../bibliography';
|
|
2
|
-
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
2
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
3
3
|
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
4
|
-
import type { JpgAPngLocaleContent } from '../index';
|
|
5
|
-
|
|
6
|
-
const slug = 'convertisseur-jpg-en-png';
|
|
7
|
-
const title = 'Convertir JPG en PNG en Ligne et Gratuitement';
|
|
8
|
-
const description =
|
|
9
|
-
'Convertissez des images JPG en PNG dans votre navigateur sans télécharger de fichiers. Conversion sans perte, gratuite et totalement privée.';
|
|
10
|
-
|
|
11
|
-
const ui: ImageConverterUI = {
|
|
12
|
-
dragText: 'Faites glisser des fichiers JPG...',
|
|
13
|
-
convertText: 'Pour les convertir en PNG instantanément',
|
|
14
|
-
selectFiles: 'Sélectionner des fichiers',
|
|
15
|
-
processedFiles: 'Fichiers traités',
|
|
16
|
-
downloadAll: 'Tout télécharger (.zip)',
|
|
4
|
+
import type { JpgAPngLocaleContent } from '../index';
|
|
5
|
+
|
|
6
|
+
const slug = 'convertisseur-jpg-en-png';
|
|
7
|
+
const title = 'Convertir JPG en PNG en Ligne et Gratuitement';
|
|
8
|
+
const description =
|
|
9
|
+
'Convertissez des images JPG en PNG dans votre navigateur sans télécharger de fichiers. Conversion sans perte, gratuite et totalement privée.';
|
|
10
|
+
|
|
11
|
+
const ui: ImageConverterUI = {
|
|
12
|
+
dragText: 'Faites glisser des fichiers JPG...',
|
|
13
|
+
convertText: 'Pour les convertir en PNG instantanément',
|
|
14
|
+
selectFiles: 'Sélectionner des fichiers',
|
|
15
|
+
processedFiles: 'Fichiers traités',
|
|
16
|
+
downloadAll: 'Tout télécharger (.zip)',
|
|
17
17
|
pending: 'En attente',
|
|
18
|
-
bibliographyTitle: 'Références Bibliographiques',
|
|
19
|
-
faqTitle: 'Questions Fréquentes',
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const faq: JpgAPngLocaleContent['faq'] = [
|
|
23
|
-
{
|
|
24
|
-
question: 'Quand devrais-je utiliser JPG vers PNG ?',
|
|
25
|
-
answer:
|
|
26
|
-
'Chaque fois que vous allez éditer du texte ou des logos dans une photographie. Si vous sauvegardez un JPG plusieurs fois, il se dégrade. Le PNG fige la compression.',
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
question: 'Le fichier PNG aura-t-il un fond transparent immédiatement ?',
|
|
30
|
-
answer:
|
|
31
|
-
'Non. Le JPG original était plat et sans ce type de canal structurel. Le PNG résultant préparera ce conteneur, puis vous devrez isoler l\'élément à l\'aide de Photoshop ou d\'un autre éditeur.',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
question: 'Ce site web a-t-il des limites de trafic ?',
|
|
35
|
-
answer:
|
|
36
|
-
'Grâce aux technologies Edge sans dépendances cloud, votre conversion n\'a aucune limite car elle utilise entièrement votre ordinateur ou mobile.',
|
|
37
|
-
},
|
|
38
|
-
];
|
|
39
|
-
|
|
40
|
-
const howTo: JpgAPngLocaleContent['howTo'] = [
|
|
41
|
-
{
|
|
42
|
-
name: 'Glisser JPG dans le panneau',
|
|
43
|
-
text: 'Téléchargez des images JPG statiques en utilisant la souris tactile ou le sélecteur de fichiers de l\'ordinateur.',
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
name: 'Exécution sans perte',
|
|
47
|
-
text: 'Le logiciel Vanilla pousse les bits de trame vers un wrapper natif sans perte de la famille PNG.',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: 'Terminer la session',
|
|
51
|
-
text: 'Cliquez sur le panneau et votre navigateur déposera les actifs web téléchargés dans vos dossiers utilisateur.',
|
|
52
|
-
},
|
|
53
|
-
];
|
|
54
|
-
|
|
55
|
-
const seo: JpgAPngLocaleContent['seo'] = [
|
|
56
|
-
{
|
|
57
|
-
type: 'title',
|
|
58
|
-
text: 'Convertisseur JPG vers PNG: Éditez sans perte de qualité et ajoutez de la transparence',
|
|
59
|
-
level: 2,
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
type: 'paragraph',
|
|
63
|
-
html: 'Le <strong>JPG</strong> est imbattable pour les photos de caméra, mais il a un talon d\'Achille: chaque fois que vous sauvegardez le fichier, il applique à nouveau sa compression avec perte, dégradant progressivement les bords et les dégradés. Le <strong>PNG</strong> utilise une compression sans perte - une fois sauvegardé, les pixels sont immuables. Convertir un JPG en PNG est l\'étape essentielle lorsque vous devez préparer une image pour une édition intensive, ajouter un fond transparent ou l\'intégrer dans un flux de travail de design nécessitant plusieurs sauvegardes.',
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
type: 'title',
|
|
67
|
-
text: 'JPG ou PNG ? Quand utiliser chaque format',
|
|
68
|
-
level: 3,
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
type: 'paragraph',
|
|
72
|
-
html: 'Le <strong>JPG</strong> est le roi de la photographie: fichiers légers, compatibles avec tout. Mais ses artefacts de compression s\'accumulent à chaque édition et re-sauvegarde. Si vous devez recadrer, retoucher ou ajouter du texte à une image à plusieurs reprises, partir d\'un JPG signifie introduire de la dégradation à chaque cycle. Le JPG est également dépourvu de canal alpha: il ne peut pas avoir de fonds transparents, ce qui l\'exclut pour les logos, icônes et éléments d\'interface.',
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
type: 'paragraph',
|
|
76
|
-
html: 'Le <strong>PNG</strong> est le bon choix pour les logos d\'entreprise, les captures d\'écran avec du texte net, les éléments d\'interface, les images de produits sur fond blanc à découper, ou tout actif graphique qui sera édité plus d\'une fois. La compression sans perte garantit que les bords du texte restent parfaitement définis et que les couleurs unies demeurent pures - sans bruit JPEG.',
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
type: 'title',
|
|
80
|
-
text: 'Comparatif: Conversion locale vs Cloud',
|
|
81
|
-
level: 3,
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
type: 'comparative',
|
|
85
|
-
items: [
|
|
86
|
-
{
|
|
87
|
-
title: 'Convertisseurs Cloud',
|
|
88
|
-
description: 'Outils qui envoient vos fichiers vers un serveur distant.',
|
|
89
|
-
icon: 'mdi:cloud-upload',
|
|
90
|
-
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
-
points: [
|
|
92
|
-
'Latence réseau à l\'envoi et au téléchargement',
|
|
93
|
-
'Vos images sont stockées sur des serveurs tiers',
|
|
94
|
-
'Limites de taille et quota quotidien de conversions',
|
|
95
|
-
'Publicités intrusives et traceurs tiers',
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
title: 'Notre Architecture Locale',
|
|
100
|
-
description: 'Traitement direct sur votre matériel via la technologie Vanilla JS.',
|
|
101
|
-
icon: 'mdi:laptop-mac',
|
|
102
|
-
highlight: true,
|
|
103
|
-
points: [
|
|
104
|
-
'Vitesse instantanée - zéro latence réseau',
|
|
105
|
-
'Confidentialité totale - 0 octet envoyé à l\'extérieur',
|
|
106
|
-
'Aucune limite de taille ni de nombre de fichiers',
|
|
107
|
-
'Interface épurée, sans publicités ni traçage',
|
|
108
|
-
],
|
|
109
|
-
},
|
|
110
|
-
],
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
type: 'title',
|
|
114
|
-
text: 'Comment ça fonctionne techniquement',
|
|
115
|
-
level: 3,
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
type: 'paragraph',
|
|
119
|
-
html: 'Le processus est entièrement local: le navigateur crée un <strong>Blob</strong> à partir du JPG sélectionné et le dessine sur un <strong>Canvas HTML5</strong> en mémoire. Une fois rendu, il appelle <code>toDataURL(\'image/png\')</code> - le codec PNG intégré au navigateur ré-encode chaque pixel sans appliquer aucune nouvelle compression avec perte. Le résultat est un PNG qui préserve fidèlement l\'état actuel du JPG: ni meilleur ni moins bon, simplement figé.',
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
type: 'paragraph',
|
|
123
|
-
html: 'Le PNG résultant utilise la compression sans perte DEFLATE, la même qu\'emploient des outils professionnels comme Photoshop ou GIMP. Sa taille sera plus grande que le JPG original - généralement 2 à 5 fois - car il stocke tous les pixels sans en éliminer. C\'est le prix à payer pour la fidélité et l\'éditabilité infinie.',
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
type: 'tip',
|
|
127
|
-
title: 'Important: le PNG ne récupère pas la qualité JPEG',
|
|
128
|
-
html: 'Convertir un JPG en PNG <strong>ne récupère pas la qualité perdue</strong> lors de la compression JPEG originale. Si votre JPG présentait déjà des artefacts de blocs ou du bruit de couleur, le PNG les conservera intacts - il empêche simplement d\'en ajouter davantage. Considérez la conversion comme le fait de "figer" l\'état actuel de l\'image pour que les éditions futures ne la dégradent pas davantage.',
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
type: 'title',
|
|
132
|
-
text: 'Cas d\'usage et compatibilité',
|
|
133
|
-
level: 3,
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
type: 'list',
|
|
137
|
-
icon: 'mdi:check-circle',
|
|
138
|
-
items: [
|
|
139
|
-
'Logos et éléments de marque nécessitant un fond transparent après découpe.',
|
|
140
|
-
'Captures d\'écran avec texte qui seront éditées et re-sauvegardées plusieurs fois.',
|
|
141
|
-
'Images de produits pour l\'e-commerce nécessitant un fond blanc propre et découpable.',
|
|
142
|
-
'Ressources graphiques pour des présentations PowerPoint ou Google Slides.',
|
|
143
|
-
'Actifs d\'interface pour applications web et mobiles où la netteté des bords est critique.',
|
|
144
|
-
],
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
type: 'title',
|
|
148
|
-
text: 'Conclusion',
|
|
149
|
-
level: 3,
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
type: 'paragraph',
|
|
153
|
-
html: 'La conversion de JPG en PNG est la première étape de tout flux de travail de design sérieux. Elle ne transforme pas la qualité originale, mais protège chaque pixel des éditions futures. Avec cet outil, le processus se déroule instantanément et de manière totalement privée - vos images professionnelles ou personnelles ne quittent à aucun moment votre appareil.',
|
|
154
|
-
},
|
|
155
|
-
];
|
|
156
|
-
|
|
18
|
+
bibliographyTitle: 'Références Bibliographiques',
|
|
19
|
+
faqTitle: 'Questions Fréquentes',
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const faq: JpgAPngLocaleContent['faq'] = [
|
|
23
|
+
{
|
|
24
|
+
question: 'Quand devrais-je utiliser JPG vers PNG ?',
|
|
25
|
+
answer:
|
|
26
|
+
'Chaque fois que vous allez éditer du texte ou des logos dans une photographie. Si vous sauvegardez un JPG plusieurs fois, il se dégrade. Le PNG fige la compression.',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
question: 'Le fichier PNG aura-t-il un fond transparent immédiatement ?',
|
|
30
|
+
answer:
|
|
31
|
+
'Non. Le JPG original était plat et sans ce type de canal structurel. Le PNG résultant préparera ce conteneur, puis vous devrez isoler l\'élément à l\'aide de Photoshop ou d\'un autre éditeur.',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
question: 'Ce site web a-t-il des limites de trafic ?',
|
|
35
|
+
answer:
|
|
36
|
+
'Grâce aux technologies Edge sans dépendances cloud, votre conversion n\'a aucune limite car elle utilise entièrement votre ordinateur ou mobile.',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
const howTo: JpgAPngLocaleContent['howTo'] = [
|
|
41
|
+
{
|
|
42
|
+
name: 'Glisser JPG dans le panneau',
|
|
43
|
+
text: 'Téléchargez des images JPG statiques en utilisant la souris tactile ou le sélecteur de fichiers de l\'ordinateur.',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'Exécution sans perte',
|
|
47
|
+
text: 'Le logiciel Vanilla pousse les bits de trame vers un wrapper natif sans perte de la famille PNG.',
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
name: 'Terminer la session',
|
|
51
|
+
text: 'Cliquez sur le panneau et votre navigateur déposera les actifs web téléchargés dans vos dossiers utilisateur.',
|
|
52
|
+
},
|
|
53
|
+
];
|
|
54
|
+
|
|
55
|
+
const seo: JpgAPngLocaleContent['seo'] = [
|
|
56
|
+
{
|
|
57
|
+
type: 'title',
|
|
58
|
+
text: 'Convertisseur JPG vers PNG: Éditez sans perte de qualité et ajoutez de la transparence',
|
|
59
|
+
level: 2,
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'paragraph',
|
|
63
|
+
html: 'Le <strong>JPG</strong> est imbattable pour les photos de caméra, mais il a un talon d\'Achille: chaque fois que vous sauvegardez le fichier, il applique à nouveau sa compression avec perte, dégradant progressivement les bords et les dégradés. Le <strong>PNG</strong> utilise une compression sans perte - une fois sauvegardé, les pixels sont immuables. Convertir un JPG en PNG est l\'étape essentielle lorsque vous devez préparer une image pour une édition intensive, ajouter un fond transparent ou l\'intégrer dans un flux de travail de design nécessitant plusieurs sauvegardes.',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
type: 'title',
|
|
67
|
+
text: 'JPG ou PNG ? Quand utiliser chaque format',
|
|
68
|
+
level: 3,
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'paragraph',
|
|
72
|
+
html: 'Le <strong>JPG</strong> est le roi de la photographie: fichiers légers, compatibles avec tout. Mais ses artefacts de compression s\'accumulent à chaque édition et re-sauvegarde. Si vous devez recadrer, retoucher ou ajouter du texte à une image à plusieurs reprises, partir d\'un JPG signifie introduire de la dégradation à chaque cycle. Le JPG est également dépourvu de canal alpha: il ne peut pas avoir de fonds transparents, ce qui l\'exclut pour les logos, icônes et éléments d\'interface.',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: 'paragraph',
|
|
76
|
+
html: 'Le <strong>PNG</strong> est le bon choix pour les logos d\'entreprise, les captures d\'écran avec du texte net, les éléments d\'interface, les images de produits sur fond blanc à découper, ou tout actif graphique qui sera édité plus d\'une fois. La compression sans perte garantit que les bords du texte restent parfaitement définis et que les couleurs unies demeurent pures - sans bruit JPEG.',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
type: 'title',
|
|
80
|
+
text: 'Comparatif: Conversion locale vs Cloud',
|
|
81
|
+
level: 3,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: 'comparative',
|
|
85
|
+
items: [
|
|
86
|
+
{
|
|
87
|
+
title: 'Convertisseurs Cloud',
|
|
88
|
+
description: 'Outils qui envoient vos fichiers vers un serveur distant.',
|
|
89
|
+
icon: 'mdi:cloud-upload',
|
|
90
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
+
points: [
|
|
92
|
+
'Latence réseau à l\'envoi et au téléchargement',
|
|
93
|
+
'Vos images sont stockées sur des serveurs tiers',
|
|
94
|
+
'Limites de taille et quota quotidien de conversions',
|
|
95
|
+
'Publicités intrusives et traceurs tiers',
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
title: 'Notre Architecture Locale',
|
|
100
|
+
description: 'Traitement direct sur votre matériel via la technologie Vanilla JS.',
|
|
101
|
+
icon: 'mdi:laptop-mac',
|
|
102
|
+
highlight: true,
|
|
103
|
+
points: [
|
|
104
|
+
'Vitesse instantanée - zéro latence réseau',
|
|
105
|
+
'Confidentialité totale - 0 octet envoyé à l\'extérieur',
|
|
106
|
+
'Aucune limite de taille ni de nombre de fichiers',
|
|
107
|
+
'Interface épurée, sans publicités ni traçage',
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: 'Comment ça fonctionne techniquement',
|
|
115
|
+
level: 3,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'paragraph',
|
|
119
|
+
html: 'Le processus est entièrement local: le navigateur crée un <strong>Blob</strong> à partir du JPG sélectionné et le dessine sur un <strong>Canvas HTML5</strong> en mémoire. Une fois rendu, il appelle <code>toDataURL(\'image/png\')</code> - le codec PNG intégré au navigateur ré-encode chaque pixel sans appliquer aucune nouvelle compression avec perte. Le résultat est un PNG qui préserve fidèlement l\'état actuel du JPG: ni meilleur ni moins bon, simplement figé.',
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'paragraph',
|
|
123
|
+
html: 'Le PNG résultant utilise la compression sans perte DEFLATE, la même qu\'emploient des outils professionnels comme Photoshop ou GIMP. Sa taille sera plus grande que le JPG original - généralement 2 à 5 fois - car il stocke tous les pixels sans en éliminer. C\'est le prix à payer pour la fidélité et l\'éditabilité infinie.',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'tip',
|
|
127
|
+
title: 'Important: le PNG ne récupère pas la qualité JPEG',
|
|
128
|
+
html: 'Convertir un JPG en PNG <strong>ne récupère pas la qualité perdue</strong> lors de la compression JPEG originale. Si votre JPG présentait déjà des artefacts de blocs ou du bruit de couleur, le PNG les conservera intacts - il empêche simplement d\'en ajouter davantage. Considérez la conversion comme le fait de "figer" l\'état actuel de l\'image pour que les éditions futures ne la dégradent pas davantage.',
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'title',
|
|
132
|
+
text: 'Cas d\'usage et compatibilité',
|
|
133
|
+
level: 3,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'list',
|
|
137
|
+
icon: 'mdi:check-circle',
|
|
138
|
+
items: [
|
|
139
|
+
'Logos et éléments de marque nécessitant un fond transparent après découpe.',
|
|
140
|
+
'Captures d\'écran avec texte qui seront éditées et re-sauvegardées plusieurs fois.',
|
|
141
|
+
'Images de produits pour l\'e-commerce nécessitant un fond blanc propre et découpable.',
|
|
142
|
+
'Ressources graphiques pour des présentations PowerPoint ou Google Slides.',
|
|
143
|
+
'Actifs d\'interface pour applications web et mobiles où la netteté des bords est critique.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Conclusion',
|
|
149
|
+
level: 3,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'paragraph',
|
|
153
|
+
html: 'La conversion de JPG en PNG est la première étape de tout flux de travail de design sérieux. Elle ne transforme pas la qualité originale, mais protège chaque pixel des éditions futures. Avec cet outil, le processus se déroule instantanément et de manière totalement privée - vos images professionnelles ou personnelles ne quittent à aucun moment votre appareil.',
|
|
154
|
+
},
|
|
155
|
+
];
|
|
157
156
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}
|
|
157
|
+
|
|
158
|
+
export const content: JpgAPngLocaleContent = {
|
|
159
|
+
slug,
|
|
160
|
+
title,
|
|
161
|
+
description,
|
|
162
|
+
ui,
|
|
163
|
+
seo,
|
|
164
|
+
faq,
|
|
165
|
+
bibliography,
|
|
166
|
+
howTo,
|
|
167
|
+
schemas: generateSchemas({ title, description, inLanguage: 'fr', faq, howTo }),
|
|
168
|
+
};
|