DL-Hobbyist's picture
Upload 21 files
635195b verified
Raw
History Blame Contribute Delete
3.73 kB
<!DOCTYPE html>
<html>
<head>
<title>Image Editor</title>
<style>
body {
font-family: 'Arial', sans-serif;
margin: 0;
padding: 20px;
background-color: #f0f0f0;
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
}
#controls {
margin: 20px 0;
padding: 15px;
background: white;
border-radius: 10px;
box-shadow: 0 2px 10px rgba(0,0,0,0.1);
display: flex;
gap: 15px;
flex-wrap: wrap;
justify-content: center;
}
#controls input[type="file"] {
margin-right: 10px;
}
select, button, input[type="checkbox"] {
padding: 8px 12px;
border: 1px solid #ddd;
border-radius: 5px;
font-size: 14px;
}
button {
background: #4CAF50;
color: white;
border: none;
cursor: pointer;
transition: background 0.3s;
}
button:hover {
background: #45a049;
}
#canvasContainer {
max-width: 90vw;
max-height: 70vh;
margin: 20px auto;
box-shadow: 0 4px 15px rgba(0,0,0,0.2);
border-radius: 10px;
overflow: hidden;
}
#canvas {
display: block;
max-width: 100%;
max-height: 100%;
}
.switch {
position: relative;
display: inline-block;
width: 60px;
height: 34px;
}
.switch input {
opacity: 0;
width: 0;
height: 0;
}
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
transition: 0.4s;
border-radius: 34px;
}
.slider:before {
position: absolute;
content: "";
height: 26px;
width: 26px;
left: 4px;
bottom: 4px;
background-color: white;
transition: 0.4s;
border-radius: 50%;
}
input:checked + .slider {
background-color: #2196F3;
}
input:checked + .slider:before {
transform: translateX(26px);
}
@media (max-width: 768px) {
#controls {
flex-direction: column;
align-items: center;
}
}
</style>
</head>
<body>
<div id="controls">
<input type="file" id="imageUpload" accept="image/*">
<label>Brush Size:</label>
<select id="brushSize">
<option value="5">Small</option>
<option value="10">Medium</option>
<option value="20">Large</option>
</select>
<label>Eraser Mode
<label class="switch">
<input type="checkbox" id="eraserMode">
<span class="slider"></span>
</label>
</label>
<a id="downloadBtn" download="binary_mask.png"><button>Download Image</button></a>
<a href="/"><button type="button">Back</button></a>
</div>
<div id="canvasContainer">
<canvas id="canvas"></canvas>
</div>
<script src="{{ url_for('static', filename='editor.js') }}"></script>
</body>
</html>