-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.js
More file actions
2364 lines (2253 loc) · 122 KB
/
Copy pathapp.js
File metadata and controls
2364 lines (2253 loc) · 122 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// ============================================================
// MiaoCut 共享前端逻辑
// ============================================================
// 设计初衷:
// 首页 + use case 子页(/product-photo-background-remover/、/portrait-background-remover/...)
// 都需要同一套 dropzone + 上传 + 多语言 + 反馈逻辑,但 SEO 文案/title/i18n 各不相同。
//
// 约定:每个 HTML 在加载本脚本之前,先在 <head> 内联:
// window.MIAOCUT_PAGE_I18N = { zh: { ... }, en: { ... }, ... } // 页面专属 i18n(见下方 PAGE_REQUIRED_KEYS)
// window.MIAOCUT_PAGE_TITLES = { zh: "...", en: "...", ... } // <title> 文本
// 共享 chrome 文案(dropzone 提示、上传状态、反馈表单等)由本文件内置 BASE_I18N 提供,
// 与 PAGE_I18N 浅合并后形成最终 i18n 字典。
//
// DOM 约定:每个页面必须包含以下 ID 的元素,否则相关功能会静默 no-op(不抛错):
// #dropzone #fileInput #dropzone-content
// #profile-toggle #profile-hint (可选;缺失则跳过质量切换)
// #lang-switch
// #bookmark-banner #dismiss-banner #shortcut-key (可选)
// #feedback-widget #feedback-trigger #feedback-panel #feedback-form
// #feedback-msg #feedback-email #feedback-thanks (可选)
(function () {
'use strict';
const LOCALES = [
{ code: 'en', htmlLang: 'en', prefix: '' },
{ code: 'zh', htmlLang: 'zh-CN', prefix: '/zh' },
{ code: 'hi', htmlLang: 'hi-IN', prefix: '/hi' },
{ code: 'id', htmlLang: 'id-ID', prefix: '/id' },
{ code: 'pt-br', htmlLang: 'pt-BR', prefix: '/pt-br' },
{ code: 'bn', htmlLang: 'bn-BD', prefix: '/bn' },
{ code: 'fil', htmlLang: 'fil-PH', prefix: '/fil' },
{ code: 'ur', htmlLang: 'ur-PK', prefix: '/ur' },
];
const LOCALE_PREFIXES = LOCALES
.filter(locale => locale.prefix)
.map(locale => locale.prefix)
.sort((a, b) => b.length - a.length);
const LOCALE_BY_CODE = Object.fromEntries(LOCALES.map(locale => [locale.code, locale]));
function localeFromHtmlLang(lang) {
const normalized = (lang || 'en').toLowerCase();
const exact = LOCALES.find(locale => locale.htmlLang.toLowerCase() === normalized || locale.code === normalized);
if (exact) return exact.code;
if (normalized.startsWith('pt')) return 'pt-br';
if (normalized.startsWith('zh')) return 'zh';
if (normalized.startsWith('hi')) return 'hi';
if (normalized.startsWith('id')) return 'id';
if (normalized.startsWith('bn')) return 'bn';
if (normalized.startsWith('fil') || normalized.startsWith('tl')) return 'fil';
if (normalized.startsWith('ur')) return 'ur';
return 'en';
}
function stripLocalePrefix(path) {
for (const prefix of LOCALE_PREFIXES) {
if (path === prefix) return '/';
if (path.startsWith(prefix + '/')) return path.slice(prefix.length) || '/';
}
return path;
}
function localizePath(path, targetLang) {
const locale = LOCALE_BY_CODE[targetLang] || LOCALE_BY_CODE.en;
if (!locale.prefix) return stripLocalePrefix(path);
const basePath = stripLocalePrefix(path);
return basePath === '/' ? `${locale.prefix}/` : `${locale.prefix}${basePath}`;
}
// ============================================================
// 共享 i18n(chrome / 上传状态 / 反馈表单)
// ============================================================
const BASE_I18N = {
"zh": {
"dropzoneTitle": "将图片拖拽至此,或点击上传",
"dropzoneSub": "(支持 JPG / PNG / WebP)",
"trustTitle": "你的图片绝对安全。",
"trustSub": "纯内存处理,15分钟后自动销毁,绝不用于 AI 训练。",
"navBg": "AI 抠图",
"navId": "证件照",
"navRestore": "老照片修复",
"navWatermark": "去水印",
"navPortrait": "人像",
"navProduct": "商品图",
"profileLabel": "质量:",
"profileSharp": "快速",
"profileFur": "细腻(毛发/发丝)",
"profileHintSharp": "约 1 秒 · 适合日常照片",
"profileHintFur": "约 3~5 秒 · 适合宠物、长发、羽毛、植物",
"bookmarkText": "喜欢 MiaoCut 吗?按",
"bookmarkSuffix": "加入书签,下次抠图只需 1 秒!",
"fbTitle": "☕ 提出建议",
"fbPlaceholder": "有什么想法?",
"fbEmail": "邮箱(选填,方便我们回复你)",
"fbSend": "发送",
"fbThanks": "感谢你的建议!",
"fbThanksSub": "我们会认真对待每一条反馈",
"compressing": "压缩中...",
"uploading": "上传中...",
"processing": "AI 处理中...",
"done": "完成!",
"formatErr": "仅支持 JPG / PNG / WebP 格式的图片",
"successTitle": "处理成功!",
"successSub": "可以继续编辑或下载。",
"failTitle": "抱歉,处理失败",
"alertSize": "仅支持 JPG / PNG / WebP 格式的图片",
"editorHomeTitle": "结果已生成",
"editorHomeSub": "下载透明 PNG,或先换一个简单背景再保存。",
"editorProductTitle": "商品图已准备好",
"editorProductSub": "快速生成白底、方形画布和阴影版商品图。",
"editorPortraitTitle": "人像抠图已准备好",
"editorPortraitSub": "切换职业头像背景、尺寸和圆形头像预览。",
"backgroundLabel": "背景",
"outputSizeLabel": "输出尺寸",
"subjectPaddingLabel": "主体边距",
"shadowLabel": "阴影",
"shapeLabel": "形状",
"portraitScaleLabel": "头肩占比",
"bgImage": "图片",
"uploadBgImage": "上传背景图",
"replaceBgImage": "更换背景图",
"bgScaleLabel": "背景缩放",
"dragBgHint": "拖动画布可移动背景",
"amazonPreset": "Amazon-safe 白底预设",
"bgTransparent": "透明",
"bgWhite": "白色",
"bgBlack": "黑色",
"bgLightGray": "浅灰",
"bgBlue": "蓝色",
"bgGradient": "渐变",
"bgBlur": "虚化原图",
"bgCustom": "自定义",
"sizeOriginal": "原始尺寸",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "头像 · 512",
"sizeAvatar1024": "头像 · 1024",
"sizeResume": "简历 · 480×640",
"shadowNone": "无",
"shadowSoft": "柔和",
"shadowFloat": "悬浮",
"shapeSquare": "方形",
"shapeCircle": "圆形",
"downloadTransparent": "下载透明 PNG",
"downloadEdited": "下载当前效果",
"downloadSquare": "下载方形 PNG",
"downloadCircle": "下载圆形 PNG",
"startOver": "换一张图",
"footerToolsTitle": "全部 MiaoCut 工具",
"footerCatRemove": "AI 抠图",
"footerCatConvert": "格式转换",
"footerCatRepair": "照片修复与增强",
"footerCatGuides": "使用教程",
"guideHubTitle": "如何去除背景",
"guidePptTitle": "在 PowerPoint 中去背景",
"guideGimpTitle": "在 GIMP 中去背景",
"guidesPromoText": "在用别的软件?看我们的分步教程:",
"guidesPromoLink": "如何在 PowerPoint、GIMP 等工具里去除背景",
"footerTagline": "MiaoCut · 免费、注重隐私的 AI 图片工具集。",
"footerPrivacy": "隐私政策",
"footerTerms": "服务条款",
"toolBgTitle": "去除背景",
"toolProductTitle": "商品图",
"toolPortraitTitle": "人像",
"toolIdTitle": "证件照",
"toolJpgPngTitle": "JPG → 透明 PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "去水印",
"toolRestoreTitle": "老照片",
"batchDoorButton": "批量抠图",
"batchDoorBadge": "Pro",
"batchDoorHint": "一次处理 20+ 张图片。",
"batchModalTitle": "批量抠图 Pro 即将上线",
"batchModalBody": "目标速度:每秒 1-2 张。留下邮箱,上线后免费获得 100 积分体验。",
"batchModalEmailLabel": "邮箱",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "加入候补名单",
"batchModalSending": "提交中...",
"batchModalNoThanks": "稍后再说",
"batchModalThanksTitle": "已加入名单",
"batchModalThanksBody": "上线后我们会通知你,并赠送 100 积分。",
"batchModalError": "提交失败,请稍后再试。",
"batchModalInvalidEmail": "请输入有效邮箱。",
"batchModalClose": "关闭"
},
"en": {
"dropzoneTitle": "Drag & drop image here, or click to upload",
"dropzoneSub": "(Supports JPG / PNG / WebP)",
"trustTitle": "Your images are 100% safe.",
"trustSub": "Processed in-memory, destroyed automatically. Never used for AI training.",
"navBg": "Background Remover",
"navId": "ID Photo",
"navRestore": "Old Photo",
"navWatermark": "Watermark",
"navPortrait": "Portrait",
"navProduct": "Product",
"profileLabel": "Quality:",
"profileSharp": "Fast",
"profileFur": "Fine (hair / fur)",
"profileHintSharp": "~1s · everyday photos",
"profileHintFur": "~3-5s · pets, long hair, feathers, plants",
"bookmarkText": "Like MiaoCut? Press",
"bookmarkSuffix": "to bookmark, next cutout is just 1 sec away!",
"fbTitle": "☕ Feedback",
"fbPlaceholder": "What's on your mind?",
"fbEmail": "Email (Optional)",
"fbSend": "Send",
"fbThanks": "Thanks for your feedback!",
"fbThanksSub": "We read every single message.",
"compressing": "Compressing...",
"uploading": "Uploading...",
"processing": "AI Processing...",
"done": "Done!",
"formatErr": "Only JPG / PNG / WebP formats are supported",
"successTitle": "Success!",
"successSub": "Ready to edit or download.",
"failTitle": "Sorry, processing failed",
"alertSize": "Only JPG / PNG / WebP formats are supported",
"editorHomeTitle": "Your cutout is ready",
"editorHomeSub": "Download the transparent PNG, or add a simple background first.",
"editorProductTitle": "Product photo ready",
"editorProductSub": "Create a white-background, square-canvas, or shadowed product image.",
"editorPortraitTitle": "Portrait cutout ready",
"editorPortraitSub": "Switch profile backgrounds, output sizes, and circular avatar previews.",
"backgroundLabel": "Background",
"outputSizeLabel": "Output size",
"subjectPaddingLabel": "Subject padding",
"shadowLabel": "Shadow",
"shapeLabel": "Shape",
"portraitScaleLabel": "Head / shoulder size",
"bgImage": "Image",
"uploadBgImage": "Upload background",
"replaceBgImage": "Replace background",
"bgScaleLabel": "Background scale",
"dragBgHint": "Drag the canvas to move the background",
"amazonPreset": "Amazon-safe white preset",
"bgTransparent": "Transparent",
"bgWhite": "White",
"bgBlack": "Black",
"bgLightGray": "Light gray",
"bgBlue": "Blue",
"bgGradient": "Gradient",
"bgBlur": "Blur original",
"bgCustom": "Custom",
"sizeOriginal": "Original size",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "Avatar · 512",
"sizeAvatar1024": "Avatar · 1024",
"sizeResume": "Resume · 480×640",
"shadowNone": "None",
"shadowSoft": "Soft",
"shadowFloat": "Floating",
"shapeSquare": "Square",
"shapeCircle": "Circle",
"downloadTransparent": "Download transparent PNG",
"downloadEdited": "Download current version",
"downloadSquare": "Download square PNG",
"downloadCircle": "Download circular PNG",
"startOver": "Choose another image",
"footerToolsTitle": "All MiaoCut Tools",
"footerCatRemove": "AI Background Removal",
"footerCatConvert": "Format Conversion",
"footerCatRepair": "Photo Repair & Enhancement",
"footerCatGuides": "Guides",
"guideHubTitle": "How to Remove a Background",
"guidePptTitle": "In PowerPoint",
"guideGimpTitle": "In GIMP",
"guidesPromoText": "Using another app? See our step-by-step guides for ",
"guidesPromoLink": "removing backgrounds in PowerPoint, GIMP, and more",
"footerTagline": "MiaoCut · Free AI image tools that respect your privacy.",
"footerPrivacy": "Privacy",
"footerTerms": "Terms",
"toolBgTitle": "Remove Background",
"toolProductTitle": "Product",
"toolPortraitTitle": "Portrait",
"toolIdTitle": "ID Photo",
"toolJpgPngTitle": "JPG → Transparent PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "Watermark",
"toolRestoreTitle": "Old Photo",
"batchDoorButton": "Batch Process",
"batchDoorBadge": "Pro",
"batchDoorHint": "Remove backgrounds from 20+ images at once.",
"batchModalTitle": "Batch Process Pro is coming soon",
"batchModalBody": "Target speed: 1-2 images per second. Leave your email and get 100 free credits when it opens.",
"batchModalEmailLabel": "Email",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "Join waitlist",
"batchModalSending": "Joining...",
"batchModalNoThanks": "Maybe later",
"batchModalThanksTitle": "You are on the list",
"batchModalThanksBody": "We will notify you when it opens and add 100 free credits.",
"batchModalError": "Could not submit. Please try again.",
"batchModalInvalidEmail": "Enter a valid email.",
"batchModalClose": "Close"
},
"hi": {
"dropzoneTitle": "छवि को यहां खींचें और छोड़ें, या अपलोड करने के लिए क्लिक करें",
"dropzoneSub": "(JPG / PNG / WebP का समर्थन करता है)",
"trustTitle": "आपकी छवियां 100% सुरक्षित हैं.",
"trustSub": "मेमोरी में संसाधित, स्वचालित रूप से नष्ट हो जाता है। AI प्रशिक्षण के लिए कभी भी उपयोग नहीं किया गया।",
"navBg": "पृष्ठभूमि हटानेवाला",
"navId": "ID फोटो",
"navRestore": "पुरानी फोटो",
"navWatermark": "वाटर-मार्क",
"navPortrait": "चित्र",
"navProduct": "उत्पाद",
"profileLabel": "गुणवत्ता:",
"profileSharp": "तेज़",
"profileFur": "बढ़िया (बाल/फर)",
"profileHintSharp": "~1s · रोजमर्रा की तस्वीरें",
"profileHintFur": "~3-5 सेकंड · पालतू जानवर, लंबे बाल, पंख, पौधे",
"bookmarkText": "MiaoCut की तरह? प्रेस",
"bookmarkSuffix": "बुकमार्क करने के लिए, अगला कटआउट केवल 1 सेकंड दूर है!",
"fbTitle": "☕ प्रतिक्रिया",
"fbPlaceholder": "आपके दिमाग में क्या है?",
"fbEmail": "ईमेल वैकल्पिक)",
"fbSend": "भेजना",
"fbThanks": "आपकी प्रतिक्रिया के लिए धन्यवाद!",
"fbThanksSub": "हम हर एक संदेश पढ़ते हैं.",
"compressing": "संपीड़न...",
"uploading": "अपलोड हो रहा है...",
"processing": "AI प्रसंस्करण...",
"done": "हो गया!",
"formatErr": "केवल JPG / PNG / WebP प्रारूप समर्थित हैं",
"successTitle": "सफलता!",
"successSub": "संपादित या डाउनलोड करने के लिए तैयार.",
"failTitle": "क्षमा करें, प्रसंस्करण विफल रहा",
"alertSize": "केवल JPG / PNG / WebP प्रारूप समर्थित हैं",
"editorHomeTitle": "आपका कटआउट तैयार है",
"editorHomeSub": "पारदर्शी PNG डाउनलोड करें, या पहले एक साधारण पृष्ठभूमि जोड़ें।",
"editorProductTitle": "उत्पाद फोटो तैयार",
"editorProductSub": "एक सफ़ेद-पृष्ठभूमि, चौकोर-कैनवास, या छायांकित उत्पाद छवि बनाएं।",
"editorPortraitTitle": "पोर्ट्रेट कटआउट तैयार",
"editorPortraitSub": "प्रोफ़ाइल पृष्ठभूमि, आउटपुट आकार और गोलाकार अवतार पूर्वावलोकन बदलें।",
"backgroundLabel": "पृष्ठभूमि",
"outputSizeLabel": "आउटपुट आकार",
"subjectPaddingLabel": "विषय पैडिंग",
"shadowLabel": "छाया",
"shapeLabel": "आकार",
"portraitScaleLabel": "सिर/कंधे का आकार",
"bgImage": "छवि",
"uploadBgImage": "पृष्ठभूमि अपलोड करें",
"replaceBgImage": "पृष्ठभूमि बदलें",
"bgScaleLabel": "पृष्ठभूमि पैमाना",
"dragBgHint": "पृष्ठभूमि को स्थानांतरित करने के लिए कैनवास को खींचें",
"amazonPreset": "Amazon-सुरक्षित सफेद प्रीसेट",
"bgTransparent": "पारदर्शी",
"bgWhite": "सफ़ेद",
"bgBlack": "काला",
"bgLightGray": "हल्का ग्रे",
"bgBlue": "नीला",
"bgGradient": "ढाल",
"bgBlur": "मूल को धुंधला करें",
"bgCustom": "रिवाज़",
"sizeOriginal": "मूल आकार",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "अवतार · 512",
"sizeAvatar1024": "अवतार · 1024",
"sizeResume": "बायोडाटा · 480×640",
"shadowNone": "कोई नहीं",
"shadowSoft": "कोमल",
"shadowFloat": "चल",
"shapeSquare": "वर्ग",
"shapeCircle": "घेरा",
"downloadTransparent": "पारदर्शी PNG डाउनलोड करें",
"downloadEdited": "वर्तमान संस्करण डाउनलोड करें",
"downloadSquare": "वर्ग PNG डाउनलोड करें",
"downloadCircle": "परिपत्र PNG डाउनलोड करें",
"startOver": "कोई अन्य छवि चुनें",
"footerToolsTitle": "सभी MiaoCut उपकरण",
"footerCatRemove": "AI पृष्ठभूमि हटाना",
"footerCatConvert": "प्रारूप रूपांतरण",
"footerCatRepair": "फोटो मरम्मत एवं संवर्द्धन",
"footerCatGuides": "गाइड",
"guideHubTitle": "बैकग्राउंड कैसे हटाएं",
"guidePptTitle": "PowerPoint में",
"guideGimpTitle": "जीआईएमपी में",
"guidesPromoText": "किसी अन्य ऐप का उपयोग कर रहे हैं? इसके लिए हमारी चरण-दर-चरण मार्गदर्शिकाएँ देखें ",
"guidesPromoLink": "PowerPoint, GIMP और अन्य में पृष्ठभूमि हटाना",
"footerTagline": "MiaoCut · मुफ़्त AI छवि उपकरण जो आपकी गोपनीयता का सम्मान करते हैं।",
"footerPrivacy": "गोपनीयता",
"footerTerms": "शर्तें",
"toolBgTitle": "पृष्ठभूमि निकालें",
"toolProductTitle": "उत्पाद",
"toolPortraitTitle": "चित्र",
"toolIdTitle": "ID फोटो",
"toolJpgPngTitle": "JPG → पारदर्शी PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "वाटर-मार्क",
"toolRestoreTitle": "पुरानी फोटो",
"batchDoorButton": "बैच प्रोसेस",
"batchDoorBadge": "Pro",
"batchDoorHint": "एक साथ 20+ छवियों से बैकग्राउंड हटाएं।",
"batchModalTitle": "Batch Process Pro जल्द आ रहा है",
"batchModalBody": "लक्ष्य गति: प्रति सेकंड 1-2 छवियां। अपना ईमेल छोड़ें और लॉन्च पर 100 मुफ्त क्रेडिट पाएं।",
"batchModalEmailLabel": "ईमेल",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "प्रतीक्षा सूची में शामिल हों",
"batchModalSending": "जुड़ रहे हैं...",
"batchModalNoThanks": "बाद में",
"batchModalThanksTitle": "आप सूची में जुड़ गए हैं",
"batchModalThanksBody": "लॉन्च पर हम आपको सूचित करेंगे और 100 मुफ्त क्रेडिट देंगे।",
"batchModalError": "सबमिट नहीं हो पाया। कृपया फिर कोशिश करें।",
"batchModalInvalidEmail": "मान्य ईमेल दर्ज करें।",
"batchModalClose": "बंद करें"
},
"id": {
"dropzoneTitle": "Seret & letakkan gambar di sini, atau klik untuk mengunggah",
"dropzoneSub": "(Mendukung JPG / PNG / WebP)",
"trustTitle": "Gambar Anda 100% aman.",
"trustSub": "Diproses dalam memori, dimusnahkan secara otomatis. Tidak pernah digunakan untuk pelatihan AI.",
"navBg": "Penghapus Latar Belakang",
"navId": "Foto ID",
"navRestore": "Foto lama",
"navWatermark": "Tanda air",
"navPortrait": "Potret",
"navProduct": "Produk",
"profileLabel": "Kualitas:",
"profileSharp": "Cepat",
"profileFur": "Halus (rambut/bulu)",
"profileHintSharp": "~1s · foto sehari-hari",
"profileHintFur": "~3-5s · hewan peliharaan, rambut panjang, bulu, tanaman",
"bookmarkText": "Seperti MiaoCut? Tekan",
"bookmarkSuffix": "untuk menandai, potongan berikutnya hanya berjarak 1 detik!",
"fbTitle": "☕ Umpan balik",
"fbPlaceholder": "Apa yang ada di pikiranmu?",
"fbEmail": "Email (Opsional)",
"fbSend": "Mengirim",
"fbThanks": "Terima kasih atas tanggapan Anda!",
"fbThanksSub": "Kami membaca setiap pesan.",
"compressing": "Mengompresi...",
"uploading": "Mengunggah...",
"processing": "Pemrosesan AI...",
"done": "Selesai!",
"formatErr": "Hanya format JPG / PNG / WebP yang didukung",
"successTitle": "Kesuksesan!",
"successSub": "Siap untuk diedit atau diunduh.",
"failTitle": "Maaf, pemrosesan gagal",
"alertSize": "Hanya format JPG / PNG / WebP yang didukung",
"editorHomeTitle": "Potongan Anda sudah siap",
"editorHomeSub": "Unduh PNG transparan, atau tambahkan latar belakang sederhana terlebih dahulu.",
"editorProductTitle": "Foto produk sudah siap",
"editorProductSub": "Buat gambar produk berlatar belakang putih, kanvas persegi, atau berbayang.",
"editorPortraitTitle": "Potongan potret sudah siap",
"editorPortraitSub": "Ganti latar belakang profil, ukuran keluaran, dan pratinjau avatar melingkar.",
"backgroundLabel": "Latar belakang",
"outputSizeLabel": "Ukuran keluaran",
"subjectPaddingLabel": "Bantalan subjek",
"shadowLabel": "Bayangan",
"shapeLabel": "Membentuk",
"portraitScaleLabel": "Ukuran kepala/bahu",
"bgImage": "Gambar",
"uploadBgImage": "Unggah latar belakang",
"replaceBgImage": "Ganti latar belakang",
"bgScaleLabel": "Skala latar belakang",
"dragBgHint": "Seret kanvas untuk memindahkan latar belakang",
"amazonPreset": "Preset putih aman Amazon",
"bgTransparent": "Transparan",
"bgWhite": "Putih",
"bgBlack": "Hitam",
"bgLightGray": "Abu-abu muda",
"bgBlue": "Biru",
"bgGradient": "Gradien",
"bgBlur": "Buramkan yang asli",
"bgCustom": "Kebiasaan",
"sizeOriginal": "Ukuran asli",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "Avatar · 512",
"sizeAvatar1024": "Avatar · 1024",
"sizeResume": "Lanjutkan · 480×640",
"shadowNone": "Tidak ada",
"shadowSoft": "Lembut",
"shadowFloat": "Mengapung",
"shapeSquare": "Persegi",
"shapeCircle": "Lingkaran",
"downloadTransparent": "Unduh PNG transparan",
"downloadEdited": "Unduh versi saat ini",
"downloadSquare": "Unduh kotak PNG",
"downloadCircle": "Unduh melingkar PNG",
"startOver": "Pilih gambar lain",
"footerToolsTitle": "Semua Alat MiaoCut",
"footerCatRemove": "Penghapusan Latar Belakang AI",
"footerCatConvert": "Konversi Format",
"footerCatRepair": "Perbaikan & Peningkatan Foto",
"footerCatGuides": "Panduan",
"guideHubTitle": "Cara Menghapus Latar Belakang",
"guidePptTitle": "Di PowerPoint",
"guideGimpTitle": "Di GIMP",
"guidesPromoText": "Menggunakan aplikasi lain? Lihat panduan langkah demi langkah kami untuk ",
"guidesPromoLink": "menghapus latar belakang di PowerPoint, GIMP, dan lainnya",
"footerTagline": "MiaoCut · Alat gambar AI gratis yang menghormati privasi Anda.",
"footerPrivacy": "Pribadi",
"footerTerms": "Ketentuan",
"toolBgTitle": "Hapus Latar Belakang",
"toolProductTitle": "Produk",
"toolPortraitTitle": "Potret",
"toolIdTitle": "Foto ID",
"toolJpgPngTitle": "JPG → PNG Transparan",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "Tanda air",
"toolRestoreTitle": "Foto lama",
"batchDoorButton": "Proses Batch",
"batchDoorBadge": "Pro",
"batchDoorHint": "Hapus latar belakang dari 20+ gambar sekaligus.",
"batchModalTitle": "Batch Process Pro segera hadir",
"batchModalBody": "Target kecepatan: 1-2 gambar per detik. Tinggalkan email Anda dan dapatkan 100 kredit gratis saat dibuka.",
"batchModalEmailLabel": "Email",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "Gabung daftar tunggu",
"batchModalSending": "Mengirim...",
"batchModalNoThanks": "Nanti saja",
"batchModalThanksTitle": "Anda masuk daftar",
"batchModalThanksBody": "Kami akan memberi tahu Anda saat dibuka dan menambahkan 100 kredit gratis.",
"batchModalError": "Gagal mengirim. Silakan coba lagi.",
"batchModalInvalidEmail": "Masukkan email yang valid.",
"batchModalClose": "Tutup"
},
"pt-br": {
"dropzoneTitle": "Arraste e solte a imagem aqui ou clique para fazer upload",
"dropzoneSub": "(Suporta JPG/PNG/WebP)",
"trustTitle": "Suas imagens são 100% seguras.",
"trustSub": "Processado na memória, destruído automaticamente. Nunca usado para treinamento AI.",
"navBg": "Removedor de fundo",
"navId": "Foto ID",
"navRestore": "Foto antiga",
"navWatermark": "Marca d’água",
"navPortrait": "Retrato",
"navProduct": "Produto",
"profileLabel": "Qualidade:",
"profileSharp": "Rápido",
"profileFur": "Fino (cabelo/pele)",
"profileHintSharp": "~1s · fotos do dia a dia",
"profileHintFur": "~3-5s · animais de estimação, cabelos longos, penas, plantas",
"bookmarkText": "Gosta do MiaoCut? Imprensa",
"bookmarkSuffix": "para marcar, o próximo recorte estará a apenas 1 segundo de distância!",
"fbTitle": "☕ Feedback",
"fbPlaceholder": "O que está em sua mente?",
"fbEmail": "E-mail (opcional)",
"fbSend": "Enviar",
"fbThanks": "Obrigado pelo seu feedback!",
"fbThanksSub": "Lemos cada mensagem.",
"compressing": "Comprimindo...",
"uploading": "Fazendo upload...",
"processing": "Processamento AI...",
"done": "Feito!",
"formatErr": "Apenas os formatos JPG/PNG/WebP são suportados",
"successTitle": "Sucesso!",
"successSub": "Pronto para editar ou baixar.",
"failTitle": "Desculpe, o processamento falhou",
"alertSize": "Apenas os formatos JPG/PNG/WebP são suportados",
"editorHomeTitle": "Seu recorte está pronto",
"editorHomeSub": "Baixe o PNG transparente ou adicione primeiro um fundo simples.",
"editorProductTitle": "Foto do produto pronta",
"editorProductSub": "Crie uma imagem de produto com fundo branco, tela quadrada ou sombreada.",
"editorPortraitTitle": "Recorte de retrato pronto",
"editorPortraitSub": "Alterne planos de fundo de perfil, tamanhos de saída e visualizações circulares de avatar.",
"backgroundLabel": "Fundo",
"outputSizeLabel": "Tamanho de saída",
"subjectPaddingLabel": "Preenchimento de assunto",
"shadowLabel": "Sombra",
"shapeLabel": "Forma",
"portraitScaleLabel": "Tamanho da cabeça/ombro",
"bgImage": "Imagem",
"uploadBgImage": "Carregar plano de fundo",
"replaceBgImage": "Substituir plano de fundo",
"bgScaleLabel": "Escala de fundo",
"dragBgHint": "Arraste a tela para mover o fundo",
"amazonPreset": "Predefinição de branco seguro para Amazon",
"bgTransparent": "Transparente",
"bgWhite": "Branco",
"bgBlack": "Preto",
"bgLightGray": "Cinza claro",
"bgBlue": "Azul",
"bgGradient": "Gradiente",
"bgBlur": "Desfocar original",
"bgCustom": "Personalizado",
"sizeOriginal": "Tamanho original",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "Avatar · 512",
"sizeAvatar1024": "Avatar · 1024",
"sizeResume": "Currículo · 480×640",
"shadowNone": "Nenhum",
"shadowSoft": "Macio",
"shadowFloat": "Flutuante",
"shapeSquare": "Quadrado",
"shapeCircle": "Círculo",
"downloadTransparent": "Baixe PNG transparente",
"downloadEdited": "Baixe a versão atual",
"downloadSquare": "Baixar quadrado PNG",
"downloadCircle": "Baixar circular PNG",
"startOver": "Escolha outra imagem",
"footerToolsTitle": "Todas as ferramentas MiaoCut",
"footerCatRemove": "Remoção de fundo AI",
"footerCatConvert": "Conversão de formato",
"footerCatRepair": "Reparo e aprimoramento de fotos",
"footerCatGuides": "Guias",
"guideHubTitle": "Como remover um plano de fundo",
"guidePptTitle": "Em PowerPoint",
"guideGimpTitle": "No GIMP",
"guidesPromoText": "Usando outro aplicativo? Veja nossos guias passo a passo para ",
"guidesPromoLink": "removendo fundos em PowerPoint, GIMP e mais",
"footerTagline": "MiaoCut · Ferramentas de imagem AI gratuitas que respeitam sua privacidade.",
"footerPrivacy": "Privacidade",
"footerTerms": "Termos",
"toolBgTitle": "Remover fundo",
"toolProductTitle": "Produto",
"toolPortraitTitle": "Retrato",
"toolIdTitle": "Foto ID",
"toolJpgPngTitle": "JPG → Transparente PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "Marca d’água",
"toolRestoreTitle": "Foto antiga",
"batchDoorButton": "Processamento em lote",
"batchDoorBadge": "Pro",
"batchDoorHint": "Remova fundos de mais de 20 imagens de uma vez.",
"batchModalTitle": "Batch Process Pro chegará em breve",
"batchModalBody": "Velocidade alvo: 1-2 imagens por segundo. Deixe seu e-mail e ganhe 100 créditos grátis quando abrir.",
"batchModalEmailLabel": "E-mail",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "Entrar na lista",
"batchModalSending": "Enviando...",
"batchModalNoThanks": "Talvez depois",
"batchModalThanksTitle": "Você entrou na lista",
"batchModalThanksBody": "Avisaremos quando abrir e adicionaremos 100 créditos grátis.",
"batchModalError": "Não foi possível enviar. Tente novamente.",
"batchModalInvalidEmail": "Digite um e-mail válido.",
"batchModalClose": "Fechar"
},
"bn": {
"dropzoneTitle": "ছবিটি এখানে টেনে আনুন এবং ড্রপ করুন, অথবা আপলোড করতে ক্লিক করুন",
"dropzoneSub": "(JPG / PNG / WebP সমর্থন করে)",
"trustTitle": "আপনার ছবি 100% নিরাপদ.",
"trustSub": "মেমরির মধ্যে প্রক্রিয়াকরণ, স্বয়ংক্রিয়ভাবে ধ্বংস. AI প্রশিক্ষণের জন্য কখনই ব্যবহার করা হয় না।",
"navBg": "ব্যাকগ্রাউন্ড রিমুভার",
"navId": "ID ছবি",
"navRestore": "পুরানো ছবি",
"navWatermark": "জলছাপ",
"navPortrait": "প্রতিকৃতি",
"navProduct": "পণ্য",
"profileLabel": "গুণমান:",
"profileSharp": "দ্রুত",
"profileFur": "সূক্ষ্ম (চুল / পশম)",
"profileHintSharp": "~1s · প্রতিদিনের ছবি",
"profileHintFur": "~3-5s · পোষা প্রাণী, লম্বা চুল, পালক, গাছপালা",
"bookmarkText": "MiaoCut মত? চাপুন",
"bookmarkSuffix": "বুকমার্ক করতে, পরবর্তী কাটআউট মাত্র 1 সেকেন্ড দূরে!",
"fbTitle": "☕ প্রতিক্রিয়া",
"fbPlaceholder": "আপনার মনে কি আছে?",
"fbEmail": "ইমেল (ঐচ্ছিক)",
"fbSend": "পাঠান",
"fbThanks": "আপনার প্রতিক্রিয়া জন্য ধন্যবাদ!",
"fbThanksSub": "আমরা প্রতিটি একক বার্তা পড়ি।",
"compressing": "সংকুচিত হচ্ছে...",
"uploading": "আপলোড হচ্ছে...",
"processing": "AI প্রক্রিয়াকরণ...",
"done": "সম্পন্ন !",
"formatErr": "শুধুমাত্র JPG / PNG / WebP ফর্ম্যাটগুলি সমর্থিত",
"successTitle": "সফলতার !",
"successSub": "সম্পাদনা বা ডাউনলোড করার জন্য প্রস্তুত।",
"failTitle": "দুঃখিত, প্রক্রিয়াকরণ ব্যর্থ হয়েছে",
"alertSize": "শুধুমাত্র JPG / PNG / WebP ফর্ম্যাটগুলি সমর্থিত",
"editorHomeTitle": "আপনার কাটআউট প্রস্তুত",
"editorHomeSub": "স্বচ্ছ PNG ডাউনলোড করুন, অথবা প্রথমে একটি সাধারণ পটভূমি যোগ করুন।",
"editorProductTitle": "পণ্যের ছবি প্রস্তুত",
"editorProductSub": "একটি সাদা-পটভূমি, বর্গাকার-ক্যানভাস বা ছায়াযুক্ত পণ্যের ছবি তৈরি করুন।",
"editorPortraitTitle": "পোর্ট্রেট কাটআউট প্রস্তুত",
"editorPortraitSub": "প্রোফাইল ব্যাকগ্রাউন্ড, আউটপুট আকার, এবং বৃত্তাকার অবতার পূর্বরূপ পরিবর্তন করুন।",
"backgroundLabel": "পটভূমি",
"outputSizeLabel": "আউটপুট আকার",
"subjectPaddingLabel": "বিষয় প্যাডিং",
"shadowLabel": "ছায়া",
"shapeLabel": "আকৃতি",
"portraitScaleLabel": "মাথা / কাঁধের আকার",
"bgImage": "ছবি",
"uploadBgImage": "পটভূমি আপলোড করুন",
"replaceBgImage": "পটভূমি প্রতিস্থাপন করুন",
"bgScaleLabel": "ব্যাকগ্রাউন্ড স্কেল",
"dragBgHint": "পটভূমি সরাতে ক্যানভাস টেনে আনুন",
"amazonPreset": "Amazon- নিরাপদ সাদা প্রিসেট",
"bgTransparent": "স্বচ্ছ",
"bgWhite": "সাদা",
"bgBlack": "কালো",
"bgLightGray": "হালকা ধূসর",
"bgBlue": "নীল",
"bgGradient": "গ্রেডিয়েন্ট",
"bgBlur": "অস্পষ্ট মূল",
"bgCustom": "কাস্টম",
"sizeOriginal": "আসল আকার",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "অবতার · 512",
"sizeAvatar1024": "অবতার · 1024",
"sizeResume": "পুনরায় শুরু করুন · 480×640",
"shadowNone": "কোনোটিই নয়",
"shadowSoft": "নরম",
"shadowFloat": "ভাসমান",
"shapeSquare": "বর্গক্ষেত্র",
"shapeCircle": "বৃত্ত",
"downloadTransparent": "স্বচ্ছ PNG ডাউনলোড করুন",
"downloadEdited": "বর্তমান সংস্করণ ডাউনলোড করুন",
"downloadSquare": "স্কোয়ার PNG ডাউনলোড করুন",
"downloadCircle": "সার্কুলার PNG ডাউনলোড করুন",
"startOver": "অন্য ইমেজ চয়ন করুন",
"footerToolsTitle": "সমস্ত MiaoCut টুল",
"footerCatRemove": "AI পটভূমি অপসারণ",
"footerCatConvert": "ফর্ম্যাট রূপান্তর",
"footerCatRepair": "ফটো মেরামত এবং বর্ধন",
"footerCatGuides": "গাইড",
"guideHubTitle": "কিভাবে একটি পটভূমি সরান",
"guidePptTitle": "PowerPoint-এ",
"guideGimpTitle": "জিম্পে",
"guidesPromoText": "অন্য অ্যাপ ব্যবহার করছেন? এর জন্য আমাদের ধাপে ধাপে নির্দেশিকা দেখুন ",
"guidesPromoLink": "PowerPoint, GIMP, এবং আরও অনেক কিছুতে ব্যাকগ্রাউন্ড অপসারণ করা হচ্ছে",
"footerTagline": "MiaoCut · বিনামূল্যে AI ছবি টুল যা আপনার গোপনীয়তাকে সম্মান করে।",
"footerPrivacy": "গোপনীয়তা",
"footerTerms": "শর্তাবলী",
"toolBgTitle": "পটভূমি সরান",
"toolProductTitle": "পণ্য",
"toolPortraitTitle": "প্রতিকৃতি",
"toolIdTitle": "ID ছবি",
"toolJpgPngTitle": "JPG → স্বচ্ছ PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "জলছাপ",
"toolRestoreTitle": "পুরানো ছবি",
"batchDoorButton": "ব্যাচ প্রসেস",
"batchDoorBadge": "Pro",
"batchDoorHint": "একসাথে 20+ ছবির ব্যাকগ্রাউন্ড সরান।",
"batchModalTitle": "Batch Process Pro শীঘ্রই আসছে",
"batchModalBody": "লক্ষ্য গতি: প্রতি সেকেন্ডে 1-2টি ছবি। আপনার ইমেল দিন এবং চালু হলে 100টি ফ্রি ক্রেডিট পান।",
"batchModalEmailLabel": "ইমেল",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "ওয়েটলিস্টে যোগ দিন",
"batchModalSending": "জমা হচ্ছে...",
"batchModalNoThanks": "পরে",
"batchModalThanksTitle": "আপনি তালিকায় আছেন",
"batchModalThanksBody": "চালু হলে আমরা আপনাকে জানাব এবং 100টি ফ্রি ক্রেডিট দেব।",
"batchModalError": "জমা দেওয়া যায়নি। আবার চেষ্টা করুন।",
"batchModalInvalidEmail": "একটি বৈধ ইমেল লিখুন।",
"batchModalClose": "বন্ধ করুন"
},
"fil": {
"dropzoneTitle": "I-drag at i-drop ang larawan dito, o i-click para mag-upload",
"dropzoneSub": "(Sinusuportahan ang JPG / PNG / WebP)",
"trustTitle": "Ang iyong mga larawan ay 100% ligtas.",
"trustSub": "Naproseso sa memorya, awtomatikong nawasak. Hindi kailanman ginamit para sa AI na pagsasanay.",
"navBg": "Background Remover",
"navId": "ID Larawan",
"navRestore": "Lumang Larawan",
"navWatermark": "Watermark",
"navPortrait": "Larawan",
"navProduct": "produkto",
"profileLabel": "Kalidad:",
"profileSharp": "Mabilis",
"profileFur": "Fine (buhok / balahibo)",
"profileHintSharp": "~1s · araw-araw na mga larawan",
"profileHintFur": "~3-5s · mga alagang hayop, mahabang buhok, balahibo, halaman",
"bookmarkText": "Tulad ng MiaoCut? Pindutin",
"bookmarkSuffix": "para i-bookmark, ang susunod na cutout ay 1 segundo lang ang layo!",
"fbTitle": "☕ Feedback",
"fbPlaceholder": "Ano ang nasa isip mo?",
"fbEmail": "Email (Opsyonal)",
"fbSend": "Ipadala",
"fbThanks": "Salamat sa iyong feedback!",
"fbThanksSub": "Binabasa namin ang bawat mensahe.",
"compressing": "Kino-compress...",
"uploading": "Ina-upload...",
"processing": "Pinoproseso ng AI...",
"done": "Tapos na!",
"formatErr": "Tanging JPG / PNG / WebP format ang sinusuportahan",
"successTitle": "Tagumpay!",
"successSub": "Handa nang i-edit o i-download.",
"failTitle": "Paumanhin, nabigo ang pagproseso",
"alertSize": "Tanging JPG / PNG / WebP format ang sinusuportahan",
"editorHomeTitle": "Handa na ang iyong cutout",
"editorHomeSub": "I-download ang transparent na PNG, o magdagdag muna ng simpleng background.",
"editorProductTitle": "Handa na ang larawan ng produkto",
"editorProductSub": "Gumawa ng white-background, square-canvas, o shadowed na larawan ng produkto.",
"editorPortraitTitle": "Handa na ang portrait cutout",
"editorPortraitSub": "Lumipat ng mga background ng profile, laki ng output, at pabilog na mga preview ng avatar.",
"backgroundLabel": "Background",
"outputSizeLabel": "Laki ng output",
"subjectPaddingLabel": "Padding ng paksa",
"shadowLabel": "anino",
"shapeLabel": "Hugis",
"portraitScaleLabel": "Laki ng ulo/balikat",
"bgImage": "Imahe",
"uploadBgImage": "Mag-upload ng background",
"replaceBgImage": "Palitan ang background",
"bgScaleLabel": "Background scale",
"dragBgHint": "I-drag ang canvas para ilipat ang background",
"amazonPreset": "Amazon-safe na puting preset",
"bgTransparent": "Transparent",
"bgWhite": "Puti",
"bgBlack": "Itim",
"bgLightGray": "Banayad na kulay abo",
"bgBlue": "Asul",
"bgGradient": "Gradient",
"bgBlur": "I-blur ang orihinal",
"bgCustom": "Custom",
"sizeOriginal": "Orihinal na sukat",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "Avatar · 512",
"sizeAvatar1024": "Avatar · 1024",
"sizeResume": "Ipagpatuloy · 480×640",
"shadowNone": "wala",
"shadowSoft": "Malambot",
"shadowFloat": "Lumulutang",
"shapeSquare": "Square",
"shapeCircle": "Bilog",
"downloadTransparent": "I-download ang transparent na PNG",
"downloadEdited": "I-download ang kasalukuyang bersyon",
"downloadSquare": "I-download ang square PNG",
"downloadCircle": "I-download ang pabilog na PNG",
"startOver": "Pumili ng ibang larawan",
"footerToolsTitle": "Lahat ng MiaoCut Tools",
"footerCatRemove": "AI Pag-alis ng Background",
"footerCatConvert": "Conversion ng Format",
"footerCatRepair": "Pag-aayos at Pagpapahusay ng Larawan",
"footerCatGuides": "Mga gabay",
"guideHubTitle": "Paano Mag-alis ng Background",
"guidePptTitle": "Sa PowerPoint",
"guideGimpTitle": "Sa GIMP",
"guidesPromoText": "Gumagamit ng ibang app? Tingnan ang aming step-by-step na gabay para sa ",
"guidesPromoLink": "pag-aalis ng mga background sa PowerPoint, GIMP, at higit pa",
"footerTagline": "MiaoCut · Libreng AI image tool na gumagalang sa iyong privacy.",
"footerPrivacy": "Pagkapribado",
"footerTerms": "Mga tuntunin",
"toolBgTitle": "Alisin ang Background",
"toolProductTitle": "produkto",
"toolPortraitTitle": "Larawan",
"toolIdTitle": "ID Larawan",
"toolJpgPngTitle": "JPG → Transparent na PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "Watermark",
"toolRestoreTitle": "Lumang Larawan",
"batchDoorButton": "Batch Process",
"batchDoorBadge": "Pro",
"batchDoorHint": "Alisin ang background ng 20+ larawan nang sabay.",
"batchModalTitle": "Malapit na ang Batch Process Pro",
"batchModalBody": "Target na bilis: 1-2 larawan bawat segundo. Iwan ang email mo at makakuha ng 100 libreng credits kapag inilunsad.",
"batchModalEmailLabel": "Email",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "Sumali sa waitlist",
"batchModalSending": "Ipinapadala...",
"batchModalNoThanks": "Mamaya na lang",
"batchModalThanksTitle": "Nasa listahan ka na",
"batchModalThanksBody": "Aabisuhan ka namin kapag inilunsad at bibigyan ka ng 100 libreng credits.",
"batchModalError": "Hindi maisumite. Pakisubukang muli.",
"batchModalInvalidEmail": "Maglagay ng valid na email.",
"batchModalClose": "Isara"
},
"ur": {
"dropzoneTitle": "تصویر کو یہاں گھسیٹیں اور چھوڑیں، یا اپ لوڈ کرنے کے لیے کلک کریں۔",
"dropzoneSub": "(JPG / PNG / WebP کو سپورٹ کرتا ہے)",
"trustTitle": "آپ کی تصاویر 100% محفوظ ہیں۔",
"trustSub": "میموری میں پروسیس شدہ، خود بخود تباہ ہو گیا۔ AI ٹریننگ کے لیے کبھی استعمال نہیں کیا گیا۔",
"navBg": "پس منظر ہٹانے والا",
"navId": "ID تصویر",
"navRestore": "پرانی تصویر",
"navWatermark": "واٹر مارک",
"navPortrait": "پورٹریٹ",
"navProduct": "پروڈکٹ",
"profileLabel": "معیار:",
"profileSharp": "تیز",
"profileFur": "ٹھیک (بال / کھال)",
"profileHintSharp": "~1s · روزمرہ کی تصاویر",
"profileHintFur": "~3-5s · پالتو جانور، لمبے بال، پنکھ، پودے",
"bookmarkText": "MiaoCut کی طرح؟ دبائیں",
"bookmarkSuffix": "بک مارک کرنے کے لیے، اگلا کٹ آؤٹ صرف 1 سیکنڈ کی دوری پر ہے!",
"fbTitle": "☕ تاثرات",
"fbPlaceholder": "آپ کے دماغ میں کیا ہے؟",
"fbEmail": "ای میل (اختیاری)",
"fbSend": "بھیجیں۔",
"fbThanks": "آپ کی رائے کا شکریہ!",
"fbThanksSub": "ہم ایک ایک پیغام پڑھتے ہیں۔",
"compressing": "سکیڑ رہا ہے...",
"uploading": "اپ لوڈ ہو رہا ہے...",
"processing": "AI پروسیسنگ...",
"done": "ہو گیا!",
"formatErr": "صرف JPG / PNG / WebP فارمیٹس تعاون یافتہ ہیں",
"successTitle": "کامیابی!",
"successSub": "ترمیم کرنے یا ڈاؤن لوڈ کرنے کے لیے تیار ہیں۔",
"failTitle": "معذرت، پروسیسنگ ناکام ہوگئی",
"alertSize": "صرف JPG / PNG / WebP فارمیٹس تعاون یافتہ ہیں",
"editorHomeTitle": "آپ کا کٹ آؤٹ تیار ہے۔",
"editorHomeSub": "شفاف PNG ڈاؤن لوڈ کریں، یا پہلے ایک سادہ پس منظر شامل کریں۔",
"editorProductTitle": "مصنوعات کی تصویر تیار ہے۔",
"editorProductSub": "ایک سفید پس منظر، مربع کینوس، یا پروڈکٹ کی سایہ دار تصویر بنائیں۔",
"editorPortraitTitle": "پورٹریٹ کٹ آؤٹ تیار ہے۔",
"editorPortraitSub": "پروفائل کے پس منظر، آؤٹ پٹ سائز، اور سرکلر اوتار کے پیش نظارہ کو تبدیل کریں۔",
"backgroundLabel": "پس منظر",
"outputSizeLabel": "آؤٹ پٹ سائز",
"subjectPaddingLabel": "سبجیکٹ پیڈنگ",
"shadowLabel": "سایہ",
"shapeLabel": "شکل",
"portraitScaleLabel": "سر / کندھے کا سائز",
"bgImage": "تصویر",
"uploadBgImage": "پس منظر اپ لوڈ کریں۔",
"replaceBgImage": "پس منظر کو تبدیل کریں۔",
"bgScaleLabel": "پس منظر کا پیمانہ",
"dragBgHint": "پس منظر کو منتقل کرنے کے لیے کینوس کو گھسیٹیں۔",
"amazonPreset": "Amazon-محفوظ سفید پیش سیٹ",
"bgTransparent": "شفاف",
"bgWhite": "سفید",
"bgBlack": "سیاہ",
"bgLightGray": "ہلکا بھوری رنگ",
"bgBlue": "نیلا",
"bgGradient": "میلان",
"bgBlur": "اصل کو دھندلا کریں۔",
"bgCustom": "حسب ضرورت",
"sizeOriginal": "اصل سائز",
"sizeSquare1080": "1:1 · 1080",
"sizeSquare2000": "1:1 · 2000",
"sizeSquare2048": "1:1 · 2048",
"sizeAvatar512": "اوتار · 512",
"sizeAvatar1024": "اوتار · 1024",
"sizeResume": "دوبارہ شروع کریں · 480×640",
"shadowNone": "کوئی نہیں۔",
"shadowSoft": "نرم",
"shadowFloat": "تیرتا ہوا",
"shapeSquare": "مربع",
"shapeCircle": "دائرہ",
"downloadTransparent": "شفاف PNG ڈاؤن لوڈ کریں۔",
"downloadEdited": "موجودہ ورژن ڈاؤن لوڈ کریں۔",
"downloadSquare": "مربع PNG ڈاؤن لوڈ کریں۔",
"downloadCircle": "سرکلر PNG ڈاؤن لوڈ کریں۔",
"startOver": "دوسری تصویر منتخب کریں۔",
"footerToolsTitle": "تمام MiaoCut ٹولز",
"footerCatRemove": "AI پس منظر کو ہٹانا",
"footerCatConvert": "فارمیٹ کنورژن",
"footerCatRepair": "تصویر کی مرمت اور اضافہ",
"footerCatGuides": "رہنما",
"guideHubTitle": "پس منظر کو کیسے ہٹایا جائے۔",
"guidePptTitle": "PowerPoint میں",
"guideGimpTitle": "GIMP میں",
"guidesPromoText": "کوئی اور ایپ استعمال کر رہے ہیں؟ کے لیے ہماری مرحلہ وار گائیڈز دیکھیں ",
"guidesPromoLink": "PowerPoint، GIMP، اور مزید میں پس منظر کو ہٹانا",
"footerTagline": "MiaoCut · مفت AI تصویری ٹولز جو آپ کی رازداری کا احترام کرتے ہیں۔",
"footerPrivacy": "رازداری",
"footerTerms": "شرائط",
"toolBgTitle": "پس منظر کو ہٹا دیں۔",
"toolProductTitle": "پروڈکٹ",
"toolPortraitTitle": "پورٹریٹ",
"toolIdTitle": "ID تصویر",
"toolJpgPngTitle": "JPG → شفاف PNG",
"toolPngJpgTitle": "PNG → JPG",
"toolWatermarkTitle": "واٹر مارک",
"toolRestoreTitle": "پرانی تصویر",
"batchDoorButton": "بیچ پروسیس",
"batchDoorBadge": "Pro",
"batchDoorHint": "ایک ساتھ 20+ تصاویر کے پس منظر ہٹائیں۔",
"batchModalTitle": "Batch Process Pro جلد آ رہا ہے",
"batchModalBody": "ہدف رفتار: فی سیکنڈ 1-2 تصاویر۔ اپنا ای میل چھوڑیں اور لانچ پر 100 مفت کریڈٹس حاصل کریں۔",
"batchModalEmailLabel": "ای میل",
"batchModalEmailPlaceholder": "you@example.com",
"batchModalSubmit": "ویٹ لسٹ میں شامل ہوں",
"batchModalSending": "جمع ہو رہا ہے...",
"batchModalNoThanks": "بعد میں",
"batchModalThanksTitle": "آپ فہرست میں شامل ہیں",
"batchModalThanksBody": "لانچ پر ہم آپ کو اطلاع دیں گے اور 100 مفت کریڈٹس دیں گے۔",
"batchModalError": "جمع نہیں ہو سکا۔ دوبارہ کوشش کریں۔",
"batchModalInvalidEmail": "درست ای میل درج کریں۔",
"batchModalClose": "بند کریں"
}
};
// 每个页面 PAGE_I18N 至少要提供这些 key,否则 meta 标签和切语言时会显示 key 名
// (开发期 console 会提示缺失,但不会阻断运行)
const PAGE_REQUIRED_KEYS = ['title', 'subtitle', 'metaDescription', 'metaKeywords', 'ogTitle', 'ogLocale'];
const PAGE_I18N = window.MIAOCUT_PAGE_I18N || { zh: {}, en: {} };
const PAGE_TITLES = window.MIAOCUT_PAGE_TITLES || {};
const i18nData = {};
LOCALES.forEach(locale => {
const code = locale.code;
i18nData[code] = Object.assign(
{},
BASE_I18N.en || {},
PAGE_I18N.en || {},
BASE_I18N[code] || {},
PAGE_I18N[code] || {}
);
});
// 开发期校验:page-specific 必填 key 缺失时给个警告,避免线上才发现 meta 没设
if (typeof window !== 'undefined' && (window.location.hostname === 'localhost' || window.location.hostname === '127.0.0.1')) {