@jjlmoya/utils-audiovisual 1.6.0 → 1.8.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 +59 -58
- package/src/category/i18n/de.ts +198 -0
- package/src/category/i18n/fr.ts +1 -1
- package/src/category/i18n/id.ts +198 -0
- package/src/category/i18n/it.ts +198 -0
- package/src/category/i18n/ja.ts +198 -0
- package/src/category/i18n/ko.ts +198 -0
- package/src/category/i18n/nl.ts +198 -0
- package/src/category/i18n/pl.ts +198 -0
- package/src/category/i18n/pt.ts +198 -0
- package/src/category/i18n/ru.ts +198 -0
- package/src/category/i18n/sv.ts +198 -0
- package/src/category/i18n/tr.ts +198 -0
- package/src/category/i18n/zh.ts +198 -0
- package/src/category/index.ts +31 -3
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/schemas_fulfillment.test.ts +23 -0
- package/src/tests/title_quality.test.ts +55 -0
- package/src/tool/chromaticLens/i18n/de.ts +246 -0
- package/src/tool/chromaticLens/i18n/en.ts +1 -1
- package/src/tool/chromaticLens/i18n/es.ts +1 -1
- package/src/tool/chromaticLens/i18n/fr.ts +1 -1
- package/src/tool/chromaticLens/i18n/id.ts +246 -0
- package/src/tool/chromaticLens/i18n/it.ts +246 -0
- package/src/tool/chromaticLens/i18n/ja.ts +246 -0
- package/src/tool/chromaticLens/i18n/ko.ts +246 -0
- package/src/tool/chromaticLens/i18n/nl.ts +246 -0
- package/src/tool/chromaticLens/i18n/pl.ts +246 -0
- package/src/tool/chromaticLens/i18n/pt.ts +246 -0
- package/src/tool/chromaticLens/i18n/ru.ts +246 -0
- package/src/tool/chromaticLens/i18n/sv.ts +246 -0
- package/src/tool/chromaticLens/i18n/tr.ts +246 -0
- package/src/tool/chromaticLens/i18n/zh.ts +246 -0
- package/src/tool/chromaticLens/index.ts +15 -7
- package/src/tool/collageMaker/i18n/de.ts +233 -0
- package/src/tool/collageMaker/i18n/en.ts +1 -1
- package/src/tool/collageMaker/i18n/es.ts +1 -1
- package/src/tool/collageMaker/i18n/fr.ts +1 -1
- package/src/tool/collageMaker/i18n/id.ts +233 -0
- package/src/tool/collageMaker/i18n/it.ts +233 -0
- package/src/tool/collageMaker/i18n/ja.ts +233 -0
- package/src/tool/collageMaker/i18n/ko.ts +233 -0
- package/src/tool/collageMaker/i18n/nl.ts +233 -0
- package/src/tool/collageMaker/i18n/pl.ts +233 -0
- package/src/tool/collageMaker/i18n/pt.ts +233 -0
- package/src/tool/collageMaker/i18n/ru.ts +233 -0
- package/src/tool/collageMaker/i18n/sv.ts +233 -0
- package/src/tool/collageMaker/i18n/tr.ts +233 -0
- package/src/tool/collageMaker/i18n/zh.ts +233 -0
- package/src/tool/collageMaker/index.ts +15 -6
- package/src/tool/exifCleaner/i18n/de.ts +277 -0
- package/src/tool/exifCleaner/i18n/en.ts +2 -2
- package/src/tool/exifCleaner/i18n/es.ts +2 -2
- package/src/tool/exifCleaner/i18n/fr.ts +4 -4
- package/src/tool/exifCleaner/i18n/id.ts +277 -0
- package/src/tool/exifCleaner/i18n/it.ts +277 -0
- package/src/tool/exifCleaner/i18n/ja.ts +277 -0
- package/src/tool/exifCleaner/i18n/ko.ts +277 -0
- package/src/tool/exifCleaner/i18n/nl.ts +277 -0
- package/src/tool/exifCleaner/i18n/pl.ts +277 -0
- package/src/tool/exifCleaner/i18n/pt.ts +277 -0
- package/src/tool/exifCleaner/i18n/ru.ts +277 -0
- package/src/tool/exifCleaner/i18n/sv.ts +277 -0
- package/src/tool/exifCleaner/i18n/tr.ts +277 -0
- package/src/tool/exifCleaner/i18n/zh.ts +277 -0
- package/src/tool/exifCleaner/index.ts +16 -8
- package/src/tool/imageCompressor/i18n/de.ts +242 -0
- package/src/tool/imageCompressor/i18n/en.ts +2 -2
- package/src/tool/imageCompressor/i18n/es.ts +2 -2
- package/src/tool/imageCompressor/i18n/id.ts +242 -0
- package/src/tool/imageCompressor/i18n/it.ts +242 -0
- package/src/tool/imageCompressor/i18n/ja.ts +242 -0
- package/src/tool/imageCompressor/i18n/ko.ts +242 -0
- package/src/tool/imageCompressor/i18n/nl.ts +242 -0
- package/src/tool/imageCompressor/i18n/pl.ts +242 -0
- package/src/tool/imageCompressor/i18n/pt.ts +242 -0
- package/src/tool/imageCompressor/i18n/ru.ts +242 -0
- package/src/tool/imageCompressor/i18n/sv.ts +242 -0
- package/src/tool/imageCompressor/i18n/tr.ts +242 -0
- package/src/tool/imageCompressor/i18n/zh.ts +244 -0
- package/src/tool/imageCompressor/index.ts +15 -7
- package/src/tool/printQualityCalculator/i18n/de.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/en.ts +2 -2
- package/src/tool/printQualityCalculator/i18n/es.ts +3 -3
- package/src/tool/printQualityCalculator/i18n/fr.ts +3 -3
- package/src/tool/printQualityCalculator/i18n/id.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/it.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/ja.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/ko.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/nl.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/pl.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/pt.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/ru.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/sv.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/tr.ts +261 -0
- package/src/tool/printQualityCalculator/i18n/zh.ts +261 -0
- package/src/tool/printQualityCalculator/index.ts +15 -7
- package/src/tool/privacyBlur/i18n/de.ts +238 -0
- package/src/tool/privacyBlur/i18n/en.ts +1 -1
- package/src/tool/privacyBlur/i18n/es.ts +1 -1
- package/src/tool/privacyBlur/i18n/fr.ts +1 -1
- package/src/tool/privacyBlur/i18n/id.ts +238 -0
- package/src/tool/privacyBlur/i18n/it.ts +238 -0
- package/src/tool/privacyBlur/i18n/ja.ts +238 -0
- package/src/tool/privacyBlur/i18n/ko.ts +238 -0
- package/src/tool/privacyBlur/i18n/nl.ts +238 -0
- package/src/tool/privacyBlur/i18n/pl.ts +238 -0
- package/src/tool/privacyBlur/i18n/pt.ts +238 -0
- package/src/tool/privacyBlur/i18n/ru.ts +238 -0
- package/src/tool/privacyBlur/i18n/sv.ts +238 -0
- package/src/tool/privacyBlur/i18n/tr.ts +238 -0
- package/src/tool/privacyBlur/i18n/zh.ts +238 -0
- package/src/tool/privacyBlur/index.ts +15 -7
- package/src/tool/subtitleSync/i18n/de.ts +241 -0
- package/src/tool/subtitleSync/i18n/en.ts +1 -1
- package/src/tool/subtitleSync/i18n/es.ts +1 -1
- package/src/tool/subtitleSync/i18n/fr.ts +8 -8
- package/src/tool/subtitleSync/i18n/id.ts +241 -0
- package/src/tool/subtitleSync/i18n/it.ts +241 -0
- package/src/tool/subtitleSync/i18n/ja.ts +241 -0
- package/src/tool/subtitleSync/i18n/ko.ts +241 -0
- package/src/tool/subtitleSync/i18n/nl.ts +241 -0
- package/src/tool/subtitleSync/i18n/pl.ts +241 -0
- package/src/tool/subtitleSync/i18n/pt.ts +241 -0
- package/src/tool/subtitleSync/i18n/ru.ts +241 -0
- package/src/tool/subtitleSync/i18n/sv.ts +241 -0
- package/src/tool/subtitleSync/i18n/tr.ts +241 -0
- package/src/tool/subtitleSync/i18n/zh.ts +241 -0
- package/src/tool/subtitleSync/index.ts +15 -7
- package/src/tool/timelapseCalculator/i18n/de.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/fr.ts +2 -2
- package/src/tool/timelapseCalculator/i18n/id.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/it.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/ja.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/ko.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/nl.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/pl.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/pt.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/ru.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/sv.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/tr.ts +169 -0
- package/src/tool/timelapseCalculator/i18n/zh.ts +169 -0
- package/src/tool/timelapseCalculator/index.ts +16 -8
- package/src/tool/tvDistance/i18n/de.ts +223 -0
- package/src/tool/tvDistance/i18n/en.ts +1 -1
- package/src/tool/tvDistance/i18n/es.ts +1 -1
- package/src/tool/tvDistance/i18n/fr.ts +1 -1
- package/src/tool/tvDistance/i18n/id.ts +223 -0
- package/src/tool/tvDistance/i18n/it.ts +223 -0
- package/src/tool/tvDistance/i18n/ja.ts +223 -0
- package/src/tool/tvDistance/i18n/ko.ts +223 -0
- package/src/tool/tvDistance/i18n/nl.ts +223 -0
- package/src/tool/tvDistance/i18n/pl.ts +223 -0
- package/src/tool/tvDistance/i18n/pt.ts +223 -0
- package/src/tool/tvDistance/i18n/ru.ts +223 -0
- package/src/tool/tvDistance/i18n/sv.ts +223 -0
- package/src/tool/tvDistance/i18n/tr.ts +223 -0
- package/src/tool/tvDistance/i18n/zh.ts +223 -0
- package/src/tool/tvDistance/index.ts +15 -7
- package/src/tool/videoFrameExtractor/i18n/de.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/en.ts +1 -1
- package/src/tool/videoFrameExtractor/i18n/es.ts +1 -1
- package/src/tool/videoFrameExtractor/i18n/fr.ts +1 -1
- package/src/tool/videoFrameExtractor/i18n/id.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/it.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/ja.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/ko.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/nl.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/pl.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/pt.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/ru.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/sv.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/tr.ts +235 -0
- package/src/tool/videoFrameExtractor/i18n/zh.ts +235 -0
- package/src/tool/videoFrameExtractor/index.ts +16 -8
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { CollageMakerUI, CollageMakerLocaleContent } from '../index';
|
|
3
|
+
|
|
4
|
+
const slug = 'free-online-photo-collage-maker-professional-compositions';
|
|
5
|
+
const title = '在线拼图制作:设计专业拼贴构图';
|
|
6
|
+
const description = '在几秒钟内免费创建照片拼贴。从多种布局中选择,调整边框,并下载无水印的高质量图片。';
|
|
7
|
+
|
|
8
|
+
const ui: CollageMakerUI = {
|
|
9
|
+
dropTitle: "将图像拖到此处",
|
|
10
|
+
dropSub: "或 {link} - 最少2张,最多9张",
|
|
11
|
+
dropLink: "选择文件",
|
|
12
|
+
imgsLoaded: "已加载图像",
|
|
13
|
+
layoutLabel: "布局",
|
|
14
|
+
settingsLabel: "设置",
|
|
15
|
+
borderLabel: "边框",
|
|
16
|
+
borderColorLabel: "边框颜色",
|
|
17
|
+
bgColorLabel: "背景",
|
|
18
|
+
downloadBtn: "下载",
|
|
19
|
+
previewTitle: "预览",
|
|
20
|
+
needsImgs: "您还需要 {n} 张图像",
|
|
21
|
+
errorMin: "您至少需要 2 张图像",
|
|
22
|
+
errorMax: "最多允许 9 张图像",
|
|
23
|
+
errorLoad: "加载图像时出错",
|
|
24
|
+
faqTitle: "常见问题",
|
|
25
|
+
bibliographyTitle: "参考资料"
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const faq: CollageMakerLocaleContent['faq'] = [
|
|
29
|
+
{
|
|
30
|
+
question: "如何更改照片的顺序?",
|
|
31
|
+
answer: "照片根据在加载图像列表中出现的顺序排列在拼图中。您可以删除一张照片并重新上传以调整其位置。",
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
question: "拼图的输出格式是什么?",
|
|
35
|
+
answer: "拼图将以高分辨率 WebP 格式下载,非常适合在社交网络上分享而不损失清晰度。",
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: CollageMakerLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: "上传您的照片",
|
|
42
|
+
text: "从您的文件浏览器中选择 2 到 9 张图像。",
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: "选择布局",
|
|
46
|
+
text: "选择最适合您上传照片数量的网格。",
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: "自定义样式",
|
|
50
|
+
text: "调整边框粗细和颜色以获得专业的视觉效果。",
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: "下载并分享",
|
|
54
|
+
text: "点击创建按钮并立即下载您的最终作品。",
|
|
55
|
+
},
|
|
56
|
+
];
|
|
57
|
+
|
|
58
|
+
const bibliography: CollageMakerLocaleContent['bibliography'] = [
|
|
59
|
+
{
|
|
60
|
+
name: "摄影构图:拼贴的艺术",
|
|
61
|
+
url: "https://zh.wikipedia.org/wiki/%E5%89%AA%E8%B4%B4%E7%94%BB",
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: CollageMakerLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'summary',
|
|
68
|
+
title: '专业在线拼图制作工具',
|
|
69
|
+
items: [
|
|
70
|
+
'多种布局和预定义网格',
|
|
71
|
+
'自定义边框和背景颜色',
|
|
72
|
+
'适合社交网络的 1200px 高分辨率',
|
|
73
|
+
'无使用限制的即时处理'
|
|
74
|
+
]
|
|
75
|
+
},
|
|
76
|
+
{ type: 'title', text: '拼贴设计:讲述故事的构图', level: 2 },
|
|
77
|
+
{ type: 'paragraph', html: '拼贴不仅仅是照片的混合,它是一种传达情感和语境的视觉叙事。我们的工具允许您为 Instagram、Facebook、Pinterest 或个人项目创建专业的几何构图,无需 Photoshop 或昂贵的软件。' },
|
|
78
|
+
|
|
79
|
+
{ type: 'stats', items: [
|
|
80
|
+
{ value: '2-9', label: '每图数量', icon: 'mdi:image-multiple' },
|
|
81
|
+
{ value: '1200px', label: 'HD 分辨率', icon: 'mdi:video-high-definition' },
|
|
82
|
+
{ value: '即时', label: '生成', icon: 'mdi:lightning-bolt' }
|
|
83
|
+
], columns: 3 },
|
|
84
|
+
|
|
85
|
+
{ type: 'title', text: '视觉构图:设计原则', level: 3 },
|
|
86
|
+
{ type: 'paragraph', html: '构图是一种组织视觉元素的艺术,旨在引导观众的视线并传达意图。出色的拼图需要平衡:' },
|
|
87
|
+
{ type: 'list', items: [
|
|
88
|
+
'<strong>平衡:</strong> 视觉重量的分布(明亮与阴暗图像、大图与小图)。',
|
|
89
|
+
'<strong>视觉流:</strong> 视线应自然地穿过构图,没有死角。',
|
|
90
|
+
'<strong>对比:</strong> 颜色、大小和形状的变化,以吸引注意力。',
|
|
91
|
+
'<strong>统一:</strong> 主题连贯性——图像必须“共同讲述”同一个故事。'
|
|
92
|
+
], icon: 'mdi:check' },
|
|
93
|
+
|
|
94
|
+
{ type: 'card', title: '智能自适应设计', html: '我们的系统根据照片数量自动计算最佳空间分布。2 张图像 = 对称网格;5 张图像 = 平衡的非对称分布。每个网格都旨在最大化视觉冲击力。' },
|
|
95
|
+
|
|
96
|
+
{ type: 'comparative', items: [
|
|
97
|
+
{
|
|
98
|
+
title: '用于社交网络',
|
|
99
|
+
description: 'Instagram、TikTok、Facebook - 正方形格式',
|
|
100
|
+
icon: 'mdi:share-all',
|
|
101
|
+
points: [
|
|
102
|
+
'1200px 是 Instagram Feed 的理想选择',
|
|
103
|
+
'正方形格式可避免发布时被裁剪',
|
|
104
|
+
'可自定义边框以进行品牌推广'
|
|
105
|
+
],
|
|
106
|
+
highlight: true
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: '用于作品集',
|
|
110
|
+
description: '摄影师和设计师的视觉展示',
|
|
111
|
+
icon: 'mdi:briefcase-outline',
|
|
112
|
+
points: [
|
|
113
|
+
'展示项目的多个角度',
|
|
114
|
+
'具有凝聚力的视觉叙事',
|
|
115
|
+
'专业的数字画册打印'
|
|
116
|
+
]
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
title: '用于个人礼物',
|
|
120
|
+
description: '照片冲印、相框和数字相册',
|
|
121
|
+
icon: 'mdi:gift-outline',
|
|
122
|
+
points: [
|
|
123
|
+
'活动记忆(婚礼、旅行)',
|
|
124
|
+
'适合打印的高分辨率',
|
|
125
|
+
'无需手动操作的即时设计'
|
|
126
|
+
]
|
|
127
|
+
}
|
|
128
|
+
], columns: 3 },
|
|
129
|
+
|
|
130
|
+
{ type: 'title', text: '自定义:边框和颜色', level: 3 },
|
|
131
|
+
{ type: 'table', headers: ['元素', '视觉效果', '建议'], rows: [
|
|
132
|
+
['白色边框', '简洁、极简、现代', '社交网络、数字作品集'],
|
|
133
|
+
['黑色边框', '戏剧性、专业、艺术感', '艺术摄影、时尚、奢侈品'],
|
|
134
|
+
['中性边框(灰色)', '多功能、学术、商业', '商务、教育、中性感'],
|
|
135
|
+
['无边框', '融合、连续、沉浸感', '统一背景、流动的照片']
|
|
136
|
+
] },
|
|
137
|
+
|
|
138
|
+
{ type: 'proscons', items: [
|
|
139
|
+
{
|
|
140
|
+
pro: '专业的预定义设计 - 无需构图知识',
|
|
141
|
+
con: '选项限于预置网格'
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
pro: '无需缩放即可直接用于社交网络的 1200px 分辨率',
|
|
145
|
+
con: '不像 Photoshop 那样可高度自定义'
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
pro: '100% 本地处理 - 隐私、快速、无限制',
|
|
149
|
+
con: '需要现代浏览器'
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
pro: '完全免费,无水印,无广告',
|
|
153
|
+
con: '没有单个图像编辑选项(裁剪、旋转)'
|
|
154
|
+
}
|
|
155
|
+
], proTitle: '优势', conTitle: '局限性' },
|
|
156
|
+
|
|
157
|
+
{ type: 'diagnostic', variant: 'success', title: '为社交网络做好准备', icon: 'mdi:check-circle-outline', badge: '已优化', html: '1200x1200px 是 Instagram 最理想的分辨率。它支持任何长宽比,但正方形输出最大限度地提高了 Feed 的影响力,消除了自动裁剪,并且在桌面、平板电脑和移动设备上看起来都很棒。' },
|
|
158
|
+
|
|
159
|
+
{ type: 'glossary', items: [
|
|
160
|
+
{
|
|
161
|
+
term: '视觉构图',
|
|
162
|
+
definition: '通过组织元素(色彩、形状、空间)来引导观众视线并传达情感意图的艺术。'
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
term: '三分法',
|
|
166
|
+
definition: '构图原则:将图像分为 9 个相等的区域(3x3)。将主体置于交点线上以获得最大冲击力。'
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
term: '对称网格',
|
|
170
|
+
definition: '等空间划分。令人安心且有序。非常适合成对照片或偶数照片。'
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
term: '非对称网格',
|
|
174
|
+
definition: '不等划分。动感、有趣且具有视觉效果。非常适合 5 张以上大小不一的照片。'
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
term: '视觉平衡',
|
|
178
|
+
definition: '视觉重量的感知平衡。明亮与阴暗图像的平衡,大与小的平衡。'
|
|
179
|
+
}
|
|
180
|
+
] },
|
|
181
|
+
|
|
182
|
+
{ type: 'message', title: '即时视觉叙事', ariaLabel: '关于构图和拼贴的信息', html: '每一张拼图都在讲述一个故事。我们的自动设计器确保您的视觉故事达到平衡、专业并随时向世界发布。无需等待平面设计师完成工作。' },
|
|
183
|
+
|
|
184
|
+
{ type: 'title', text: '创造、分享、鼓舞', level: 3 },
|
|
185
|
+
{ type: 'paragraph', html: '一张制作精良的拼图,决定了一个发布是转瞬即逝还是被粉丝记住并分享。在您的视觉故事中使用智能构图,产生持久冲击。' }
|
|
186
|
+
];
|
|
187
|
+
|
|
188
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
189
|
+
'@context': 'https://schema.org',
|
|
190
|
+
'@type': 'FAQPage',
|
|
191
|
+
mainEntity: faq.map((item) => ({
|
|
192
|
+
'@type': 'Question',
|
|
193
|
+
name: item.question,
|
|
194
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
195
|
+
})),
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
const howToSchema: WithContext<HowTo> = {
|
|
199
|
+
'@context': 'https://schema.org',
|
|
200
|
+
'@type': 'HowTo',
|
|
201
|
+
name: title,
|
|
202
|
+
description,
|
|
203
|
+
step: howTo.map((step) => ({
|
|
204
|
+
'@type': 'HowToStep',
|
|
205
|
+
name: step.name,
|
|
206
|
+
text: step.text,
|
|
207
|
+
})),
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
211
|
+
'@context': 'https://schema.org',
|
|
212
|
+
'@type': 'SoftwareApplication',
|
|
213
|
+
name: title,
|
|
214
|
+
description,
|
|
215
|
+
applicationCategory: 'UtilitiesApplication',
|
|
216
|
+
operatingSystem: 'Web',
|
|
217
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
218
|
+
inLanguage: 'zh',
|
|
219
|
+
};
|
|
220
|
+
|
|
221
|
+
export const content: CollageMakerLocaleContent = {
|
|
222
|
+
slug,
|
|
223
|
+
title,
|
|
224
|
+
description,
|
|
225
|
+
ui,
|
|
226
|
+
seo,
|
|
227
|
+
faqTitle: "常见问题",
|
|
228
|
+
faq,
|
|
229
|
+
bibliographyTitle: "参考资料",
|
|
230
|
+
bibliography,
|
|
231
|
+
howTo,
|
|
232
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema],
|
|
233
|
+
};
|
|
@@ -24,9 +24,6 @@ export interface CollageMakerUI {
|
|
|
24
24
|
|
|
25
25
|
export type CollageMakerLocaleContent = ToolLocaleContent<CollageMakerUI>;
|
|
26
26
|
|
|
27
|
-
import { content as es } from './i18n/es';
|
|
28
|
-
import { content as en } from './i18n/en';
|
|
29
|
-
import { content as fr } from './i18n/fr';
|
|
30
27
|
|
|
31
28
|
export const collageMaker: AudiovisualToolEntry<CollageMakerUI> = {
|
|
32
29
|
id: 'creador-collage-fotos',
|
|
@@ -35,9 +32,21 @@ export const collageMaker: AudiovisualToolEntry<CollageMakerUI> = {
|
|
|
35
32
|
fg: 'mdi:palette-outline',
|
|
36
33
|
},
|
|
37
34
|
i18n: {
|
|
38
|
-
es: async () => es as unknown as CollageMakerLocaleContent,
|
|
39
|
-
en: async () => en as unknown as CollageMakerLocaleContent,
|
|
40
|
-
fr: async () => fr as unknown as CollageMakerLocaleContent,
|
|
35
|
+
es: async () => (await import('./i18n/es')).content as unknown as CollageMakerLocaleContent,
|
|
36
|
+
en: async () => (await import('./i18n/en')).content as unknown as CollageMakerLocaleContent,
|
|
37
|
+
fr: async () => (await import('./i18n/fr')).content as unknown as CollageMakerLocaleContent,
|
|
38
|
+
de: async () => (await import('./i18n/de')).content as unknown as CollageMakerLocaleContent,
|
|
39
|
+
it: async () => (await import('./i18n/it')).content as unknown as CollageMakerLocaleContent,
|
|
40
|
+
pt: async () => (await import('./i18n/pt')).content as unknown as CollageMakerLocaleContent,
|
|
41
|
+
id: async () => (await import('./i18n/id')).content as unknown as CollageMakerLocaleContent,
|
|
42
|
+
ja: async () => (await import('./i18n/ja')).content as unknown as CollageMakerLocaleContent,
|
|
43
|
+
ko: async () => (await import('./i18n/ko')).content as unknown as CollageMakerLocaleContent,
|
|
44
|
+
nl: async () => (await import('./i18n/nl')).content as unknown as CollageMakerLocaleContent,
|
|
45
|
+
pl: async () => (await import('./i18n/pl')).content as unknown as CollageMakerLocaleContent,
|
|
46
|
+
ru: async () => (await import('./i18n/ru')).content as unknown as CollageMakerLocaleContent,
|
|
47
|
+
sv: async () => (await import('./i18n/sv')).content as unknown as CollageMakerLocaleContent,
|
|
48
|
+
tr: async () => (await import('./i18n/tr')).content as unknown as CollageMakerLocaleContent,
|
|
49
|
+
zh: async () => (await import('./i18n/zh')).content as unknown as CollageMakerLocaleContent,
|
|
41
50
|
},
|
|
42
51
|
};
|
|
43
52
|
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ExifCleanerUI, ExifCleanerLocaleContent } from '../index';
|
|
3
|
+
|
|
4
|
+
const slug = 'exif-metadaten-reinigungsgeraet-gps-foto-datenschutz-entfernen';
|
|
5
|
+
const title = 'EXIF Metadaten Reiniger: GPS und versteckte Daten aus Fotos entfernen';
|
|
6
|
+
const description = 'Kostenloses Online-Tool zum Löschen von EXIF-Metadaten, GPS-Koordinaten und Kameraspezifikationen aus Ihren Bildern vor dem Teilen. 100 % privat: funktioniert ohne das Hochladen von Fotos ins Internet.';
|
|
7
|
+
|
|
8
|
+
const ui: ExifCleanerUI = {
|
|
9
|
+
dropTitle: "Ziehen Sie Ihr Bild hierher",
|
|
10
|
+
dropSubtitle: "Entfernen Sie GPS Metadaten, Kameramodell und versteckte Einstellungen.",
|
|
11
|
+
dropLocalInfo: "100 % lokale Verarbeitung. Nichts wird in die Cloud hochgeladen.",
|
|
12
|
+
selectButton: "Bild auswählen",
|
|
13
|
+
processingText: "Metadaten werden bereinigt...",
|
|
14
|
+
analysisCompleted: "Analyse abgeschlossen",
|
|
15
|
+
downloadButton: "Gereinigtes Bild herunterladen",
|
|
16
|
+
resetButton: "Weiteres Bild reinigen",
|
|
17
|
+
privacyRiskTitle: "DATENSCHUTZRIsiken ENTDECKT:",
|
|
18
|
+
gpsLabel: "GPS:",
|
|
19
|
+
gpsDetected: "ERKANNT",
|
|
20
|
+
gpsNotFound: "NICHT GEFUNDEN",
|
|
21
|
+
cameraLabel: "KAMERA:",
|
|
22
|
+
softwareLabel: "SOFTWARE:",
|
|
23
|
+
dateLabel: "DATUM:",
|
|
24
|
+
otherTechnicalDetails: "WEITERE TECHNISCHE DETAILS",
|
|
25
|
+
noMetadataFound: "Keine lesbaren EXIF-Metadaten gefunden.",
|
|
26
|
+
alreadyCleanInfo: "Das Bild ist möglicherweise bereits bereinigt.",
|
|
27
|
+
previewLabel: "Vorschau",
|
|
28
|
+
faqTitle: "Häufig gestellte Fragen zum Foto Datenschutz",
|
|
29
|
+
bibliographyTitle: "Ressourcen und technische EXIF Dokumentation",
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const faq: ExifCleanerLocaleContent['faq'] = [
|
|
33
|
+
{
|
|
34
|
+
question: "Was sind EXIF-Metadaten?",
|
|
35
|
+
answer: "EXIF (Exchangeable Image File Format) sind versteckte Informationen, die Ihre Kamera oder Ihr Telefon in jedem Foto speichert. Dazu gehören das genaue Datum, das Gerätemodell, die Aufnahmeeinstellungen (ISO, Blende) und ganz entscheidend die GPS-Koordinaten des Ortes, an dem das Foto aufgenommen wurde.",
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
question: "Ist es sicher, dieses Online-Tool zu verwenden?",
|
|
39
|
+
answer: "Ja, da die Verarbeitung zu 100 % lokal in Ihrem Browser erfolgt. Ihre Fotos werden niemals auf einen Server hochgeladen; die Reinigung findet direkt im Speicher Ihres Geräts statt, was absolute Privatsphäre garantiert.",
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
question: "Welche spezifischen Daten entfernt der Reiniger?",
|
|
43
|
+
answer: "Er löscht alle EXIF-Tags (GPS, Kameramarke, Seriennummer), IPTC (Urheberrecht, Autor) und XMP (Bearbeitungsverlauf). Ihr Bild wird 'rein' und behält nur die visuellen Pixel.",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
question: "Verliert das Bild beim Reinigen der Metadaten an Qualität?",
|
|
47
|
+
answer: "Nein. Wir entfernen nur den technischen Daten-Header der Datei. Die Bilddaten (Pixel) bleiben identisch, sodass die visuelle Qualität überhaupt nicht beeinträchtigt wird.",
|
|
48
|
+
},
|
|
49
|
+
];
|
|
50
|
+
|
|
51
|
+
const howTo: ExifCleanerLocaleContent['howTo'] = [
|
|
52
|
+
{
|
|
53
|
+
name: "Bilder auswählen",
|
|
54
|
+
text: "Ziehen Sie Ihre Fotos hierher oder wählen Sie sie aus Ihrem Dateiexplorer aus. Sie können mehrere gleichzeitig verarbeiten.",
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: "Aktuelle Daten analysieren",
|
|
58
|
+
text: "Das Tool zeigt Ihnen an, welche sensiblen Informationen es erkannt hat (z. B. 'GPS-Koordinaten erkannt').",
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: "Verarbeiten und reinigen",
|
|
62
|
+
text: "Klicken Sie auf den Reinigen Button, um sofort alle Metadaten Tags zu entfernen.",
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
name: "Sichere Fotos herunterladen",
|
|
66
|
+
text: "Speichern Sie die neuen Versionen Ihrer Bilder, die nun anonymisiert und bereit sind, sicher in sozialen Medien geteilt zu werden.",
|
|
67
|
+
},
|
|
68
|
+
];
|
|
69
|
+
|
|
70
|
+
const bibliography: ExifCleanerLocaleContent['bibliography'] = [
|
|
71
|
+
{
|
|
72
|
+
name: "Exchangeable Image File Format (EXIF) - Wikipedia",
|
|
73
|
+
url: "https://de.wikipedia.org/wiki/Exchangeable_Image_File_Format",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: "W3C - Metadaten in Bildern",
|
|
77
|
+
url: "https://www.w3.org/community/image-metadata/",
|
|
78
|
+
},
|
|
79
|
+
];
|
|
80
|
+
|
|
81
|
+
const seo: ExifCleanerLocaleContent['seo'] = [
|
|
82
|
+
{
|
|
83
|
+
type: 'summary',
|
|
84
|
+
title: 'EXIF Metadaten Reiniger: Schützen Sie Ihre Privatsphäre',
|
|
85
|
+
items: [
|
|
86
|
+
'GPS-Koordinaten und Standort sofort aus Ihren Fotos entfernen',
|
|
87
|
+
'Kameramodell, Seriennummer und technische Informationen löschen',
|
|
88
|
+
'%100 % browserbasierte Verarbeitung – Ihre Bilder verlassen niemals Ihr Gerät',
|
|
89
|
+
'Behält die visuelle Qualität bei – nur versteckte Daten werden entfernt'
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
{ type: 'title', text: 'Vollständiger Leitfaden zum Datenschutz und zu EXIF Metadaten in der digitalen Fotografie', level: 2 },
|
|
93
|
+
{ type: 'paragraph', html: 'Haben Sie sich jemals gefragt, wie viele persönliche Informationen Sie teilen, wenn Sie ein Foto in soziale Medien hochladen? EXIF-Metadaten sind wie ein <strong>unsichtbarer Fingerabdruck</strong>, der alles verraten kann, von Ihrem genauen Wohnort bis hin zum Preis Ihrer Fotoausrüstung. Dieser Leitfaden erklärt, wie Sie Ihre Privatsphäre effektiv schützen.' },
|
|
94
|
+
|
|
95
|
+
{ type: 'stats', items: [
|
|
96
|
+
{ value: '100 %', label: 'Privatsphäre – Lokale Verarbeitung', icon: 'mdi:shield-check' },
|
|
97
|
+
{ value: '0 %', label: 'Auf Servern gespeicherte Daten', icon: 'mdi:database' },
|
|
98
|
+
{ value: 'Sofort', label: 'Metadaten-Entfernung', icon: 'mdi:lightning-bolt' }
|
|
99
|
+
], columns: 3 },
|
|
100
|
+
|
|
101
|
+
{ type: 'title', text: 'Welche Informationen sind in Ihren Fotos versteckt?', level: 3 },
|
|
102
|
+
{ type: 'paragraph', html: 'Mehr als 90 % der digitalen Fotos enthalten sensible Informationen, die Ihre Sicherheit gefährden können. Hier sind alle Daten, die preisgegeben werden können:' },
|
|
103
|
+
{ type: 'list', items: [
|
|
104
|
+
'<strong>GPS-Koordinaten:</strong> Der genaue Breitengrad und Längengrad der Aufnahme (Heimatadresse, Arbeitsplatz, häufig besuchte Orte).',
|
|
105
|
+
'<strong>Geräteidentifikation:</strong> Marke, Modell und Seriennummer der Kamera oder des Smartphones (wertvolle Informationen).',
|
|
106
|
+
'<strong>Technische Einstellungen:</strong> ISO, Blende (f/), Belichtungszeit und Brennweite (ermöglicht die Identifizierung Ihrer spezifischen Ausrüstung).',
|
|
107
|
+
'<strong>Genaues Datum und Uhrzeit:</strong> Ein vollständiger Zeitplan Ihrer täglichen Aktivitäten.',
|
|
108
|
+
'<strong>Bearbeitungsverlauf:</strong> Verwendete Software, Bearbeitungssoftware und Datum der letzten Änderung.',
|
|
109
|
+
'<strong>Urheberrechtsdaten:</strong> Fotograf, Urheberrecht und persönliche Notizen.'
|
|
110
|
+
] },
|
|
111
|
+
|
|
112
|
+
{ type: 'title', text: 'Reale Sicherheitsrisiken: Anwendungsfälle', level: 3 },
|
|
113
|
+
{ type: 'comparative', items: [
|
|
114
|
+
{
|
|
115
|
+
title: 'Professionelle Fotografen',
|
|
116
|
+
description: 'Risiko des Diebstahls teurer Ausrüstung, die über die Seriennummer identifiziert wurde',
|
|
117
|
+
icon: 'mdi:camera',
|
|
118
|
+
points: [
|
|
119
|
+
'Diebe suchen nach Fotografen mit wertvoller Ausrüstung',
|
|
120
|
+
'GPS identifiziert die Heimatadresse des Besitzers',
|
|
121
|
+
'Seriennummer erleichtert den Weiterverkauf im Dark Web'
|
|
122
|
+
]
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
title: 'Eltern und Influencer',
|
|
126
|
+
description: 'Extreme Gefahr: Echtzeit-Standort von Kindern',
|
|
127
|
+
icon: 'mdi:alert',
|
|
128
|
+
points: [
|
|
129
|
+
'Täter verfolgen Standorte mittels OSINT',
|
|
130
|
+
'Täter können tägliche Routinen identifizieren',
|
|
131
|
+
'Risiko von Stalking und physischer Verfolgung'
|
|
132
|
+
],
|
|
133
|
+
highlight: true
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
title: 'Social Media Nutzer',
|
|
137
|
+
description: 'Preisgabe der persönlichen und beruflichen Privatsphäre',
|
|
138
|
+
icon: 'mdi:share-variant',
|
|
139
|
+
points: [
|
|
140
|
+
'Posten aus dem Büro verrät den Arbeitsplatz',
|
|
141
|
+
'Geolokalisierung ermöglicht Rückschlüsse auf das ungefähre Gehalt',
|
|
142
|
+
'Öffentliche Daten ermöglichen gezieltes Profiling'
|
|
143
|
+
]
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
title: 'Reisende und Nomaden',
|
|
147
|
+
description: 'Gefahr von Diebstahl in leerstehenden Häusern',
|
|
148
|
+
icon: 'mdi:map',
|
|
149
|
+
points: [
|
|
150
|
+
'Veröffentlichtes GPS weist auf leeres Haus während der Reise hin',
|
|
151
|
+
'Ausrüstungsdaten ziehen Kriminelle an',
|
|
152
|
+
'Reiseverläufe verraten Zeitpläne und Muster'
|
|
153
|
+
]
|
|
154
|
+
}
|
|
155
|
+
], columns: 2 },
|
|
156
|
+
|
|
157
|
+
{ type: 'title', text: 'Wie dieses Tool funktioniert', level: 3 },
|
|
158
|
+
{ type: 'list', items: [
|
|
159
|
+
'<strong>1. Bilder auswählen:</strong> Fotos ziehen oder den Selektor verwenden. Mehrere gleichzeitig verarbeiten.',
|
|
160
|
+
'<strong>2. Automatische Analyse:</strong> Das Tool erkennt und zeigt alle vorhandenen Metadaten (GPS, Kameramodell, Datum usw.).',
|
|
161
|
+
'<strong>3. Sofortige Reinigung:</strong> Mit einem Klick werden 100 % der schädlichen Metadaten entfernt.',
|
|
162
|
+
'<strong>4. Sicherer Download:</strong> Erhalten Sie anonymisierte Bilder, die ohne Risiken in Netzwerken geteilt werden können.',
|
|
163
|
+
'<strong>5. Rückstandsfrei:</strong> Das gereinigte Bild behält seine volle ursprüngliche visuelle Qualität bei.'
|
|
164
|
+
], icon: 'mdi:check' },
|
|
165
|
+
|
|
166
|
+
{ type: 'card', title: 'Datenschutz Technologie', icon: 'mdi:shield-check', html: 'Dieses Tool verwendet die <strong>Canvas-API des Browsers</strong>, um eine saubere Kopie des Bildes Pixel für Pixel zu erstellen, was sicherstellt, dass:<br><br>- Keine Daten an Server gesendet werden<br>- Ihr Bild niemals Ihr Gerät verlässt<br>- Verarbeitung 100 % anonym und sicher ist<br>- Sie es nach dem ersten Laden sogar ohne Internetverbindung nutzen können' },
|
|
167
|
+
|
|
168
|
+
{ type: 'title', text: 'Welche spezifischen Daten werden entfernt?', level: 3 },
|
|
169
|
+
{ type: 'table', headers: ['Metadatentyp', 'Beispiele', 'Risiko'], rows: [
|
|
170
|
+
['EXIF (Austauschbar)', 'GPS, ISO, Blende, Verschlusszeit, Kameramodell', 'KRITISCH'],
|
|
171
|
+
['IPTC (Veröffentlichung)', 'Urheberrecht, Autor, Schlüsselwörter, Ort der Szene', 'HOCH'],
|
|
172
|
+
['XMP (XML)', 'Bearbeitungsverlauf, verwendete Software, vorgenommene Änderungen', 'MITTEL'],
|
|
173
|
+
['Basisdateidaten', 'Erstellungsdatum, genaue Uhrzeit, Gerät', 'HOCH']
|
|
174
|
+
] },
|
|
175
|
+
|
|
176
|
+
{ type: 'proscons', items: [
|
|
177
|
+
{
|
|
178
|
+
pro: 'Absoluter Datenschutz – 100 % browserbasierte Verarbeitung',
|
|
179
|
+
con: 'Erfordert einen modernen Browser mit JavaScript-Unterstützung'
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
pro: 'Sofort – Reinigung eines Fotos dauert weniger als 1 Sekunde',
|
|
183
|
+
con: 'Verarbeitung großer Fotos kann auf älteren Geräten langsam sein'
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
pro: 'Null Qualitätsverlust – entfernt nur technische Daten, keine Pixel',
|
|
187
|
+
con: 'Bearbeitet das Bild nicht (Zuschnitte, Rotationen usw.)'
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
pro: 'Völlig kostenlos ohne Limits – unbegrenzt Fotos verarbeiten',
|
|
191
|
+
con: 'Kein Premium-Support oder Cloud-Speicher'
|
|
192
|
+
}
|
|
193
|
+
], proTitle: 'Hauptvorteile', conTitle: 'Einschränkungen' },
|
|
194
|
+
|
|
195
|
+
{ type: 'tip', title: 'Tipp zur digitalen Sicherheit', html: '<strong>Reinigen Sie Ihre Fotos BEVOR sie</strong> in sozialen Netzwerken gepostet werden. Selbst wenn Sie einen Post löschen, könnten Metadaten bereits von Suchmaschinen oder Archiven indexiert worden sein. Vorsorge ist besser als Nachsorge. Machen Sie es sich zur Gewohnheit: <br><br><em>Foto → EXIF reinigen → Posten</em>' },
|
|
196
|
+
|
|
197
|
+
{ type: 'diagnostic', variant: 'warning', title: 'Reale Risiken bei fehlender Reinigung', icon: 'mdi:alert-circle', badge: 'Kritische Sicherheit', html: '<strong>Dokumentierte Fälle:</strong><br>- Eltern posten Fotos von Kindern – Täter verfolgten GPS<br>- Reisende Fotografen – Häuser wurden während ihrer Abwesenheit ausgeraubt<br>- Influencer – Wohnorte wurden von obsessiven Fans identifiziert<br><br>Das ist keine Paranoia: Es ist grundlegende digitale Hygiene im Jahr 2026.' },
|
|
198
|
+
|
|
199
|
+
{ type: 'glossary', items: [
|
|
200
|
+
{
|
|
201
|
+
term: 'EXIF',
|
|
202
|
+
definition: 'Exchangeable Image File Format. Ein Standard, der technische Metadaten in Bilddateien speichert: GPS, Kameradaten, Belichtungseinstellungen. In ~90 % der digitalen Fotos ohne Absicht des Nutzers vorhanden.'
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
term: 'GPS-Koordinaten',
|
|
206
|
+
definition: 'Präziser Breitengrad und Längengrad des exakten Ortes, an dem das Foto aufgenommen wurde. In Kombination mit sozialen Medien ermöglicht dies die physische Verfolgung von Personen.'
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
term: 'IPTC',
|
|
210
|
+
definition: 'International Press Telecommunications Council. Lesbare Veröffentlichungs-Metadaten: Urheberrecht, Autor, Schlüsselwörter, Beschreibung. Standard in der professionellen Fotografie.'
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
term: 'XMP',
|
|
214
|
+
definition: 'Extensible Metadata Platform. Ein XML-Format, das den Bearbeitungsverlauf in Software wie Lightroom oder Photoshop aufzeichnet. Es kann alle vorgenommenen Änderungen offenlegen.'
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
term: 'OSINT',
|
|
218
|
+
definition: 'Open Source Intelligence. Eine Technik zum Sammeln öffentlicher Informationen (Social Media, Metadaten, Register), um Profile von Personen ohne deren Wissen zu erstellen.'
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
term: 'Digitale Anonymisierung',
|
|
222
|
+
definition: 'Der Prozess des Entfernens oder Verschleierns identifizierbarer Informationen: Standort, Gerät, Verhaltensmuster. Essenziell für den Online-Datenschutz.'
|
|
223
|
+
}
|
|
224
|
+
] },
|
|
225
|
+
|
|
226
|
+
{ type: 'message', title: 'Ihre Privatsphäre liegt in Ihrer Verantwortung', ariaLabel: 'Informationen über Datenschutz und Datenrechte', html: 'Wir speichern, verarbeiten oder teilen Ihre Bilder nicht. <strong>Sie haben die volle Kontrolle.</strong> Alle Vorgänge finden ausschließlich in Ihrem Browser statt. Wenn Sie diesen Tab schließen, bleiben keine Aufzeichnungen Ihrer Aktivitäten zurück. So schützen Sie Ihre Privatsphäre im Internet: Tools, die Ihre Daten respektieren.' },
|
|
227
|
+
|
|
228
|
+
{ type: 'title', text: 'Fazit: Teilen ohne Spuren', level: 3 },
|
|
229
|
+
{ type: 'paragraph', html: 'Der Schutz Ihrer digitalen Identität beginnt bei kleinen Details. Das Reinigen Ihrer Fotos vor der Veröffentlichung ist ein <strong>essenzieller habit der digitalen Hygiene</strong> im Jahr 2026. Es schützt nicht nur Ihren Standort: Es schützt Ihre Familie, Ihr Vermögen und Ihre berufliche Privatsphäre. Ein scheinbar harmloses Foto kann mehr über Sie verraten, als Sie sich jemals vorstellen konnten.' }
|
|
230
|
+
];
|
|
231
|
+
|
|
232
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
233
|
+
'@context': 'https://schema.org',
|
|
234
|
+
'@type': 'FAQPage',
|
|
235
|
+
mainEntity: faq.map((item) => ({
|
|
236
|
+
'@type': 'Question',
|
|
237
|
+
name: item.question,
|
|
238
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
239
|
+
})),
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
const howToSchema: WithContext<HowTo> = {
|
|
243
|
+
'@context': 'https://schema.org',
|
|
244
|
+
'@type': 'HowTo',
|
|
245
|
+
name: title,
|
|
246
|
+
description,
|
|
247
|
+
step: howTo.map((step) => ({
|
|
248
|
+
'@type': 'HowToStep',
|
|
249
|
+
name: step.name,
|
|
250
|
+
text: step.text,
|
|
251
|
+
})),
|
|
252
|
+
};
|
|
253
|
+
|
|
254
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
255
|
+
'@context': 'https://schema.org',
|
|
256
|
+
'@type': 'SoftwareApplication',
|
|
257
|
+
name: title,
|
|
258
|
+
description,
|
|
259
|
+
applicationCategory: 'UtilitiesApplication',
|
|
260
|
+
operatingSystem: 'Web',
|
|
261
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
262
|
+
inLanguage: 'de',
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
export const content: ExifCleanerLocaleContent = {
|
|
266
|
+
slug,
|
|
267
|
+
title,
|
|
268
|
+
description,
|
|
269
|
+
ui,
|
|
270
|
+
seo,
|
|
271
|
+
faqTitle: "Häufig gestellte Fragen",
|
|
272
|
+
faq,
|
|
273
|
+
bibliographyTitle: "Referenzen",
|
|
274
|
+
bibliography,
|
|
275
|
+
howTo,
|
|
276
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema],
|
|
277
|
+
};
|
|
@@ -2,7 +2,7 @@ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dt
|
|
|
2
2
|
import type { ExifCleanerUI, ExifCleanerLocaleContent } from '../index';
|
|
3
3
|
|
|
4
4
|
const slug = 'exif-metadata-cleaner-remove-gps-photo-privacy';
|
|
5
|
-
const title = 'EXIF Metadata Cleaner
|
|
5
|
+
const title = 'EXIF Metadata Cleaner: Remove GPS and Hidden Data from Photos';
|
|
6
6
|
const description = 'Free online tool to erase EXIF metadata, GPS coordinates, and camera specs from your images before sharing. 100% private: works without uploading photos to the internet.';
|
|
7
7
|
|
|
8
8
|
const ui: ExifCleanerUI = {
|
|
@@ -81,7 +81,7 @@ const bibliography: ExifCleanerLocaleContent['bibliography'] = [
|
|
|
81
81
|
const seo: ExifCleanerLocaleContent['seo'] = [
|
|
82
82
|
{
|
|
83
83
|
type: 'summary',
|
|
84
|
-
title: 'EXIF Metadata Cleaner
|
|
84
|
+
title: 'EXIF Metadata Cleaner: Protect Your Privacy',
|
|
85
85
|
items: [
|
|
86
86
|
'Remove GPS coordinates and location from your photos instantly',
|
|
87
87
|
'Erase camera model, serial number, and technical information',
|
|
@@ -2,7 +2,7 @@ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dt
|
|
|
2
2
|
import type { ExifCleanerUI, ExifCleanerLocaleContent } from '../index';
|
|
3
3
|
|
|
4
4
|
const slug = 'limpiador-exif';
|
|
5
|
-
const title = 'Limpiador de Metadatos EXIF
|
|
5
|
+
const title = 'Limpiador de Metadatos EXIF: Elimina GPS y Datos Ocultos de Fotos';
|
|
6
6
|
const description = 'Herramienta online gratuita para borrar metadatos EXIF, coordenadas GPS y datos de cámara de tus imágenes antes de compartirlas. Privacidad total: funciona sin subir fotos a internet.';
|
|
7
7
|
|
|
8
8
|
const ui: ExifCleanerUI = {
|
|
@@ -81,7 +81,7 @@ const bibliography: ExifCleanerLocaleContent['bibliography'] = [
|
|
|
81
81
|
const seo: ExifCleanerLocaleContent['seo'] = [
|
|
82
82
|
{
|
|
83
83
|
type: 'summary',
|
|
84
|
-
title: 'Limpiador de Metadatos EXIF
|
|
84
|
+
title: 'Limpiador de Metadatos EXIF: Protege tu Privacidad',
|
|
85
85
|
items: [
|
|
86
86
|
'Elimina coordenadas GPS y ubicación de tus fotos al instante',
|
|
87
87
|
'Borra datos de modelo de cámara, número de serie e información técnica',
|
|
@@ -2,7 +2,7 @@ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dt
|
|
|
2
2
|
import type { ExifCleanerUI, ExifCleanerLocaleContent } from '../index';
|
|
3
3
|
|
|
4
4
|
const slug = 'nettoyeur-metadonnees-exif-supprimer-gps-confidentialite-photo';
|
|
5
|
-
const title = 'Nettoyeur de Métadonnées EXIF
|
|
5
|
+
const title = 'Nettoyeur de Métadonnées EXIF: Supprimez le GPS et les Données Cachées';
|
|
6
6
|
const description = 'Outil en ligne gratuit pour effacer les métadonnées EXIF, les coordonnées GPS et les caractéristiques de l\'appareil de vos images avant de les partager. 100 % confidentiel : fonctionne sans téléversement.';
|
|
7
7
|
|
|
8
8
|
const ui: ExifCleanerUI = {
|
|
@@ -51,7 +51,7 @@ const faq: ExifCleanerLocaleContent['faq'] = [
|
|
|
51
51
|
const howTo: ExifCleanerLocaleContent['howTo'] = [
|
|
52
52
|
{
|
|
53
53
|
name: "Sélectionner les images",
|
|
54
|
-
text: "Faites glisser vos photos ou sélectionnez
|
|
54
|
+
text: "Faites glisser vos photos ou sélectionnez les depuis votre explorateur de fichiers. Vous pouvez en traiter plusieurs à la fois.",
|
|
55
55
|
},
|
|
56
56
|
{
|
|
57
57
|
name: "Analyser les données actuelles",
|
|
@@ -81,7 +81,7 @@ const bibliography: ExifCleanerLocaleContent['bibliography'] = [
|
|
|
81
81
|
const seo: ExifCleanerLocaleContent['seo'] = [
|
|
82
82
|
{
|
|
83
83
|
type: 'summary',
|
|
84
|
-
title: 'Nettoyeur de Métadonnées EXIF
|
|
84
|
+
title: 'Nettoyeur de Métadonnées EXIF: Protégez votre Vie Privée',
|
|
85
85
|
items: [
|
|
86
86
|
'Supprimez instantanément les coordonnées GPS et la localisation de vos photos',
|
|
87
87
|
'Effacez le modèle de l\'appareil, le numéro de série et les informations techniques',
|
|
@@ -194,7 +194,7 @@ const seo: ExifCleanerLocaleContent['seo'] = [
|
|
|
194
194
|
|
|
195
195
|
{ type: 'tip', title: 'Conseil de Sécurité Numérique', html: '<strong>Nettoyez vos photos AVANT de les publier</strong> sur n\'importe quel réseau social. Même si vous supprimez une publication, les métadonnées ont pu être indexées par des moteurs de recherche ou des archives. Mieux vaut prévenir que guérir. Prenez l\'habitude : <br><br><em>Photo → Nettoyer EXIF → Publier</em>' },
|
|
196
196
|
|
|
197
|
-
{ type: 'diagnostic', variant: 'warning', title: 'Risques Réels
|
|
197
|
+
{ type: 'diagnostic', variant: 'warning', title: 'Risques Réels sans Nettoyage', icon: 'mdi:alert-circle', badge: 'Sécurité Critique', html: '<strong>Cas documentés :</strong><br>- Parents publiant des photos d\'enfants - les prédateurs ont suivi le GPS<br>- Photographes voyageurs - maisons cambriolées pendant leur absence<br>- Influenceurs - lieux de résidence identifiés par des fans obsessifs<br><br>Ce n\'est pas de la paranoïa : c\'est une hygiène numérique de base en 2026.' },
|
|
198
198
|
|
|
199
199
|
{ type: 'glossary', items: [
|
|
200
200
|
{
|