GithubHelp home page GithubHelp logo

viliusle / minipaint Goto Github PK

View Code? Open in Web Editor NEW
2.5K 2.5K 593.0 22.49 MB

online image editor

Home Page: http://viliusle.github.io/miniPaint/

License: Other

JavaScript 92.70% CSS 5.16% HTML 0.44% PHP 1.69%
browser canvas drawing effects html5 layers paint photoshop

minipaint's People

Contributors

bartheyrman22 avatar bit9labs avatar dependabot[bot] avatar fishergisdldt avatar giwayume avatar kmanaseryan avatar new-sankaku avatar parse-g avatar phpony avatar pootispenserhere avatar robaley avatar seayouth avatar viliusle avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

minipaint's Issues

user access control, next/owncloud

Found that software right now and it looks great. I've installed a copy on my own server, but I see the disadvantage - there is no user access control. Anyone may use it on my server.
Do you have any kind of user access control in your roadmap? I think good idea is to integrate miniPaint with nextcloud (owncloud)

Using webdav filesystems should be also implemented if you want to consider using nextcloud/owncloud

General features

Hello again. I wonder if this project does support the following features:
undo
redo
cut
copy
paste
save/export
new
close
open
zoom

Thanks in advance for either.

Bye, Ivano.

Glitch with pen and inspect element

It's hard to explain but whenever I would inspect element and have the pen tool selected, I would draw on the canvas without needing to hold a mouse click.

