Skip to content

RichEditor for Android is a beautiful Rich Text WYSIWYG Editor for Android.

License

Notifications You must be signed in to change notification settings

kishannareshpal/richeditor-android

 
 

Repository files navigation

RichEditor for Android

Modifications made by @kishannareshpal:

    - Custom default font (jost.ttf)
        To override it for a font family of your own, do as follow:
            a. Create the /assets folder on your app package if you haven't already;
            b. Create a subfolder named "fonts" inside your /assets directory.
            c. Place your custom font .ttf file inside the fonts directory.
            d. Make sure that the font file is named: "refont.ttf"
            e. Enjoy!

    - Migrated to AndroidX
    - Upgrade of Android Gradle.
    – Bumped up the minSdkVersion from 14 to 17, due to JavascriptInterfaces method.
    – Implemented a different, more reliable, approach of passing data between WebView and JS. Before: Callback URL Scheme. Now: JavascriptInterfaces
    – Removed OnDecorationStateListener as i found it unnecessary.

    – Added OnTextSelectionChangeListener which contains two params, one is an object that has all of the information about what format type is enabled to the current Caret; And the second param is the actual selected text.
    – Modified OnTextChangeListener, it now returns the html and the text.

    - Changed `.setBold()` to `.setBold(boolean enabled)`
    - Changed `.setItalic()` to `.setItalic(boolean enabled)`
    - Changed `.setUnderline()` to `.setUnderline(boolean enabled)`
    - Changed `.setStrikeThrough()` to `.setStrikethrough(boolean enabled)`

    - Added `.toggleBold()`
    - Added `.toggleItalic()`
    - Added `.toggleUnderline()`
    - Added `.toggleStrikeThrough()`

Android Arsenal License Download

RichEditor for Android is a beautiful Rich Text WYSIWYG Editor for Android.

Supported Functions

Toolbar

  • Bold
  • Italic
  • Subscript
  • Superscript
  • Strikethrough
  • Underline
  • Justify Left
  • Justify Center
  • Justify Right
  • Blockquote
  • Heading 1
  • Heading 2
  • Heading 3
  • Heading 4
  • Heading 5
  • Heading 6
  • Undo
  • Redo
  • Indent
  • Outdent
  • Insert Image
  • Insert Link
  • Checkbox
  • Text Color
  • Text Background Color
  • Text Font Size
  • Unordered List (Bullets)
  • Ordered List (Numbers)
  • Font Family

Attribute change of editor

  • Font Size
  • Background Color
  • Width
  • Height
  • Placeholder
  • Load CSS
  • State Callback

Demo

Demo

Samples

How do I use it?

Setup

Gradle
repositories {
    jcenter()
    // maven { url 'https://jitpack.io' } // uncomment this if you are using kishan's build.
}

dependencies {
    implementation 'jp.wasabeef:richeditor-android:1.2.2'

    // or use (for kishan's edit, and upgrades listed on top of this readme file.)
    implementation 'com.github.kishannareshpal:richeditor-android:1.4.3'
    // don't forget to add jitpack repo by uncommenting the line above.

}

Default Setting for Editor


Height

editor.setEditorHeight(200);

Font

editor.setEditorFontSize(22);
editor.setEditorFontColor(Color.RED);

Background

editor.setEditorBackgroundColor(Color.BLUE);
editor.setBackgroundColor(Color.BLUE);
editor.setBackgroundResource(R.drawable.bg);
editor.setBackground("https://raw.githubusercontent.com/wasabeef/art/master/chip.jpg");

Padding

editor.setPadding(10, 10, 10, 10);

Placeholder

editor.setPlaceholder("Insert text here...");

Others
Please refer the samples for usage.

Functions for ContentEditable


Bold

// Enable bold
editor.setBold(true);
// Disable bold
editor.setBold(false);
// Toggle bold
editor.toggleBold();

Italic

// Enable italic
editor.setItalic(true);
// Disable italic
editor.setItalic(false);
// Toggle italic
editor.toggleItalic();

Underline

// Enable underline
editor.setUnderline(true);
// Disable italic
editor.setUnderline(false);
// Toggle italic
editor.toggleUnderline();

StrikeThrough

// Enable strikethrough
editor.setStrikeThrough(true);
// Disable strikethrough
editor.setStrikeThrough(false);
// Toggle strikethrough
editor.toggleStrikeThrough();

Insert Image

editor.insertImage("https://raw.githubusercontent.com/wasabeef/art/master/twitter.png","twitter");

Text Change Listener

RichEditor editor = (RichEditor) findViewById(R.id.editor);
editor. setOnTextChangeListener(new RichEditor.OnTextChangeListener() {
  @Override
  public void onTextChange(String text) {
    // Do Something
     Log.d("RichEditor", "Preview " + text);
  }
});

Others
Please refer the samples for usage.

Requirements

Android SDK 17+

Developed By

License

Copyright 2021 Daichi Furya and Kishan Jadav

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.

About

RichEditor for Android is a beautiful Rich Text WYSIWYG Editor for Android.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • Java 56.0%
  • JavaScript 39.3%
  • CSS 3.4%
  • HTML 1.3%