Calculator Tools Calculator Tools
Create

Editor de Imagens

Jan 7, 2024

About this app

Um editor de imagens online com diversos efeitos e opções de edição.

Editor de Imagens Editor de Imagens Nenhum Escala de Cinza Sépia Desfoque Brilho Adicionar Texto

Related apps

Put this on your site

Source

                    <html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">

<title>Editor de Imagens</title>
<meta name="description" content="Um editor de imagens online com diversos efeitos e opções de edição.">
<meta name="keywords" content="editor de imagens, efeitos, edição, online">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">

<script type="text/javascript">
try {
// App Javascript Goes Here. Place your entire script content inside the try block for error handling.

// This will run when the DOM is ready.
document.addEventListener("DOMContentLoaded", function() {
// Code for image editing app goes here
const imageEditor = document.getElementById('image-editor');
const imagePreview = document.getElementById('image-preview');
const effectsContainer = document.getElementById('effects-container');
const textInput = document.getElementById('text-input');
const addTextButton = document.getElementById('add-text-button');

// Function to apply selected effect
function applyEffect(effect) {
imagePreview.style.filter = effect;
}

// Function to add text to the image
function addText() {
const text = textInput.value.trim();
if (text !== '') {
const textElement = document.createElement('div');
textElement.innerText = text;
textElement.className = 'text-effect';
imagePreview.appendChild(textElement);
}
}

// Event listener for effect selection
effectsContainer.addEventListener('click', function(event) {
if (event.target.classList.contains('effect-button')) {
const effect = event.target.dataset.effect;
applyEffect(effect);
}
});

// Event listener for adding text
addTextButton.addEventListener('click', addText);
});

} catch (error) {
// This will throw the error to the parent window.
throw error;
}
</script>

<style>
/* App CSS Goes Here */
.container {
max-width: 800px;
margin: 0 auto;
padding: 20px;
}

#image-editor {
border: 1px solid #ddd;
padding: 10px;
text-align: center;
}

#image-preview {
max-width: 100%;
margin-bottom: 10px;
}

.effect-button {
margin-right: 10px;
cursor: pointer;
}

.text-effect {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 24px;
font-weight: bold;
color: white;
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}
</style>
</head>

<body>
<div id="main-container" class="container">
<h1>Editor de Imagens</h1>
<div id="image-editor">
<img id="image-preview" src="" alt="Imagem para editar">
<div id="effects-container">
<button class="effect-button" data-effect="none">Nenhum</button>
<button class="effect-button" data-effect="grayscale(100%)">Escala de Cinza</button>
<button class="effect-button" data-effect="sepia(100%)">Sépia</button>
<button class="effect-button" data-effect="blur(5px)">Desfoque</button>
<button class="effect-button" data-effect="brightness(150%)">Brilho</button>
</div>
<div>
<input type="text" id="text-input" placeholder="Digite um texto">
<button id="add-text-button">Adicionar Texto</button>
</div>
</div>
</div>
</body>

</html>