【问题标题】:Wysiwyg with image copy/paste [closed]所见即所得的图像复制/粘贴[关闭]
【发布时间】:2011-01-01 19:28:14
【问题描述】:

首先,我了解无法将图像从本地计算机“复制”到网站中。我知道它必须上传。我是一名网络程序员,熟悉常见的网络所见即所得工具,如 TinyMCE 和 FCKEditor。我的问题是,是否存在一个程序或网络模块或类似的东西可以自动上传所见即所得的图像。我有一个客户一直在抱怨无法将带有 MS Word 图像的文档复制/粘贴到所见即所得的网站上以在他们的网站上创建内容。

我研究了 TX 文本控件 (http://labs.textcontrol.com/),并正在研究一个可能的闪存所见即所得,它可以在幕后自动上传文件。我不知道这是否存在,而且谷歌在我的搜索中没有太多帮助,所以我想我会问其他编码人员。

我对任何类型的服务器技术或浏览器要求持开放态度。我正在寻找一些基于浏览器的工具,而不是 Dreamweaver 或其他应用程序工具。

如果问题没有好的解决方案,我愿意在这一点上接受。

注意:这是客户的要求,对我来说这似乎很不合理。我决定收集社区建议,而不是仅仅告诉客户“不”,这里的选项对于提出可能的解决方案非常有帮助和信息量。

【问题讨论】:

标签: web-applications html wysiwyg copy-paste clipboard-interaction


【解决方案1】:

您可能会从ScreenshotMe 中找到灵感。

基本上你需要不同的部分:

  • 将图像从剪贴板中取出并上传到网络的东西:这可能是 java 小程序、flash 或 firefox 扩展。 Flash 或 Java 具有跨浏览器的优势
  • 然后您使用<canvas> 标签在图像上传后显示(使用explorercanvascanvas 带到Internet Explorer)

正如我在评论中指出的那样,Google 正在停止使用支持 HTML5 的设备,请查看 7 User Interaction - HTML 5

编辑:

HTML5 在实现时应该与系统的剪贴板交互。我想下面的场景会起作用:

在实现 HTML5 复制/粘贴拖放之前,您必须依赖 Flash 或(签名的)Java applet 与剪贴板交互。

【讨论】:

  • 我喜欢这个选项,而且似乎所有工具都可以在 HTML 5 和 canvas 元素中使用
  • 这似乎是一个特别优雅的未来解决方案,并且确实提到了目前需要 Flash 或 Java。
  • 有谁知道剪贴板集成何时会在浏览器的主线版本中实现?
【解决方案2】:

【讨论】:

  • 谷歌停产的齿轮
  • 他们正在研究 HTML 5... 替代 Gears。
【解决方案3】:

我看到这是一个旧线程,但如果有人仍在寻找类似的东西(就像我一样),我今晚从一家名为 Ephox 的公司发现了一款​​名为 textbox.io 的产品(看起来他们买下了 TinyMCE以及)。

无论如何,这是我发现的第一个(如果不是唯一的话)javascript/HTML5 编辑器,它使用他们称为 PowerPaste 的专有插件从 word 中成功粘贴图像。在初始粘贴时,它会提示再次点击粘贴以导入图像。工作就像一个魅力 - 我唯一的问题是,对于像我参与的初创公司来说,它非常昂贵,每月 500 美元以上(ZAR 每月±R6,650+),不幸的是,这让我们无法选择:(

【讨论】:

    【解决方案4】:

    我有一个客户经常抱怨无法将带有图像的文档从 MS Word 复制/粘贴到所见即所得的工具中,以便在他们的网站上创建内容。

    这将失败。 MS Word 不会创建有效的 HTML,对于使用符合标准的浏览器的用户来说,页面会显得损坏。 Word 也有一些奇怪的锚定图像和流动文本的方法,这些方法不会翻译。简而言之,Word 是编写 HTML 的糟糕环境。

    当然,您的客户可能不会接受将我们带到选项 2 的那个:

    由于您的客户已选择 Word 作为其所见即所得编辑器,因此将该内容粘贴到另一个所见即所得编辑器几乎没有意义。您的最佳解决方案是研究从 Word 或 OPen Office 自动导出 HTML 的方法。这可以使用 VBA 和服务器端脚本的组合来完成,首先将文档转换为 HTML(这也会将图像写入磁盘),然后将组合的内容上传到服务器。

    【讨论】:

    • HTMLTidy 可以很好地修复 MS Word 最严重的过激行为,并且可以让您轻松复制粘贴讨厌的 MS Word HTML。我同意客户显然很难,但您的解决方案可能会有所帮助。
    【解决方案5】:

    asp.net 中没有可用的直接选项,但您可以这样做

    http://www.codeproject.com/KB/graphics/ClipboardActiveX.aspx

    【讨论】:

    • 只是一个链接不是一个例外的答案。你应该添加一些关于这篇文章的信息。
    【解决方案6】:

    仅 HTML

    您可以使用一些东西(在拖放时)自动创建一个不可见的 HTML 表单、一个文件输入、将文件名的路径复制到文件输入并提交表单。

    您可以在不可见的 iframe 中创建表单以在后台发送它,而无需更改当前页面。你知道,标准的 Ajax 程序。

    关于删除/粘贴的一点帮助

    我不知道 HTML 是否允许删除文件项。如果不是,您可以查看 Google 正在尝试制定的 HTML 5 规范。

    另一种选择是使用某种富客户端组件(Java Applet with Swing 或 Flash,或 Silverlight,或 wathever),至少可以掌握文件的删除(或粘贴)并创建 HTML 表单。

    为什么我更喜欢发送表单

    我更喜欢创建表单而不是发送文件的小程序,因为它不需要服务器上的另一个特殊端口或类似的东西。

    【讨论】:

    • 哦,看看长长的 Google Wave 视频演示。它使用 Gears 自动上传图片,但他们的计划是使用 HTML 5。所以...如果 Google 是这样看的...
    【解决方案7】:

    我了解您客户的困境。我正在做同样的事情,但目前没有什么优先级,所以我无法提出任何解决方案,只是一些笔记。

    • 当我将 已保存 OpenOffice 文档(不适用于未保存的文档)中的图像复制并粘贴到 CKEDitor 实例中时 - 我没有 MS Word 来测试,但我假设它的工作原理类似 - 我将以下 HTML 插入到编辑器中:

      <img src="file:///C:/Users/PEKKAG%7E1/AppData/Local/Temp/moz-screenshot-4.png">

      也许可以调整 Flash 或 Java 上传器,使该文件可以在用户很少交互的情况下获取。能够从用户的计算机中获取文件是一个可怕安全漏洞,但至少可以将上传程序预先设置到临时目录目录。

    • 不过,我觉得最有趣的是 Gregory Pakosz 提到的 Canvas 方法,因为这种方式可以在服务器端静默存储图像,无需任何上传。但是,与上述示例相同的安全限制仍然适用:图像位于不同的域中,因此页面上的脚本无法读取。人们必须找到一种使用浏览器设置或编写自定义扩展的方法。

    【讨论】:

      【解决方案8】:

      如果我正确理解您的问题, 你的客户可能有任何随机词 文件和其中一些文件 可能包含图像。

      您所描述的内容类似于内容 在某些方面进行管理并创建静态 其他人的网页。

      我假设您的客户希望访问者访问他们的 网站查看 HTML 页面等文档,而不是 作为 Word MIME 类型。

      一些选项:

      • 使用 Word 保存为 HTML。不是最干净的 HTML 但可能是最干净的解决方案。

      • 让您的客户购买 Dreamweaver 之类的产品 这将导入他们的 Word 文档 并清理 Word 生成的 HTML。

      • 如果您的客户有很多钱,请开发一个自定义 使用 VSTO 的解决方案

      【讨论】:

      • 谢谢格里。您的第一个选项仍然不能解决 Word 文档中图像的上传问题。
      • @jW 不客气。我一定错过了什么或者做了一些错误的假设。通常,我教我的客户使用 Windows ftp.exe 从命令行上传。 Dreamweaver 等产品可自动执行上传过程。我的印象是您的客户试图维护 Word 文档的完整性,包括该文档中的任何图形。如果只是图形,您的客户最好将图像保存到文件并上传该文件。抱歉,我不清楚您的客户想要达到的目标。蒂姆托迪=。有不止一种方法可以做到这一点
      • 不幸的是,客户端特别难。他们希望不使用 ftp,而只是使用 Web 界面,并且能够从工作中复制/粘贴文档,并且(如您所说)保持文档的完整性,其中包括图像。因此需要上传图像文件以获取数据,然后需要将 word 格式转换为 HTML。这是客户的一种不合理的假设,但我正在寻找任何可能的解决方案。
      【解决方案9】:

      我的问题是,是否存在一个程序或网络模块或类似的东西可以自动上传所见即所得的图像

      XStandard Pro 将从 Word 或其他应用程序/文件系统粘贴的图像上传到服务器。

      【讨论】:

        【解决方案10】:

        在寻找类似的解决方案时,我注意到 GMail 允许 如果您从浏览器复制和粘贴。

        如果您从 Word 中复制,它似乎知道图像的尺寸(您可以看到图像的轮廓),但实际上并不粘贴/上传图像。

        似乎不支持非 Office 桌面应用程序。

        因此,假设 Google 工程师为此投入了大量时间,我怀疑它还不能通过桌面应用程序实现,但也许如果您能找到一种将内容保存到网络的快速方法(例如使用 Word 的博客或另存为 HTML 功能)然后您可以从中复制和粘贴,如果您的客户准备采取该额外步骤并且您可以让他们直接保存到 Web 服务器。

        尼克

        【讨论】:

          【解决方案11】:

          名为 Redactor 的 WYSIWYG 编辑器允许将图像直接复制粘贴到编辑器中,而无需单击 上传图像 按钮。

          这里是a link to their copy-paste example

          【讨论】:

          • @brasofilo:你是认真的吗?你给我打分是因为(用你的话来说)“问题老了没关系”?
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-03-29
          • 2015-07-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多