@jjlmoya/utils-converters 1.24.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.
Files changed (134) hide show
  1. package/package.json +2 -2
  2. package/src/category/i18n/de.ts +1 -1
  3. package/src/category/i18n/en.ts +1 -1
  4. package/src/category/i18n/fr.ts +1 -1
  5. package/src/category/i18n/id.ts +1 -1
  6. package/src/category/i18n/it.ts +1 -1
  7. package/src/category/i18n/nl.ts +1 -1
  8. package/src/category/i18n/pl.ts +1 -1
  9. package/src/category/i18n/pt.ts +1 -1
  10. package/src/category/i18n/sv.ts +1 -1
  11. package/src/entries.ts +6 -0
  12. package/src/tests/bibliography_wellformed_export.test.ts +46 -0
  13. package/src/tests/category_seo_quality.test.ts +74 -0
  14. package/src/tests/faq_count.test.ts +1 -1
  15. package/src/tests/no_h1_in_components.test.ts +1 -1
  16. package/src/tests/seo_parity.test.ts +2 -2
  17. package/src/tests/seo_wellformed_export.test.ts +65 -0
  18. package/src/tests/tool_validation.test.ts +15 -15
  19. package/src/tool/avifAJpg/i18n/en.ts +164 -164
  20. package/src/tool/avifAJpg/i18n/es.ts +164 -164
  21. package/src/tool/avifAJpg/i18n/fr.ts +164 -164
  22. package/src/tool/avifAJpg/i18n/ja.ts +166 -166
  23. package/src/tool/avifAJpg/i18n/ko.ts +166 -166
  24. package/src/tool/avifAJpg/i18n/zh.ts +166 -166
  25. package/src/tool/avifAJpg/seo.astro +15 -15
  26. package/src/tool/avifAPng/i18n/en.ts +164 -164
  27. package/src/tool/avifAPng/i18n/es.ts +164 -164
  28. package/src/tool/avifAPng/i18n/fr.ts +164 -164
  29. package/src/tool/avifAPng/i18n/ja.ts +166 -166
  30. package/src/tool/avifAPng/i18n/ko.ts +166 -166
  31. package/src/tool/avifAPng/i18n/zh.ts +166 -166
  32. package/src/tool/avifAPng/seo.astro +15 -15
  33. package/src/tool/avifAWebp/i18n/en.ts +164 -164
  34. package/src/tool/avifAWebp/i18n/es.ts +164 -164
  35. package/src/tool/avifAWebp/i18n/fr.ts +164 -164
  36. package/src/tool/avifAWebp/i18n/ja.ts +166 -166
  37. package/src/tool/avifAWebp/i18n/ko.ts +166 -166
  38. package/src/tool/avifAWebp/i18n/zh.ts +166 -166
  39. package/src/tool/avifAWebp/seo.astro +15 -15
  40. package/src/tool/bmpAJpg/i18n/en.ts +164 -164
  41. package/src/tool/bmpAJpg/i18n/es.ts +164 -164
  42. package/src/tool/bmpAJpg/i18n/fr.ts +164 -164
  43. package/src/tool/bmpAJpg/i18n/ja.ts +166 -166
  44. package/src/tool/bmpAJpg/i18n/ko.ts +166 -166
  45. package/src/tool/bmpAJpg/i18n/zh.ts +166 -166
  46. package/src/tool/bmpAJpg/seo.astro +15 -15
  47. package/src/tool/bmpAPng/i18n/en.ts +164 -164
  48. package/src/tool/bmpAPng/i18n/es.ts +164 -164
  49. package/src/tool/bmpAPng/i18n/fr.ts +164 -164
  50. package/src/tool/bmpAPng/i18n/ja.ts +165 -165
  51. package/src/tool/bmpAPng/i18n/ko.ts +165 -165
  52. package/src/tool/bmpAPng/i18n/zh.ts +165 -165
  53. package/src/tool/bmpAPng/seo.astro +15 -15
  54. package/src/tool/bmpAWebp/i18n/en.ts +164 -164
  55. package/src/tool/bmpAWebp/i18n/es.ts +164 -164
  56. package/src/tool/bmpAWebp/i18n/fr.ts +164 -164
  57. package/src/tool/bmpAWebp/i18n/ja.ts +166 -166
  58. package/src/tool/bmpAWebp/i18n/ko.ts +166 -166
  59. package/src/tool/bmpAWebp/i18n/zh.ts +166 -166
  60. package/src/tool/bmpAWebp/seo.astro +15 -15
  61. package/src/tool/gifAJpg/i18n/en.ts +164 -164
  62. package/src/tool/gifAJpg/i18n/es.ts +164 -164
  63. package/src/tool/gifAJpg/i18n/fr.ts +164 -164
  64. package/src/tool/gifAJpg/i18n/ja.ts +166 -166
  65. package/src/tool/gifAJpg/i18n/ko.ts +166 -166
  66. package/src/tool/gifAJpg/i18n/zh.ts +166 -166
  67. package/src/tool/gifAJpg/seo.astro +15 -15
  68. package/src/tool/gifAPng/i18n/en.ts +164 -164
  69. package/src/tool/gifAPng/i18n/es.ts +164 -164
  70. package/src/tool/gifAPng/i18n/fr.ts +164 -164
  71. package/src/tool/gifAPng/i18n/ja.ts +166 -166
  72. package/src/tool/gifAPng/i18n/ko.ts +166 -166
  73. package/src/tool/gifAPng/i18n/zh.ts +166 -166
  74. package/src/tool/gifAPng/seo.astro +15 -15
  75. package/src/tool/gifAWebp/i18n/en.ts +164 -164
  76. package/src/tool/gifAWebp/i18n/es.ts +164 -164
  77. package/src/tool/gifAWebp/i18n/fr.ts +164 -164
  78. package/src/tool/gifAWebp/i18n/ja.ts +166 -166
  79. package/src/tool/gifAWebp/i18n/ko.ts +166 -166
  80. package/src/tool/gifAWebp/i18n/zh.ts +166 -166
  81. package/src/tool/gifAWebp/seo.astro +15 -15
  82. package/src/tool/imagenBase64/i18n/en.ts +154 -154
  83. package/src/tool/imagenBase64/i18n/es.ts +154 -154
  84. package/src/tool/imagenBase64/i18n/fr.ts +154 -154
  85. package/src/tool/imagenBase64/seo.astro +15 -15
  86. package/src/tool/jpgAIco/seo.astro +15 -15
  87. package/src/tool/jpgAPng/i18n/en.ts +164 -164
  88. package/src/tool/jpgAPng/i18n/es.ts +164 -164
  89. package/src/tool/jpgAPng/i18n/fr.ts +164 -164
  90. package/src/tool/jpgAPng/i18n/ja.ts +166 -166
  91. package/src/tool/jpgAPng/i18n/ko.ts +166 -166
  92. package/src/tool/jpgAPng/i18n/zh.ts +166 -166
  93. package/src/tool/jpgAPng/seo.astro +15 -15
  94. package/src/tool/jpgAWebp/i18n/en.ts +164 -164
  95. package/src/tool/jpgAWebp/i18n/es.ts +164 -164
  96. package/src/tool/jpgAWebp/i18n/fr.ts +164 -164
  97. package/src/tool/jpgAWebp/seo.astro +15 -15
  98. package/src/tool/pngAIco/seo.astro +15 -15
  99. package/src/tool/pngAJpg/i18n/de.ts +21 -21
  100. package/src/tool/pngAJpg/i18n/es.ts +177 -177
  101. package/src/tool/pngAJpg/i18n/fr.ts +137 -137
  102. package/src/tool/pngAJpg/i18n/id.ts +89 -89
  103. package/src/tool/pngAJpg/i18n/it.ts +89 -89
  104. package/src/tool/pngAJpg/i18n/ko.ts +177 -177
  105. package/src/tool/pngAJpg/i18n/nl.ts +20 -20
  106. package/src/tool/pngAJpg/i18n/pl.ts +89 -89
  107. package/src/tool/pngAJpg/i18n/pt.ts +89 -89
  108. package/src/tool/pngAJpg/i18n/ru.ts +177 -177
  109. package/src/tool/pngAJpg/i18n/sv.ts +89 -89
  110. package/src/tool/pngAJpg/i18n/tr.ts +89 -89
  111. package/src/tool/pngAJpg/seo.astro +15 -15
  112. package/src/tool/pngAWebp/i18n/en.ts +164 -164
  113. package/src/tool/pngAWebp/i18n/es.ts +164 -164
  114. package/src/tool/pngAWebp/i18n/fr.ts +164 -164
  115. package/src/tool/pngAWebp/seo.astro +15 -15
  116. package/src/tool/svgAJpg/i18n/fr.ts +164 -164
  117. package/src/tool/svgAJpg/seo.astro +15 -15
  118. package/src/tool/svgAPng/i18n/fr.ts +164 -164
  119. package/src/tool/svgAPng/seo.astro +15 -15
  120. package/src/tool/webpAIco/seo.astro +15 -15
  121. package/src/tool/webpAJpg/seo.astro +15 -15
  122. package/src/tool/webpAPng/bibliography.ts +13 -13
  123. package/src/tool/webpAPng/i18n/de.ts +166 -166
  124. package/src/tool/webpAPng/i18n/es.ts +171 -171
  125. package/src/tool/webpAPng/i18n/fr.ts +166 -166
  126. package/src/tool/webpAPng/i18n/id.ts +166 -166
  127. package/src/tool/webpAPng/i18n/it.ts +166 -166
  128. package/src/tool/webpAPng/i18n/nl.ts +166 -166
  129. package/src/tool/webpAPng/i18n/pl.ts +166 -166
  130. package/src/tool/webpAPng/i18n/pt.ts +166 -166
  131. package/src/tool/webpAPng/i18n/ru.ts +166 -166
  132. package/src/tool/webpAPng/i18n/sv.ts +166 -166
  133. package/src/tool/webpAPng/i18n/tr.ts +167 -167
  134. 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';
