<?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">"Estudi de fotografia"</string>
    <string name="loading_failure" msgid="7890360277163832130">"No s\'ha pogut carregar la foto"</string>
    <string name="saving_failure" msgid="8229491575433743974">"No s\'ha pogut desar la foto editada"</string>
    <string name="photo_saved" msgid="6163006724627682202">"S\'ha desat la foto editada a <xliff:g id="FOLDER_NAME">%s</xliff:g>"</string>
    <string name="discard_unsaved_photo" msgid="2353274490633681946">"Vols descartar els canvis no desats?"</string>
    <string name="yes" msgid="5402582493291792293">"Sí"</string>
    <string name="save" msgid="5516670392524294967">"DESA"</string>
    <string name="autofix" msgid="1663414996270538748">"Correcció automàtica"</string>
    <string name="crop" msgid="7598378507763334041">"Retalla"</string>
    <string name="crossprocess" msgid="4173724489001742342">"Procés creuat"</string>
    <string name="documentary" msgid="50396326708699797">"Documental"</string>
    <string name="doodle" msgid="1686409894518940990">"Gargots"</string>
    <string name="duotone" msgid="8145893940788467106">"Dos tons"</string>
    <string name="facelift" msgid="6205748523156172637">"Brillantor cara"</string>
    <string name="facetan" msgid="4412831806626044111">"Pell morena"</string>
    <string name="filllight" msgid="2644989991700022526">"Retroil·lumin."</string>
    <string name="fisheye" msgid="6037488646928998921">"Ull de peix"</string>
    <string name="flip" msgid="2357692401826287480">"Inversió"</string>
    <string name="grain" msgid="7487585304579789098">"Gra pel·lícula"</string>
    <string name="grayscale" msgid="7641563843060945228">"B/N"</string>
    <string name="accessibility_black_and_white" msgid="1156382046161392389">"Blanc i negre"</string>
    <string name="highlight" msgid="3902653944386623972">"Realçaments"</string>
    <string name="lomoish" msgid="1270032154357186736">"Lomo"</string>
    <string name="negative" msgid="1985508917342811252">"Negatiu"</string>
    <string name="posterize" msgid="4139212359561383385">"Posterització"</string>
    <string name="redeye" msgid="4958448806369928239">"Ulls vermells"</string>
    <string name="rotate" msgid="6607597269792373083">"Gir"</string>
    <string name="saturation" msgid="8621322012271169931">"Saturació"</string>
    <string name="sepia" msgid="7978093531824705601">"Sèpia"</string>
    <string name="shadow" msgid="8235188588101973090">"Ombres"</string>
    <string name="sharpen" msgid="8449662378104403230">"Nitidesa"</string>
    <string name="straighten" msgid="5217801513491493491">"Redreçament"</string>
    <string name="temperature" msgid="1607987938521534517">"Calidesa"</string>
    <string name="tint" msgid="154435943863418434">"Tint"</string>
    <string name="vignette" msgid="7648125924662648282">"Vinyeta"</string>
    <string name="crop_tooltip" msgid="8794037869706891710">"Arrossega els marcadors per retallar la foto"</string>
    <string name="doodle_tooltip" msgid="2902117272374362915">"Arrossega el cursor sobre la foto per dibuixar"</string>
    <string name="flip_tooltip" msgid="2700943256714731737">"Arrossega la foto per invertir-la"</string>
    <string name="redeye_tooltip" msgid="4183695928490874014">"Toca els ulls vermells per eliminar-los"</string>
    <string name="rotate_tooltip" msgid="7008602969130734229">"Arrossega la foto per girar-la"</string>
    <string name="straighten_tooltip" msgid="4846317027139212339">"Arrossega la foto per redreçar-la"</string>
    <string name="photoeditor_exposure" msgid="560535856805042987">"Efectes d\'exposició"</string>
    <string name="photoeditor_color" msgid="834210916165605468">"Efectes de color"</string>
    <string name="photoeditor_artistic" msgid="2810641816416597464">"Efectes artístics"</string>
    <string name="photoeditor_fix" msgid="6441595584425037477">"Repara"</string>
    <string name="photoeditor_undo" msgid="4831462549862253564">"Desfés"</string>
    <string name="photoeditor_redo" msgid="5999984591376273768">"Refés"</string>
</resources>
