This project is inspired by Microsoft OneNote, it's developed based on java swing-gui
https://www.youtube.com/watch?v=E0_bHdLtgGk
This application should be run on Java 9 or above
- FlatLaf for look and feel
- Thumbnailator for faster image resize and quality
- The outer component is
ContentPane
, all main component should be reside in here - If there is multiple
ContentPane
, then you can drag the tab to move the order of it - There is four main component can be added to this application, which are
TextPane
,TablePane
,ImagePane
,CanvasPane
- Each of them can be dragged around within application, copy, cut, paste, and resized
- Also resizing behavior will be slightly different depending on what component you're controlling
- Bold, italic and underline
- Foreground and background color
- Font size and family
TablePane
is just a collection of TextPane
, but the size of TextPane
will be changed depending on it's content
- The size of
TextPane
will be changed based on the percentage of max width of column - You can multi-select cells to be able to set text attributes at once
- Corner draggable points can be dragged to resize the image, it will retain current image's ratio
- North, south, east, west draggable points will break image's ratio, and new ratio will be recalculated
- Change line segments' thickness, color and position by multi-selecting or clicking
- You can also erase them using eraser
- select predefined colors
- custom color can be generated by three slider, each represent R, G, B respetively
- You can save file by clicking or using hotkey, the output file's extension should end with
.note
- File size should be quite small, because we only save important attributes like size, position, text attribute, image data, line segment points, etc