3
- import { generateSchemas } from '../../../shared/logic/schemas';
4
- import type { WebpAPngLocaleContent } from '../index';
5
-
6
- const slug = 'konverter-webp-v-png';
7
- const title = 'Конвертировать WebP в PNG Онлайн и Бесплатно';
8
- const description =
9
- 'Конвертируйте изображения WebP в PNG прямо в браузере. Сохраняет прозрачность. Без загрузки файлов на сервер. Бесплатно и 100% приватно.';
10
-
11
- const ui: ImageConverterUI = {
12
- dragText: 'Перетащите файлы WebP...',
13
- convertText: 'Чтобы мгновенно конвертировать их в PNG',
14
- selectFiles: 'Выбрать файлы',
15
- processedFiles: 'Обработанные файлы',
16
- downloadAll: 'Скачать всё (.zip)',
2
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
3
+ import { generateSchemas } from '../../../shared/logic/schemas';
4
+ import type { WebpAPngLocaleContent } from '../index';
5
+
6
+ const slug = 'konverter-webp-v-png';
7
+ const title = 'Конвертировать WebP в PNG Онлайн и Бесплатно';
8
+ const description =
9
+ 'Конвертируйте изображения WebP в PNG прямо в браузере. Сохраняет прозрачность. Без загрузки файлов на сервер. Бесплатно и 100% приватно.';
10
+
11
+ const ui: ImageConverterUI = {
12
+ dragText: 'Перетащите файлы WebP...',
13
+ convertText: 'Чтобы мгновенно конвертировать их в PNG',
14
+ selectFiles: 'Выбрать файлы',
15
+ processedFiles: 'Обработанные файлы',
16
+ downloadAll: 'Скачать всё (.zip)',
17
17
  pending: 'В ожидании',
18
- bibliographyTitle: 'Библиографические ссылки',
19
- faqTitle: 'Часто задаваемые вопросы',
20
- };
21
-
22
- const faq: WebpAPngLocaleContent['faq'] = [
23
- {
24
- question: 'Зачем мне конвертировать файлы WebP в PNG?',
25
- answer:
26
- 'Несмотря на меньший вес, файлы WebP могут вызывать несовместимость в программах редактирования, таких как старые версии Photoshop. PNG гарантирует 100% универсальную совместимость.',
27
- },
28
- {
29
- question: 'Теряется ли прозрачность при конвертации из WebP в PNG?',
30
- answer:
31
- 'Вовсе нет. В отличие от конвертации в JPG, формат PNG поддерживает альфа-канал. Наша утилита сохранит все прозрачные области исходного файла.',
32
- },
33
- {
34
- question: 'Могу ли я загружать конфиденциальные корпоративные файлы?',
35
- answer:
36
- 'Вы можете и должны это делать. Поскольку всё запускается локально через JavaScript, изображения вашей компании никогда не покинут ваш компьютер и не будут храниться на внешних серверах.',
37
- },
38
- ];
39
-
40
- const howTo: WebpAPngLocaleContent['howTo'] = [
41
- {
42
- name: 'Перетащите файлы WebP',
43
- text: 'Переместите и отпустите файлы WebP на главную панель или выберите изображения традиционным способом.',
44
- },
45
- {
46
- name: 'Конвертация высокой точности',
47
- text: 'Ваш браузер перерисует изображение пиксель за пикселем и создаст точную копию в формате PNG, сохраняя исходную цветовую гамму.',
48
- },
49
- {
50
- name: 'Индивидуальная или пакетная загрузка',
51
- text: 'Сохраняйте каждый файл по отдельности или, если вы обработали пакет, нажмите кнопку ZIP, чтобы скачать их все вместе.',
52
- },
53
- ];
54
-
55
- const seo: WebpAPngLocaleContent['seo'] = [
56
- {
57
- type: 'title',
58
- text: 'Конвертер WebP в PNG: профессиональный выбор для редактирования и дизайна',
59
- level: 2,
60
- },
61
- {
62
- type: 'paragraph',
63
- html: 'Когда дизайнер скачивает графический ассет в формате <strong>WebP</strong> и пытается открыть его в Photoshop, Figma или Illustrator, результат может быть разочаровывающим: файл не загружается или теряет качество. Формат <strong>PNG</strong> является бесспорным стандартом профессионального редактирования: сжатие без потерь, полный альфа-канал и гарантированная совместимость во всей цепочке творческого производства.',
64
- },
65
- {
66
- type: 'title',
67
- text: 'WebP для веба, PNG для студии',
68
- level: 3,
69
- },
70
- {
71
- type: 'paragraph',
72
- html: 'WebP - это формат для веба: его алгоритмы сжатия оптимизированы для уменьшения веса при передаче, а не для сохранения максимальной точности в итерационных процессах редактирования. Каждый раз, когда вы сохраняете отредактированный WebP, кодек снова применяет сжатие. Для проектов, где файл будет изменяться многократно, это означает постепенное ухудшение качества.',
73
- },
74
- {
75
- type: 'paragraph',
76
- html: 'PNG использует <strong>сжатие без потерь</strong>: данные каждого пикселя полностью сохраняются независимо от того, сколько раз вы сохраняете файл. Это формат, выбранный UI/UX-дизайнерами, цифровыми иллюстраторами и брендинг-командами, которым необходимо поддерживать визуальную целостность на протяжении десятков правок. Инструменты, такие как Photoshop, Figma, Sketch и Illustrator, рассматривают PNG как основной формат экспорта.',
77
- },
78
- {
79
- type: 'title',
80
- text: 'Сравнение: локальная vs облачная конвертация',
81
- level: 3,
82
- },
83
- {
84
- type: 'comparative',
85
- items: [
86
- {
87
- title: 'Облачные конвертеры',
88
- description: 'Инструменты, которые загружают ваши файлы на удаленный сервер.',
89
- icon: 'mdi:cloud-upload',
90
- pointIcon: 'mdi:close-circle-outline',
91
- points: [
92
- 'Ваши ассеты хранятся на сторонних серверах',
93
- 'Медленная удаленная обработка больших файлов',
94
- 'Риск утечки конфиденциальных клиентских проектов',
95
- 'Пакетная конвертация ограничена или платная',
96
- ],
97
- },
98
- {
99
- title: 'Наша локальная архитектура',
100
- description: 'Прямая обработка на вашем оборудовании с использованием технологии Vanilla JS.',
101
- icon: 'mdi:laptop-mac',
102
- highlight: true,
103
- points: [
104
- 'Ваши дизайны никогда не покидают ваш компьютер',
105
- 'Мгновенная пакетная конвертация десятков файлов',
106
- 'Полное сохранение альфа-канала и цветовой гаммы',
107
- 'Абсолютная приватность для клиентских проектов',
108
- ],
109
- },
110
- ],
111
- },
112
- {
113
- type: 'title',
114
- text: 'Как это работает технически',
115
- level: 3,
116
- },
117
- {
118
- type: 'paragraph',
119
- html: 'Современные браузеры могут декодировать WebP нативно. Наш инструмент использует эту возможность для загрузки файла в элемент JavaScript <strong>Image</strong>, а затем отрисовывает его на холсте HTML5 с теми же размерами, что и оригинал. В отличие от конвертации в JPG, здесь не требуется заполнение фона: холст сохраняет полный альфа-канал.',
120
- },
121
- {
122
- type: 'paragraph',
123
- html: 'Конечный экспорт использует метод <code>toDataURL(\'image/png\')</code>, который генерирует PNG без потерь, верный оригиналу. Результатом является файл, готовый к импорту непосредственно в любое профессиональное программное обеспечение для дизайна без промежуточных этапов, ухудшения цвета или потери прозрачности.',
124
- },
125
- {
126
- type: 'tip',
127
- title: 'Совет для редакторов',
128
- html: 'Используйте PNG, когда вам нужно продолжить редактирование изображения. Сжатие без потерь гарантирует отсутствие ухудшения качества при повторных сохранениях - это критически важно при работе со слоями, масками или цветокоррекцией в Photoshop или Figma.',
129
- },
130
- {
131
- type: 'title',
132
- text: 'Варианты использования и совместимость',
133
- level: 3,
134
- },
135
- {
136
- type: 'list',
137
- icon: 'mdi:check-circle',
138
- items: [
139
- 'Импорт ассетов WebP в Photoshop, Figma, Sketch или Illustrator.',
140
- 'Сохранение прозрачности в логотипах и иконках для использования на различных фонах.',
141
- 'Создание мастер-копий графики для долгосрочных проектов.',
142
- 'Экспорт ассетов для мобильных приложений, требующих PNG с альфа-каналом.',
143
- 'Использование изображений в макетах дизайна и презентациях с переменным фоном.',
144
- ],
145
- },
146
- {
147
- type: 'title',
148
- text: 'Заключение',
149
- level: 3,
150
- },
151
- {
152
- type: 'paragraph',
153
- html: 'Если WebP - это формат для веб-сервера, то PNG - это формат для студии дизайна. Этот инструмент конвертирует ваши ассеты WebP в готовые к производству PNG-файлы с сохранением прозрачности и максимальным качеством - и всё это в вашем браузере, без того чтобы ваши файлы когда-либо покидали ваш компьютер.',
154
- },
155
- ];
156
-
157
-
158
- export const content: WebpAPngLocaleContent = {
159
- slug,
160
- title,
161
- description,
162
- ui,
163
- seo,
164
- faq,
165
- bibliography,
166
- howTo,
167
- schemas: generateSchemas({ title, description, inLanguage: 'ru', faq, howTo }),
168
- };
18
+ bibliographyTitle: 'Библиографические ссылки',
19
+ faqTitle: 'Часто задаваемые вопросы',
20
+ };
21
+
22
+ const faq: WebpAPngLocaleContent['faq'] = [
23
+ {
24
+ question: 'Зачем мне конвертировать файлы WebP в PNG?',
25
+ answer:
26
+ 'Несмотря на меньший вес, файлы WebP могут вызывать несовместимость в программах редактирования, таких как старые версии Photoshop. PNG гарантирует 100% универсальную совместимость.',
27
+ },
28
+ {
29
+ question: 'Теряется ли прозрачность при конвертации из WebP в PNG?',
30
+ answer:
31
+ 'Вовсе нет. В отличие от конвертации в JPG, формат PNG поддерживает альфа-канал. Наша утилита сохранит все прозрачные области исходного файла.',
32
+ },
33
+ {
34
+ question: 'Могу ли я загружать конфиденциальные корпоративные файлы?',
35
+ answer:
36
+ 'Вы можете и должны это делать. Поскольку всё запускается локально через JavaScript, изображения вашей компании никогда не покинут ваш компьютер и не будут храниться на внешних серверах.',
37
+ },
38
+ ];
39
+
40
+ const howTo: WebpAPngLocaleContent['howTo'] = [
41
+ {
42
+ name: 'Перетащите файлы WebP',
43
+ text: 'Переместите и отпустите файлы WebP на главную панель или выберите изображения традиционным способом.',
44
+ },
45
+ {
46
+ name: 'Конвертация высокой точности',
47
+ text: 'Ваш браузер перерисует изображение пиксель за пикселем и создаст точную копию в формате PNG, сохраняя исходную цветовую гамму.',
48
+ },
49
+ {
50
+ name: 'Индивидуальная или пакетная загрузка',
51
+ text: 'Сохраняйте каждый файл по отдельности или, если вы обработали пакет, нажмите кнопку ZIP, чтобы скачать их все вместе.',
52
+ },
53
+ ];
54
+
55
+ const seo: WebpAPngLocaleContent['seo'] = [
56
+ {
57
+ type: 'title',
58
+ text: 'Конвертер WebP в PNG: профессиональный выбор для редактирования и дизайна',
59
+ level: 2,
60
+ },
61
+ {
62
+ type: 'paragraph',
63
+ html: 'Когда дизайнер скачивает графический ассет в формате <strong>WebP</strong> и пытается открыть его в Photoshop, Figma или Illustrator, результат может быть разочаровывающим: файл не загружается или теряет качество. Формат <strong>PNG</strong> является бесспорным стандартом профессионального редактирования: сжатие без потерь, полный альфа-канал и гарантированная совместимость во всей цепочке творческого производства.',
64
+ },
65
+ {
66
+ type: 'title',
67
+ text: 'WebP для веба, PNG для студии',
68
+ level: 3,
69
+ },
70
+ {
71
+ type: 'paragraph',
72
+ html: 'WebP - это формат для веба: его алгоритмы сжатия оптимизированы для уменьшения веса при передаче, а не для сохранения максимальной точности в итерационных процессах редактирования. Каждый раз, когда вы сохраняете отредактированный WebP, кодек снова применяет сжатие. Для проектов, где файл будет изменяться многократно, это означает постепенное ухудшение качества.',
73
+ },
74
+ {
75
+ type: 'paragraph',
76
+ html: 'PNG использует <strong>сжатие без потерь</strong>: данные каждого пикселя полностью сохраняются независимо от того, сколько раз вы сохраняете файл. Это формат, выбранный UI/UX-дизайнерами, цифровыми иллюстраторами и брендинг-командами, которым необходимо поддерживать визуальную целостность на протяжении десятков правок. Инструменты, такие как Photoshop, Figma, Sketch и Illustrator, рассматривают PNG как основной формат экспорта.',
77
+ },
78
+ {
79
+ type: 'title',
80
+ text: 'Сравнение: локальная vs облачная конвертация',
81
+ level: 3,
82
+ },
83
+ {
84
+ type: 'comparative',
85
+ items: [
86
+ {
87
+ title: 'Облачные конвертеры',
88
+ description: 'Инструменты, которые загружают ваши файлы на удаленный сервер.',
89
+ icon: 'mdi:cloud-upload',
90
+ pointIcon: 'mdi:close-circle-outline',
91
+ points: [
92
+ 'Ваши ассеты хранятся на сторонних серверах',
93
+ 'Медленная удаленная обработка больших файлов',
94
+ 'Риск утечки конфиденциальных клиентских проектов',
95
+ 'Пакетная конвертация ограничена или платная',
96
+ ],
97
+ },
98
+ {
99
+ title: 'Наша локальная архитектура',
100
+ description: 'Прямая обработка на вашем оборудовании с использованием технологии Vanilla JS.',
101
+ icon: 'mdi:laptop-mac',
102
+ highlight: true,
103
+ points: [
104
+ 'Ваши дизайны никогда не покидают ваш компьютер',
105
+ 'Мгновенная пакетная конвертация десятков файлов',
106
+ 'Полное сохранение альфа-канала и цветовой гаммы',
107
+ 'Абсолютная приватность для клиентских проектов',
108
+ ],
109
+ },
110
+ ],
111
+ },
112
+ {
113
+ type: 'title',
114
+ text: 'Как это работает технически',
115
+ level: 3,
116
+ },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'Современные браузеры могут декодировать WebP нативно. Наш инструмент использует эту возможность для загрузки файла в элемент JavaScript <strong>Image</strong>, а затем отрисовывает его на холсте HTML5 с теми же размерами, что и оригинал. В отличие от конвертации в JPG, здесь не требуется заполнение фона: холст сохраняет полный альфа-канал.',
120
+ },
121
+ {
122
+ type: 'paragraph',
123
+ html: 'Конечный экспорт использует метод <code>toDataURL(\'image/png\')</code>, который генерирует PNG без потерь, верный оригиналу. Результатом является файл, готовый к импорту непосредственно в любое профессиональное программное обеспечение для дизайна без промежуточных этапов, ухудшения цвета или потери прозрачности.',
124
+ },
125
+ {
126
+ type: 'tip',
127
+ title: 'Совет для редакторов',
128
+ html: 'Используйте PNG, когда вам нужно продолжить редактирование изображения. Сжатие без потерь гарантирует отсутствие ухудшения качества при повторных сохранениях - это критически важно при работе со слоями, масками или цветокоррекцией в Photoshop или Figma.',
129
+ },
130
+ {
131
+ type: 'title',
132
+ text: 'Варианты использования и совместимость',
133
+ level: 3,
134
+ },
135
+ {
136
+ type: 'list',
137
+ icon: 'mdi:check-circle',
138
+ items: [
139
+ 'Импорт ассетов WebP в Photoshop, Figma, Sketch или Illustrator.',
140
+ 'Сохранение прозрачности в логотипах и иконках для использования на различных фонах.',
141
+ 'Создание мастер-копий графики для долгосрочных проектов.',
142
+ 'Экспорт ассетов для мобильных приложений, требующих PNG с альфа-каналом.',
143
+ 'Использование изображений в макетах дизайна и презентациях с переменным фоном.',
144
+ ],
145
+ },
146
+ {
147
+ type: 'title',
148
+ text: 'Заключение',
149
+ level: 3,
150
+ },
151
+ {
152
+ type: 'paragraph',
153
+ html: 'Если WebP - это формат для веб-сервера, то PNG - это формат для студии дизайна. Этот инструмент конвертирует ваши ассеты WebP в готовые к производству PNG-файлы с сохранением прозрачности и максимальным качеством - и всё это в вашем браузере, без того чтобы ваши файлы когда-либо покидали ваш компьютер.',
154
+ },
155
+ ];
156
+
157
+
158
+ export const content: WebpAPngLocaleContent = {
159
+ slug,
160
+ title,
161
+ description,
162
+ ui,
163
+ seo,
164
+ faq,
165
+ bibliography,
166
+ howTo,
167
+ schemas: generateSchemas({ title, description, inLanguage: 'ru', faq, howTo }),
168
+ };