css - 从 Angular 应用程序复制/粘贴时保持文本格式
问题描述
我已经意识到,当我尝试将文本从 Angular 应用程序复制/粘贴到任何文本编辑器软件(即 Microsoft Word)时,所有文本都会丢失原始格式。
我以角材料网站为例:https ://material.angular.io/
当我在 Microsoft Word 中复制文本和过去时:
这意味着,粘贴的文本失去了中心对齐、颜色和字体类型。
有没有办法保持网站格式?我知道 Angular Material 使用的字体与文本编辑器不同,但还有其他东西可以保留(即对齐、颜色等)。
我已经使用 Angular 8 + Angular Material 开始了一个项目,我也面临同样的问题。
解决方案
好吧,您不太可能获得直接的复制/粘贴操作来执行您的请求。
为什么它不能按预期工作:
例如,从 MS Word 中复制和粘贴,您将看到Rich Text
所有格式都是数据有效负载的一部分。当您将其复制到剪贴板时,所有额外的样式元数据都会与文本一起出现。如果您将该数据粘贴到富文本编辑器(不是直接的text input
)中,例如 Wordpress 的 Admin,那么该编辑器包会将您看不到的文本元数据转换为等效的 HTML 样式。
但是,当您从 HTML(在您的浏览器中)复制时,您得到的只是没有所有“丰富”格式的文本。发生这种情况是因为浏览器使用外部上下文(如DOM
位置、tag
类型)并将CSS
HTML 内容样式化为呈现给您的内容。
富文本副本仅供您使用
Chrome 和 Firefox 有多个浏览器插件,它们会拦截您的复制请求,创建格式,然后将其粘贴到剪贴板。只需向 Google 寻求建议即可。
项目的所有用户的富文本副本
不幸的是,这更复杂。您需要编写代码来执行以下操作(这个答案有一个很好的例子):
推荐阅读
- c# - 如何从类中获取字符串
- c++ - 按下QToolButton时如何更改QAction的图标图像
- office365 - 是否可以使用 rest api 从 SharePoint 中检索删除网站集?
- java - 为什么这个函数打印它的作用?
- javascript - 如何在谷歌地图上添加带有不同图标的标记?
- wordpress - 如何将“-”符号更改为管道符号“|” 在 WordPress 标题中?
- scala - 无法坚持演员
- excel - 等待 Windows 是否仍在使用该文件
- ehcache - 如何将 ehcache.xml 中的属性外部化
- ruby-on-rails - Rails 分页表单偶尔不会发布参数