搜索
首页web前端js教程如何向所见即所得编辑器添加图像编辑功能

图像编辑对于每个所见即所得编辑器来说都是一项强大的功能。它显着增强了应用程序的功能,并使想要对上传的图像执行更多操作的用户感到满意。

如今,用户期望应用程序具有图像编辑功能,但实现这些功能并不像听起来那么简单。

例如,在某些 LMS、CMS 和文档管理系统中,用户需要在所见即所得 HTML 编辑器中编辑图像。

上传图像和其他媒体可能是编辑人员的正常功能,但图像编辑通常不是。这就是为什么在本教程中,我将向您展示如何在编辑器中实现图像编辑功能。我们将探索图像裁剪、滤镜、添加文本等等。

要点

  • 使用 Froala 内置的 Filestack 图像转换来轻松添加图像编辑。

  • 自定义 Filestack 的选项以更好地控制图像上传和编辑。

  • 处理 Froala 事件以在用户与 Filestack 交互时执行操作。

  • 只需几秒钟和几行即可设置所见即所得编辑器。

  • 通过将编辑器与内置图像编辑集成来节省大量时间。

设置所见即所得编辑器

在开始图像编辑之前,我们首先需要一个所见即所得的编辑器。为此,请根据需要将 Froala 编辑器文件包含在您的应用程序中(我们将在此使用 CDN)。然后,我们在 div 元素中初始化编辑器,其 id 为“froala-editor:




    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Image Editing with Froala and Filestack</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
    <link href="https://cdn.jsdelivr.net/npm/froala-editor@latest/css/froala_editor.pkgd.min.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" href="https://static.filestackapi.com/transforms-ui/2.x.x/transforms.css">



    <div>



<p>On your JS file, add the following line of code:<br>
</p>

<pre class="brush:php;toolbar:false">new FroalaEditor('#froala-editor');

当您运行网络应用程序时,您应该会看到以下屏幕:

How to Add Image Editing Capabilities to Your WYSIWYG Editor

一旦我们的编辑器运行起来,我们将通过启用本机集成的 Filestack 插件来添加图像编辑功能。我们通过为编辑器指定选项来做到这一点:

new FroalaEditor('#froala-editor',{
    filestackOptions: {
        filestackAPI: 'YourFilestackAPIKey',
        uploadToFilestackOnly: true,
        pickerOptions: {
            accept: [
                '.pdf',
                'image/jpeg',
                'image/png',
                'image/*',
                'video/*',
                'audio/*'
            ],
            fromSources: [
                'local_file_system',
                'url',
                'facebook',
                'instagram'
            ]
        }
    },
    toolbarButtons: {
        'moreRich': {
            'buttons': ['openFilePickerImageOnly', 'openFilePickerVideoOnly', 'openFilePicker', 'insertLink', 'insertTable', 'emoticons', 'specialCharacters', 'insertHR'],
            'buttonsVisible': 3
        },
        'moreText': {
            'buttons': ['bold', 'italic', 'underline', 'fontFamily', 'fontSize', 'textColor', 'backgroundColor', 'clearFormatting']
        },
        'moreParagraph': {
            'buttons': ['alignLeft', 'alignCenter', 'formatOLSimple', 'alignRight', 'alignJustify', 'formatOL', 'formatUL', 'paragraphFormat', 'paragraphStyle', 'lineHeight', 'outdent', 'indent', 'quote']
        },
        'moreMisc': {
            'buttons': ['undo', 'redo', 'fullscreen', 'selectAll', 'html', 'help'],
            'align': 'right',
            'buttonsVisible': 2
        }
    },
    events: {
        'filestack.uploadedToFilestack': function (response) {
            console.log("Callback is triggered for upload to Filestack ",)
        },
        'filestack.filestackPickerOpened': function (response) {
            console.log("Callback is triggered for picker opened ",)
        },
        'filestack.filestackPickerClosed': function (response) {
            console.log("Callback is triggered for picker closed ",)
        },
        'filestack.uploadFailedToFilestack': function (response) {
            console.log(response);
        },
    },
    heightMin: 500,
    heightMax: 1000
});

在这里,我们声明了编辑器工具栏按钮、大小、事件的一些选项以及 Filestack 的其他选项。在 filestackOptions 属性中,我们声明了 Filestack API 密钥,这是一个布尔值,用于确定文件是否专门上传到 Filestack,以及一些选择器选项。这些选项决定允许的文件类型和来源。

如果您还没有,请通过创建免费的 Filestack 帐户来获取 API 密钥。设置 Froala 和 Filestack 后,我们就完成了!您现在可以在应用程序中使用具有图像编辑功能的高级所见即所得编辑器。另外,编辑器现在应该显示如下:

How to Add Image Editing Capabilities to Your WYSIWYG Editor

请注意编辑器现在如何具有更好的尺寸调整。更重要的是,我们现在有了带有 Filestack 图标的按钮。这些按钮允许用户通过 Filestack 上传图像、视频和其他文件。现在,为了向您展示 Filestack 插件的一些功能,让我们深入研究一些图像编辑用例。

所见即所得编辑器中图像编辑的用例

裁剪图像

上传图像后,单击它,旁边会出现一个 Filestack 图标。单击该图标进入文件转换视图。在“变换”选项卡下,选择“裁剪”并根据您的喜好调整图像。请注意,您甚至可以在上传图像之前裁剪和旋转图像。让我们上传一张图像,然后使用 Filestack 转换对其进行裁剪。

How to Add Image Editing Capabilities to Your WYSIWYG Editor

