@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 { BmpAPngLocaleContent } from '../index';
|
|
5
|
-
|
|
6
|
-
const slug = 'bmp-to-png-converter';
|
|
7
|
-
const title = 'BMP to PNG Converter';
|
|
8
|
-
const description =
|
|
9
|
-
'Convert BMP images to PNG without quality loss. Modern compression without artifacts. No file uploads. Free and 100% private.';
|
|
10
|
-
|
|
11
|
-
const ui: ImageConverterUI = {
|
|
12
|
-
dragText: 'Drag BMP files...',
|
|
13
|
-
convertText: 'To convert them to PNG instantly',
|
|
14
|
-
selectFiles: 'Select files',
|
|
15
|
-
processedFiles: 'Processed files',
|
|
16
|
-
downloadAll: 'Download All (.zip)',
|
|
4
|
+
import type { BmpAPngLocaleContent } from '../index';
|
|
5
|
+
|
|
6
|
+
const slug = 'bmp-to-png-converter';
|
|
7
|
+
const title = 'BMP to PNG Converter';
|
|
8
|
+
const description =
|
|
9
|
+
'Convert BMP images to PNG without quality loss. Modern compression without artifacts. No file uploads. Free and 100% private.';
|
|
10
|
+
|
|
11
|
+
const ui: ImageConverterUI = {
|
|
12
|
+
dragText: 'Drag BMP files...',
|
|
13
|
+
convertText: 'To convert them to PNG instantly',
|
|
14
|
+
selectFiles: 'Select files',
|
|
15
|
+
processedFiles: 'Processed files',
|
|
16
|
+
downloadAll: 'Download All (.zip)',
|
|
17
17
|
pending: 'Pending',
|
|
18
|
-
bibliographyTitle: 'Bibliographic References',
|
|
19
|
-
faqTitle: 'Frequently Asked Questions',
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const faq: BmpAPngLocaleContent['faq'] = [
|
|
23
|
-
{
|
|
24
|
-
question: 'What is the main difference between BMP and PNG?',
|
|
25
|
-
answer:
|
|
26
|
-
'Both BMP and PNG are lossless formats. The difference lies in optimization: PNG uses modern compression algorithms to store the same image taking up 5 to 10 times less memory than BMP.',
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
question: 'Is the conversion truly private?',
|
|
30
|
-
answer:
|
|
31
|
-
'Yes. Your computer handles all the photographic processing. Absolutely nobody accesses your files during local processing.',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
question: 'Why PNG over JPEG in this case?',
|
|
35
|
-
answer:
|
|
36
|
-
'If you have a BMP file, it is because the image has precise colors. Converting a BMP to the destructive JPG standard would dirty your clean colors. PNG protects that fidelity.',
|
|
37
|
-
},
|
|
38
|
-
];
|
|
39
|
-
|
|
40
|
-
const howTo: BmpAPngLocaleContent['howTo'] = [
|
|
41
|
-
{
|
|
42
|
-
name: 'Load your photo',
|
|
43
|
-
text: 'Calmly move the BMP source files to our web element drop zone.',
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
name: 'Translate without network transmission',
|
|
47
|
-
text: 'Experience in just one second the clean processing done locally by your HTML5 JS.',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: 'Get pure PNGs',
|
|
51
|
-
text: 'Download the PNG replicas individually or via a compressed package.',
|
|
52
|
-
},
|
|
53
|
-
];
|
|
54
|
-
|
|
55
|
-
const seo: BmpAPngLocaleContent['seo'] = [
|
|
56
|
-
{
|
|
57
|
-
type: 'title',
|
|
58
|
-
text: 'BMP to PNG Converter: The Lossless Replacement for BMP Files',
|
|
59
|
-
level: 2,
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
type: 'paragraph',
|
|
63
|
-
html: 'BMP is an uncompressed format that occupies enormous amounts of space with no technical benefit over PNG. Both are lossless formats: they store every pixel with absolute precision. But PNG adds lossless compression via the Deflate algorithm, reducing file size by 3 to 5 times without sacrificing a single bit of visual information. PNG is, in essence, what BMP always wanted to be.',
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
type: 'title',
|
|
67
|
-
text: 'BMP vs PNG: same quality, radically different file size',
|
|
68
|
-
level: 3,
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
type: 'paragraph',
|
|
72
|
-
html: 'The fundamental difference between BMP and PNG is not image quality - both are lossless - but storage efficiency. BMP stores pixels raw: no compression, no optimization, no consideration for space. PNG analyzes repeated pixel patterns and encodes them compactly using Deflate, the same algorithm used by ZIP.',
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
type: 'paragraph',
|
|
76
|
-
html: 'Beyond superior compression, PNG adds a feature BMP never had: full alpha channel for transparency. Screenshots, UI graphics, logos, technical diagrams - all these image types benefit enormously from conversion to PNG, which preserves every exact color value while reducing file weight to a fraction of the original.',
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
type: 'title',
|
|
80
|
-
text: 'Architecture Comparison: Local vs Cloud',
|
|
81
|
-
level: 3,
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
type: 'comparative',
|
|
85
|
-
items: [
|
|
86
|
-
{
|
|
87
|
-
title: 'Cloud Converters',
|
|
88
|
-
description: 'Services that process your BMP files on third-party servers.',
|
|
89
|
-
icon: 'mdi:cloud-upload',
|
|
90
|
-
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
-
points: [
|
|
92
|
-
'Your work images travel over the internet',
|
|
93
|
-
'Waiting time proportional to the BMP size',
|
|
94
|
-
'Size limits in free plans',
|
|
95
|
-
'Risk of analysis or retention of your files',
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
title: 'Our Local Architecture',
|
|
100
|
-
description: 'Direct processing on your hardware using Vanilla JS technology.',
|
|
101
|
-
icon: 'mdi:laptop-mac',
|
|
102
|
-
highlight: true,
|
|
103
|
-
points: [
|
|
104
|
-
'BMP is processed locally, never leaves your device',
|
|
105
|
-
'Instant conversion in milliseconds',
|
|
106
|
-
'No size or file count limits',
|
|
107
|
-
'Total privacy: 0 bytes sent externally',
|
|
108
|
-
],
|
|
109
|
-
},
|
|
110
|
-
],
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
type: 'title',
|
|
114
|
-
text: 'How the local BMP to PNG conversion works',
|
|
115
|
-
level: 3,
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
type: 'paragraph',
|
|
119
|
-
html: 'The process uses the HTML5 Canvas API. The BMP file is read with the browser\'s <code>FileReader</code> API and decoded as a Blob in memory. That Blob is drawn onto an invisible HTML5 canvas. Then the <code>toDataURL(\'image/png\')</code> method applies the browser\'s native PNG compression algorithm and generates the resulting file.',
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
type: 'paragraph',
|
|
123
|
-
html: 'Unlike JPG conversion, PNG conversion is completely lossless: every color value from the original BMP is preserved exactly in the resulting PNG. No artifacts, no edge smoothing, no information loss. The final file is visually identical to the BMP but takes 3 to 5 times less disk space.',
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
type: 'tip',
|
|
127
|
-
title: 'PNG is the modern standard for everywhere BMP was used',
|
|
128
|
-
html: 'If you work with legacy software that exports BMP (industrial machinery, control systems, medical diagnostic software), converting to PNG is the best decision. PNG is compatible with every modern application, maintains perfect color fidelity, and takes up to 5 times less space. It is the simplest and safest migration possible.',
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
type: 'title',
|
|
132
|
-
text: 'Use cases and compatibility of the resulting PNG',
|
|
133
|
-
level: 3,
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
type: 'list',
|
|
137
|
-
icon: 'mdi:check-circle',
|
|
138
|
-
items: [
|
|
139
|
-
'Screenshots and UI graphics with exact colors preserved.',
|
|
140
|
-
'Technical documentation images and software diagrams.',
|
|
141
|
-
'Exports from CAD, industrial systems and legacy software.',
|
|
142
|
-
'Logos and brand identity elements with added transparency support.',
|
|
143
|
-
'Compatible with Adobe Photoshop, GIMP, Figma and all modern editors.',
|
|
144
|
-
],
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
type: 'title',
|
|
148
|
-
text: 'Conclusion: PNG is what BMP always should have been',
|
|
149
|
-
level: 3,
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
type: 'paragraph',
|
|
153
|
-
html: 'Converting BMP to PNG is the most natural modernization of an image file: same lossless quality, greater compatibility, transparency support, and 3 to 5 times less weight. Our tool performs this conversion in milliseconds, directly in your browser, without uploading any file to any server.',
|
|
154
|
-
},
|
|
155
|
-
];
|
|
156
|
-
|
|
18
|
+
bibliographyTitle: 'Bibliographic References',
|
|
19
|
+
faqTitle: 'Frequently Asked Questions',
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const faq: BmpAPngLocaleContent['faq'] = [
|
|
23
|
+
{
|
|
24
|
+
question: 'What is the main difference between BMP and PNG?',
|
|
25
|
+
answer:
|
|
26
|
+
'Both BMP and PNG are lossless formats. The difference lies in optimization: PNG uses modern compression algorithms to store the same image taking up 5 to 10 times less memory than BMP.',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
question: 'Is the conversion truly private?',
|
|
30
|
+
answer:
|
|
31
|
+
'Yes. Your computer handles all the photographic processing. Absolutely nobody accesses your files during local processing.',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
question: 'Why PNG over JPEG in this case?',
|
|
35
|
+
answer:
|
|
36
|
+
'If you have a BMP file, it is because the image has precise colors. Converting a BMP to the destructive JPG standard would dirty your clean colors. PNG protects that fidelity.',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
const howTo: BmpAPngLocaleContent['howTo'] = [
|
|
41
|
+
{
|
|
42
|
+
name: 'Load your photo',
|
|
43
|
+
text: 'Calmly move the BMP source files to our web element drop zone.',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'Translate without network transmission',
|
|
47
|
+
text: 'Experience in just one second the clean processing done locally by your HTML5 JS.',
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
name: 'Get pure PNGs',
|
|
51
|
+
text: 'Download the PNG replicas individually or via a compressed package.',
|
|
52
|
+
},
|
|
53
|
+
];
|
|
54
|
+
|
|
55
|
+
const seo: BmpAPngLocaleContent['seo'] = [
|
|
56
|
+
{
|
|
57
|
+
type: 'title',
|
|
58
|
+
text: 'BMP to PNG Converter: The Lossless Replacement for BMP Files',
|
|
59
|
+
level: 2,
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'paragraph',
|
|
63
|
+
html: 'BMP is an uncompressed format that occupies enormous amounts of space with no technical benefit over PNG. Both are lossless formats: they store every pixel with absolute precision. But PNG adds lossless compression via the Deflate algorithm, reducing file size by 3 to 5 times without sacrificing a single bit of visual information. PNG is, in essence, what BMP always wanted to be.',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
type: 'title',
|
|
67
|
+
text: 'BMP vs PNG: same quality, radically different file size',
|
|
68
|
+
level: 3,
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'paragraph',
|
|
72
|
+
html: 'The fundamental difference between BMP and PNG is not image quality - both are lossless - but storage efficiency. BMP stores pixels raw: no compression, no optimization, no consideration for space. PNG analyzes repeated pixel patterns and encodes them compactly using Deflate, the same algorithm used by ZIP.',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: 'paragraph',
|
|
76
|
+
html: 'Beyond superior compression, PNG adds a feature BMP never had: full alpha channel for transparency. Screenshots, UI graphics, logos, technical diagrams - all these image types benefit enormously from conversion to PNG, which preserves every exact color value while reducing file weight to a fraction of the original.',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
type: 'title',
|
|
80
|
+
text: 'Architecture Comparison: Local vs Cloud',
|
|
81
|
+
level: 3,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: 'comparative',
|
|
85
|
+
items: [
|
|
86
|
+
{
|
|
87
|
+
title: 'Cloud Converters',
|
|
88
|
+
description: 'Services that process your BMP files on third-party servers.',
|
|
89
|
+
icon: 'mdi:cloud-upload',
|
|
90
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
+
points: [
|
|
92
|
+
'Your work images travel over the internet',
|
|
93
|
+
'Waiting time proportional to the BMP size',
|
|
94
|
+
'Size limits in free plans',
|
|
95
|
+
'Risk of analysis or retention of your files',
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
title: 'Our Local Architecture',
|
|
100
|
+
description: 'Direct processing on your hardware using Vanilla JS technology.',
|
|
101
|
+
icon: 'mdi:laptop-mac',
|
|
102
|
+
highlight: true,
|
|
103
|
+
points: [
|
|
104
|
+
'BMP is processed locally, never leaves your device',
|
|
105
|
+
'Instant conversion in milliseconds',
|
|
106
|
+
'No size or file count limits',
|
|
107
|
+
'Total privacy: 0 bytes sent externally',
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: 'How the local BMP to PNG conversion works',
|
|
115
|
+
level: 3,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'paragraph',
|
|
119
|
+
html: 'The process uses the HTML5 Canvas API. The BMP file is read with the browser\'s <code>FileReader</code> API and decoded as a Blob in memory. That Blob is drawn onto an invisible HTML5 canvas. Then the <code>toDataURL(\'image/png\')</code> method applies the browser\'s native PNG compression algorithm and generates the resulting file.',
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'paragraph',
|
|
123
|
+
html: 'Unlike JPG conversion, PNG conversion is completely lossless: every color value from the original BMP is preserved exactly in the resulting PNG. No artifacts, no edge smoothing, no information loss. The final file is visually identical to the BMP but takes 3 to 5 times less disk space.',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'tip',
|
|
127
|
+
title: 'PNG is the modern standard for everywhere BMP was used',
|
|
128
|
+
html: 'If you work with legacy software that exports BMP (industrial machinery, control systems, medical diagnostic software), converting to PNG is the best decision. PNG is compatible with every modern application, maintains perfect color fidelity, and takes up to 5 times less space. It is the simplest and safest migration possible.',
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'title',
|
|
132
|
+
text: 'Use cases and compatibility of the resulting PNG',
|
|
133
|
+
level: 3,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'list',
|
|
137
|
+
icon: 'mdi:check-circle',
|
|
138
|
+
items: [
|
|
139
|
+
'Screenshots and UI graphics with exact colors preserved.',
|
|
140
|
+
'Technical documentation images and software diagrams.',
|
|
141
|
+
'Exports from CAD, industrial systems and legacy software.',
|
|
142
|
+
'Logos and brand identity elements with added transparency support.',
|
|
143
|
+
'Compatible with Adobe Photoshop, GIMP, Figma and all modern editors.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Conclusion: PNG is what BMP always should have been',
|
|
149
|
+
level: 3,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'paragraph',
|
|
153
|
+
html: 'Converting BMP to PNG is the most natural modernization of an image file: same lossless quality, greater compatibility, transparency support, and 3 to 5 times less weight. Our tool performs this conversion in milliseconds, directly in your browser, without uploading any file to any server.',
|
|
154
|
+
},
|
|
155
|
+
];
|
|
157
156
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}
|
|
157
|
+
|
|
158
|
+
export const content: BmpAPngLocaleContent = {
|
|
159
|
+
slug,
|
|
160
|
+
title,
|
|
161
|
+
description,
|
|
162
|
+
ui,
|
|
163
|
+
seo,
|
|
164
|
+
faq,
|
|
165
|
+
bibliography,
|
|
166
|
+
howTo,
|
|
167
|
+
schemas: generateSchemas({ title, description, inLanguage: 'en', faq, howTo }),
|
|
168
|
+
};
|