<?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">"Photo Studio"</string>
    <string name="loading_failure" msgid="7890360277163832130">"Não foi possível carregar a fotografia"</string>
    <string name="saving_failure" msgid="8229491575433743974">"Não foi possível guardar a foto editada."</string>
    <string name="photo_saved" msgid="6163006724627682202">"Fotografia editada guardada em <xliff:g id="FOLDER_NAME">%s</xliff:g>"</string>
    <string name="discard_unsaved_photo" msgid="2353274490633681946">"Rejeitar alterações não guardadas?"</string>
    <string name="yes" msgid="5402582493291792293">"Sim"</string>
    <string name="save" msgid="5516670392524294967">"GUARDAR"</string>
    <string name="autofix" msgid="1663414996270538748">"Correção Autom."</string>
    <string name="crop" msgid="7598378507763334041">"Recortar"</string>
    <string name="crossprocess" msgid="4173724489001742342">"Processo cruzado"</string>
    <string name="documentary" msgid="50396326708699797">"Documentário"</string>
    <string name="doodle" msgid="1686409894518940990">"Rabiscar"</string>
    <string name="duotone" msgid="8145893940788467106">"Dois tons"</string>
    <string name="facelift" msgid="6205748523156172637">"Rosto Brilhante"</string>
    <string name="facetan" msgid="4412831806626044111">"Rosto Bronzeado"</string>
    <string name="filllight" msgid="2644989991700022526">"Preench. Claro"</string>
    <string name="fisheye" msgid="6037488646928998921">"Olho de peixe"</string>
    <string name="flip" msgid="2357692401826287480">"Inverter"</string>
    <string name="grain" msgid="7487585304579789098">"Filme Granulado"</string>
    <string name="grayscale" msgid="7641563843060945228">"P&amp;B"</string>
    <string name="highlight" msgid="3902653944386623972">"Realces"</string>
    <string name="lomoish" msgid="1270032154357186736">"Lomo"</string>
    <string name="negative" msgid="1985508917342811252">"Negativo"</string>
    <string name="posterize" msgid="4139212359561383385">"Póster"</string>
    <string name="redeye" msgid="4958448806369928239">"Olhos Vermelhos"</string>
    <string name="rotate" msgid="6607597269792373083">"Rodar"</string>
    <string name="saturation" msgid="8621322012271169931">"Saturação"</string>
    <string name="sepia" msgid="7978093531824705601">"Sépia"</string>
    <string name="shadow" msgid="8235188588101973090">"Sombras"</string>
    <string name="sharpen" msgid="8449662378104403230">"Aumentar nitidez"</string>
    <string name="straighten" msgid="5217801513491493491">"Endireitar"</string>
    <string name="temperature" msgid="1607987938521534517">"Cores Quentes"</string>
    <string name="tint" msgid="154435943863418434">"Tonalidade"</string>
    <string name="vignette" msgid="7648125924662648282">"Vinheta"</string>
    <string name="crop_tooltip" msgid="8794037869706891710">"Arraste os marcadores para recortar a fotografia"</string>
    <string name="doodle_tooltip" msgid="2902117272374362915">"Desenhe na fotografia para rabiscar"</string>
    <string name="flip_tooltip" msgid="2700943256714731737">"Arraste a fotografia para virá-la"</string>
    <string name="redeye_tooltip" msgid="4183695928490874014">"Toque nos olhos vermelhos p/ os remover"</string>
    <string name="rotate_tooltip" msgid="7008602969130734229">"Arraste a fotografia para rodá-la"</string>
    <string name="straighten_tooltip" msgid="4846317027139212339">"Arraste a fotografia para endireitá-la"</string>
</resources>