这就是使用 Filestack 裁剪图像的样子。您可以选择不同的裁剪选项,包括自由形状、圆形、方形和我们在这里使用的 16:9。裁剪完成后,单击复选按钮并点击“保存”。

应用过滤器

滤镜已成为每个处理图像的应用程序的重要组成部分。使用 Filestack 和 Froala,您可以通过单击上传图像旁边的 Filestack 图标并转到“过滤器”选项卡来完成此操作。从那里,您可以从许多图像过滤器中进行选择,例如宝丽来、棕褐色、灰度等等。现在,让我们对裁剪后的图像应用滤镜。

How to Add Image Editing Capabilities to Your WYSIWYG Editor

添加和增强文本

无论是为章节标题添加标题,还是为产品或房地产列表添加价格,文本对于图像编辑都是必不可少的。使用 Froala Editor,您可以添加具有不同字体和样式的文本。使用之前的图像,让我们添加一些文本并增强它。

How to Add Image Editing Capabilities to Your WYSIWYG Editor

插入边框

我们还可以使用 Filestack 的转换功能轻松地将边框或框架插入到图像中。让我们转到“边框”选项卡并为图像自定义边框:

How to Add Image Editing Capabilities to Your WYSIWYG Editor

单击“保存”后,我们应该在编辑器上看到增强后的图像。从那里,您可以在 Filestack 仪表板上检查上传的图像。转到“内容浏览器”,您将看到我们的图像,您可以单独下载或在您的应用程序中下载该图像。作为参考,以下是执行所有这些操作后图像的外观:

How to Add Image Editing Capabilities to Your WYSIWYG Editor

结论

对于任何现代应用程序来说,图像编辑都是一个有价值的工具。借助 Froala 等工具,您可以加快实现具有卓越图像编辑功能的所见即所得编辑器。这些工具允许您裁剪、添加文本和滤镜、插入边框以及将叠加层应用于图像。

通过遵循本指南,您现在可以开始实现这些功能,而不需要太多的努力。现在,您已准备好提供流畅、愉快的图像编辑体验,让用户无需离开编辑器即可微调图像。

本文最初发布于Froala 的博客

以上是如何向所见即所得编辑器添加图像编辑功能的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
JavaScript的起源:探索其实施语言JavaScript的起源:探索其实施语言Apr 29, 2025 am 12:51 AM

JavaScript起源于1995年,由布兰登·艾克创造,实现语言为C语言。1.C语言为JavaScript提供了高性能和系统级编程能力。2.JavaScript的内存管理和性能优化依赖于C语言。3.C语言的跨平台特性帮助JavaScript在不同操作系统上高效运行。

幕后:什么语言能力JavaScript?幕后:什么语言能力JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript在浏览器和Node.js环境中运行,依赖JavaScript引擎解析和执行代码。1)解析阶段生成抽象语法树(AST);2)编译阶段将AST转换为字节码或机器码;3)执行阶段执行编译后的代码。

Python和JavaScript的未来:趋势和预测Python和JavaScript的未来:趋势和预测Apr 27, 2025 am 12:21 AM

Python和JavaScript的未来趋势包括:1.Python将巩固在科学计算和AI领域的地位,2.JavaScript将推动Web技术发展,3.跨平台开发将成为热门,4.性能优化将是重点。两者都将继续在各自领域扩展应用场景,并在性能上有更多突破。

Python vs. JavaScript:开发环境和工具Python vs. JavaScript:开发环境和工具Apr 26, 2025 am 12:09 AM

Python和JavaScript在开发环境上的选择都很重要。1)Python的开发环境包括PyCharm、JupyterNotebook和Anaconda,适合数据科学和快速原型开发。2)JavaScript的开发环境包括Node.js、VSCode和Webpack,适用于前端和后端开发。根据项目需求选择合适的工具可以提高开发效率和项目成功率。

JavaScript是用C编写的吗?检查证据JavaScript是用C编写的吗?检查证据Apr 25, 2025 am 12:15 AM

是的,JavaScript的引擎核心是用C语言编写的。1)C语言提供了高效性能和底层控制,适合JavaScript引擎的开发。2)以V8引擎为例,其核心用C 编写,结合了C的效率和面向对象特性。3)JavaScript引擎的工作原理包括解析、编译和执行,C语言在这些过程中发挥关键作用。

JavaScript的角色:使网络交互和动态JavaScript的角色:使网络交互和动态Apr 24, 2025 am 12:12 AM

JavaScript是现代网站的核心,因为它增强了网页的交互性和动态性。1)它允许在不刷新页面的情况下改变内容,2)通过DOMAPI操作网页,3)支持复杂的交互效果如动画和拖放,4)优化性能和最佳实践提高用户体验。

C和JavaScript:连接解释C和JavaScript:连接解释Apr 23, 2025 am 12:07 AM

C 和JavaScript通过WebAssembly实现互操作性。1)C 代码编译成WebAssembly模块,引入到JavaScript环境中,增强计算能力。2)在游戏开发中,C 处理物理引擎和图形渲染,JavaScript负责游戏逻辑和用户界面。

从网站到应用程序:JavaScript的不同应用从网站到应用程序:JavaScript的不同应用Apr 22, 2025 am 12:02 AM

JavaScript在网站、移动应用、桌面应用和服务器端编程中均有广泛应用。1)在网站开发中,JavaScript与HTML、CSS一起操作DOM,实现动态效果,并支持如jQuery、React等框架。2)通过ReactNative和Ionic,JavaScript用于开发跨平台移动应用。3)Electron框架使JavaScript能构建桌面应用。4)Node.js让JavaScript在服务器端运行,支持高并发请求。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具