Steps to reproduce:

  1. Have pen tool selected. (Haven't tried with other tools)
  2. Right click and do inspect element on any part of the page.
  3. Use your mouse and hover over the canvas.

You will notice that the pen will be drawing with no mouse clicks.

Features and questions

Hello there.
My name is Ivano Arrighetta and I'm Italian.
I have 2 questions about MiniPaint:

  1. How is the browser support?
  2. Can it be used locally (without a server) and/or on a web server (without frameworks like node or something else)?

And some feature requests:
brush - with blending modes
lines and splines - with style (dashed, dotted, thickness, cap, join, etc)
cage transform
translate/rotate/scale
offset (wrap the image horizontally and/or vertically)
layers with blending modes
selection - lasso, by color - with invert, add and substract
alpha masking
alpha blending
text - following a path or filling a shape
flood fill - with gradient or texture
stroke - with style (as above)

Thanks in advance for any help.

Bye, Ivano.

Manage the fotns

How to add and hide/delete the fonts in the "Draw letters" tool?

Possible to hook into the Save/Open function?

I apologize is this is documented somewhere, but I couldn't find it. I would like to use miniPaint as an editor for images from an internal website. This would involve:

  • Passing initial image data into miniPaint window on load (via window.postMessage(), or query parameter)
  • Hooking into the save function to return PNG image data back to the calling page via window.postMessage() rather than bringing up the save dialog.

Is this possible?

Image trim not work..etc.

This editor is a great work, I very love it.
And I have some questions.
My browser is Chrome.
I upload three images into the editor.
I choose one image, and click select area tool to mark a area,
then choose Image -> Trim, but nothing happened, it not work, I do not know how it work.
But if I click select area tool to mark a area,
then choose Image -> Crop Selection, all images (layers) will be crop together as same size, it should not do this.

And I also do not know the Layer->Trim, how it work.
Thanks!

By the way, Your project is same this one https://github.com/Jayuda/ImageUp.
So, who is author? who is plagiarize?

imageSmoothingEnabled spelling

Hello,

In "js/draw_tools.js" (line 1455), I think:
canvas_front.ImageSmoothingEnabled = false;
should be written as:
canvas_front.imageSmoothingEnabled = false;

And... that's all.
Thanks again for your soft.

Layers

Hello,

Some minor issues with layers, tested on Firefox.
Steps to reproduce...

BUG 1

  • Draw something.
  • Click on the cross to delete the layer.
  • Notice the layer is now blank on the main window but not on the preview window on the right (you will need to click on the cross one more time). This only happens if there is a single layer.

BUG 2

  • Draw something.
  • Choose the "Select area tool" and use it somewhere.
  • "Copy selection" then "Paste selection" in the miniPaint menu.
  • Notice you will have now two "Layer #1". If you play with the "Hide" button, you will see that both hide it on the main window (but not on the preview window). This bug happens even if you have many layers.

BUG 3

  • Draw something.
  • Choose the "Select area tool" and use it somewhere.
  • Now press CTRL + Z to undo. This will remove what you have drawn before, but for some reason the layer is also deleted, meaning that any attempt to draw something will result in a JavaScript error: "TypeError: LAYER.layers[LAYER.layer_active] is undefined". It does not seem to be a permanent issue and creating a new layer makes the app work again without the need to restart it.

Integrate question

"How to integrate into *******? Could you help me with?"

p.s. question copied here for public accessibility.

Smooth dragging?

Would it be possible to have smooth dragging of the picture so there isn't a shadow when dragging it throughout the canvas?

Problem with getting image into image editor and scaling

Hi,
I have tried your recommendations for getting an img object into the editing window listed on #44.

Using the last update change I get a cutoff on the image as it doesn't scale to the image. Any zooming after shows a cutoff of image. Adjustments to the css after the fact just shows a cutoff image.

<script> function open_image(image_id){ var img = document.getElementById(image_id); //set name var name = img.src.replace(/^.*[\\\/]/, ''); LAYER.layer_add(name); LAYER.layer_remove(1); //draw canvas canvas_active().drawImage(img, 0, 0); } </script>

So, then I tried working with the first suggestion, and that failed to add the layer. I noticed too in file.js that instead of calling the object as a variable, the code reverts to using a getElementByID which I think should be called using the object variable.

Anyhow, your help in completing this task and overcoming this error would be greatly appreciated.

Issue with the Pick color tool

Hello,

If you use the "Pick color" tool in a place where there is actually no color (transparent background), this will crash the app. After that, for example, the "Brush" tool will draw nothing and the "Fill" tool will crash the browser (infinite loop?).

Tested on the online demo with Firefox and Chrome.

support for TIFF

Hi, thanks for the great work.

I wanted to add support for TIFF and I thought it would nice if i get some directions.
the main issue for me now is to open the .tiff image.

Thanks

Suggestions? : Rename layers.

When multiple layers are created, I think everyone gets confused while selecting one particular layers back. Is it possible to make layers rename on double click or in any other ways?

How to actually crop?

Hi,

Can you please suggest a proper way to crop the image?

I select the area with the crop tool and create a new layer from the selected area and delete the main layer but in that case canvas does not resize automaticaly as it can be seen.

Thanks!

image

Suggestions? : Not able to open JSON file back.

I saved the the files in JSON format and when I open the same file, I got nothing. But then when I drag and drop the file into the workspace, I works perfectly. What problem am I having? Can it be solved?

Warning in Firefox

Thank you for this soft.

I have this warning in Firefox : "Mutation Events is deprecated. Use MutationObserver instead."
in file : js/controlls.js
line 593 : document.getElementById('paste_ff').addEventListener('DOMSubtreeModified', function(){

I don't know if that means Mutation Events will be removed in the future.

License version?

The readme says the license is GPL, which is great. However it doesn't state which version (1,2 or 3), different versions have different requirements/restrictions, and doesn't include copyright statements etc.

To properly protect the project, it may be worth following the guidelines here :
https://www.gnu.org/licenses/gpl-howto.html
which are a quick way of making sure you have the right "legalese" in place.

Also, the reason that I created this issue was because we can't use or contribute to software where the legal/licensing situation isn't clear, and I want to use miniPaint as it looks like a great project.

Modification required for magic wand tool

In the magic wand feature, the effect is applied on 2 click total, i.e one time you have to click on the magic wand tool icon and the next time you have to click on the canvas to get the effect applied, but what I want is, effect should be applied directly on clicking the magic wand icon by clicking just once and the effect should be applied from (x,y) corresponding to (0,0) on the canvas

Cant Load Big Images error : NS_ERROR_FAILURE

am using latest latest version of minipaint
am using latest version of firefox
i tried to load image of dimension 14000 x 10000 and its displaying blank canvas , i check logs and it display error NS_ERROR_FAILURE at

NS_ERROR_FAILURE:     image.js:561
IMAGE_CLASS/this.trim_info        http://viliusle.github.io/miniPaint/js/image.js:561:13
LAYER_CLASS/this.layer_add/img.onload           http://viliusle.github.io/miniPaint/js/layers.js:137:22

so any idea how to over come this problem so that we can load high resolution image like up to 20k dimensions

Selection tool circular

Hi, I liked it very much. It's a complete photoeditor. Can you add the circular selection tool. Right now it has the square selection tool.

How to specify default image URL - Save and Opening other image issues

I used the fix you provided in issue #44 to pass in an image to be opened automatically.

<img alt="" id="my_image" src="img/colorwheel.png" alt="" onclick="FILE.open_image('my_image')"  />
<script>
function open_image(image_id){
	var img = document.getElementById(image_id);
	//set name
	var name = img.src.replace(/^.*[\\\/]/, '');
	LAYER.layer_add(name);
	LAYER.layer_remove(1);
	//draw canvas
	canvas_active().drawImage(img, 0, 0);
}
</script>

However, now I am experiencing issues when attempting to save the image or open another image and then saving. Right after loading the page with the preselected image, if I attempt to save without doing any edits the screen simply reloads quickly but does not save. If I do an edit or open another image it will save, but will then reload the screen with the original image with no edits and/or without the other image opened.

What I am attempting to do is pass in an image (successful with your fix), and then edit the image (possibly with other local images that I open). After completing the edits I need to be able to gather the information on the image to send it back to the server to be stored.

Input Range Issues IE11

Discovered an issue with input ranges in IE11. Some ranges won't appear (ex. ranges in Select Color popup) and when they do appear they're unable to update the range value. If I discover a fix for it I will update this if you haven't already found a fix.

Suggestions?: Image/text cuts off.

When image/text is moved beyond the borders of workspace and again moved inside, the image/text portion that crossed the borders disappears. Only the portion remaining inside remains. Is there any way to prevent the image/text from cutting off?

Minor issue with number inputs

Hello,

Using the arrows of a number input will actually not change the relevant value. This seems to happen every time the "plus" and "minus" buttons are provided. For example, in the "Brush" tool, change the size with the arrows instead of the +/- buttons and notice the size actually remains to 10.

Flip

flip vertical/horizontal functions are backwards

How to specify default image URL

Excellent work, this editor is one sweet package!

Is there any way to pass a picture URL for opening as default image by appending something like ?open=encoded_url to the minipaint location?

Alternatively, is there any syntax for opening an image from a supplied URL?
e.g. FILE.open_handler(URL)?

Possible?: Saving file in PDF format.

Is it possible adding the feature to save the file in PDF format as well?
Saving in JSON format, it doesn't bring back any saved layers when it is open back. It is supposed to bring back the saved layers back to the workspace, right?

Image is cropped when dragged out

Hi its project is beautiful, thank you for sharing

Each time we drag a part of the image out of the canvas the image is cropped

How to make when we drag and bring back the image into the canvas remain in its original size?

Suggestion?: Text is attached to image layer

Would it be possible to make text it's own layer? When putting text on an image, it's attached to the image's layer making it not possible to move text where you would like.

Translations

Hello,

I have checked and improved the French translation and added some missing fields. However, texts in input fields, errors, or alt attributes are not translated for some reasons.

There are also two little mistakes:

  • Gradient tool => "Text" is displayed in the box
  • Effects => Vibrance => "Vignette" is displayed in the box

fr-tr.zip

Image Rotation from its center.

miniPaint works well. Great job. When it comes to image rotation from menu, I'm having difficulty rotating image from its center. It works fine when the image fits well in canvas but when small sized image is imported and rotated, the image goes round the canvas instead of rotating from its center. If you could help with this, it would be much more easier for us. Thank you!

Moving/Resizing Selection Area Request

This is a great tool that you have created, and I appreciate the help you gave with my saving to the server issue. One suggestion for a future feature is that when moving the selected area or resizing it to retain the transparent green box instead of capturing the selected area of the image.

Thanks again for all of your fantastic work!

Suggestions?: To change canvas size

I have used the "size" feature under Image menu to change the canvas size. Its good to have that feature. Is there anyway I can edit the value or something else in the code to change the size of the canvas as default?

Seems to be issue with #pop_pre in mobile view

The width gets assigned accordingly but the height takes the original image height. This need be rectified. I took a look into popup.js, but probably easier for you to fix.

I see width_mini and height_mini getting defined in the top, bottom do not see where it gets reset to proportion of photo dimension.

Move up and down the layers

Here, moving up and down the layers, is graphically correct in the interface UI, but into the pattern the layers are moving in the opposite direction. Am I right?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.