<?xml version="1.0" encoding="UTF-8"?>
<!--  Copyright (C) 2010 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
 -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <string name="photoeditor_name" msgid="4738587346771969697">"Fotoğraf Stüdyosu"</string>
    <string name="loading_failure" msgid="7890360277163832130">"Fotoğraf yüklenemedi"</string>
    <string name="saving_failure" msgid="8229491575433743974">"Düzenlenen fotoğraf kaydedilemedi"</string>
    <string name="photo_saved" msgid="6163006724627682202">"Düzenlenen fotoğraf <xliff:g id="FOLDER_NAME">%s</xliff:g> içine kaydedildi"</string>
    <string name="discard_unsaved_photo" msgid="2353274490633681946">"Kaydedilmeyen değişiklikler silinsin mi?"</string>
    <string name="yes" msgid="5402582493291792293">"Evet"</string>
    <string name="save" msgid="5516670392524294967">"KAYDET"</string>
    <string name="autofix" msgid="1663414996270538748">"Otomatik düzelt"</string>
    <string name="crop" msgid="7598378507763334041">"Kırp"</string>
    <string name="crossprocess" msgid="4173724489001742342">"Çapraz Banyo"</string>
    <string name="documentary" msgid="50396326708699797">"Belgesel"</string>
    <string name="doodle" msgid="1686409894518940990">"Doodle"</string>
    <string name="duotone" msgid="8145893940788467106">"İki tonlu"</string>
    <string name="facelift" msgid="6205748523156172637">"Yüz Gerdirme"</string>
    <string name="facetan" msgid="4412831806626044111">"Yanık Tenli Yüz"</string>
    <string name="filllight" msgid="2644989991700022526">"Dolgu Işığı"</string>
    <string name="fisheye" msgid="6037488646928998921">"Balıkgözü"</string>
    <string name="flip" msgid="2357692401826287480">"Çevir"</string>
    <string name="grain" msgid="7487585304579789098">"Film Greni"</string>
    <string name="grayscale" msgid="7641563843060945228">"Siyah Beyaz"</string>
    <string name="accessibility_black_and_white" msgid="1156382046161392389">"Siyah beyaz"</string>
    <string name="highlight" msgid="3902653944386623972">"Parlak noktalar"</string>
    <string name="lomoish" msgid="1270032154357186736">"Lomo"</string>
    <string name="negative" msgid="1985508917342811252">"Negatif"</string>
    <string name="posterize" msgid="4139212359561383385">"Poster Efkt Uyg"</string>
    <string name="redeye" msgid="4958448806369928239">"Kırmızı Göz"</string>
    <string name="rotate" msgid="6607597269792373083">"Döndür"</string>
    <string name="saturation" msgid="8621322012271169931">"Doygunluk"</string>
    <string name="sepia" msgid="7978093531824705601">"Sepya Tonu"</string>
    <string name="shadow" msgid="8235188588101973090">"Gölgeler"</string>
    <string name="sharpen" msgid="8449662378104403230">"Keskinleştir"</string>
    <string name="straighten" msgid="5217801513491493491">"Düzleştir"</string>
    <string name="temperature" msgid="1607987938521534517">"Sıcaklık"</string>
    <string name="tint" msgid="154435943863418434">"Tonlama"</string>
    <string name="vignette" msgid="7648125924662648282">"Vinyet"</string>
    <string name="crop_tooltip" msgid="8794037869706891710">"Fotoğrafı kırpmak içni işaretçileri sürükleyin"</string>
    <string name="doodle_tooltip" msgid="2902117272374362915">"Doodle için fotoğrafın üzerinde çizin"</string>
    <string name="flip_tooltip" msgid="2700943256714731737">"Çevirmek için fotoğrafı sürükleyin"</string>
    <string name="redeye_tooltip" msgid="4183695928490874014">"Kırmızı gözleri hafifçe vurarak düzeltin"</string>
    <string name="rotate_tooltip" msgid="7008602969130734229">"Döndürmek için fotoğrafı sürükleyin"</string>
    <string name="straighten_tooltip" msgid="4846317027139212339">"Düzleştirmek için fotoğrafı sürükleyin"</string>
    <string name="photoeditor_exposure" msgid="560535856805042987">"Pozlama efektleri"</string>
    <string name="photoeditor_color" msgid="834210916165605468">"Renk efektleri"</string>
    <string name="photoeditor_artistic" msgid="2810641816416597464">"Sanatsal efektler"</string>
    <string name="photoeditor_fix" msgid="6441595584425037477">"Düzelt"</string>
    <string name="photoeditor_undo" msgid="4831462549862253564">"Geri al"</string>
    <string name="photoeditor_redo" msgid="5999984591376273768">"Yeniden Yap"</string>
</resources>
