El Editor de texto enriquecido (RTE) proporciona a los autores una amplia gama de funciones para editar su contenido de texto. Se proporcionan iconos, cuadros de selección, barras de herramientas y menús para una experiencia de edición de texto WYSIWYG.
Para saber cómo utilizar las funciones RTE para la creación, consulte Usar el editor de texto enriquecido para la creación. RTE se puede configurar para habilitar, deshabilitar y ampliar las funciones disponibles en los componentes de creación. El siguiente flujo de trabajo ilustra un orden recomendado para completar las tareas de configuración de RTE en Experience Manager.
Figura: Flujo de trabajo típico para configurar el Editor de texto enriquecido
La IU táctil es la IU estándar para AEM. Adobe ha introducido la IU táctil con diseño interactivo para el entorno de creación, en la versión 5.6. La IU táctil está diseñada para dispositivos táctiles y de escritorio. La IU difiere considerablemente de la IU clásica original.
Figura: Barra de herramientas del Editor de texto enriquecido en la IU táctil
Figura: Barra de herramientas del Editor de texto enriquecido en la IU clásica
Los autores pueden crear y editar contenido textual en AEM utilizando los distintos modos de componentes. Las opciones de la barra de herramientas para crear y dar formato al contenido y la experiencia del usuario de los componentes habilitados para RTE en diferentes modos de edición varían según las configuraciones de RTE.
Modo de edición | Área de edición | Funciones recomendadas para habilitarlas | IU táctil | IU clásica |
---|---|---|---|---|
En línea | Edición in situ para ediciones rápidas y secundarias; Formato sin abrir un cuadro de diálogo | Características mínimas de RTE | Y | Y |
Pantalla completa RTE | Cubre toda la página | Todas las funciones RTE requeridas | Y | N |
Cuadro de diálogo | Cuadro de diálogo sobre el contenido de la página, pero no cubre toda la página | Todas las funciones RTE necesarias en la IU clásica; activar las funciones con cautela en la interfaz de usuario táctil | Y | Y |
Diálogo de pantalla completa | Igual que el modo de pantalla completa; contiene campos del cuadro de diálogo junto con RTE | Todas las funciones RTE requeridas | Y | N |
La función de edición de origen no está disponible en el modo de edición en línea en la IU táctil. No se pueden arrastrar imágenes en el modo de pantalla completa. Todas las demás funciones funcionan en todos los modos.
Cuando se abre (con un doble toque o clic lento), el contenido se puede editar dentro de la página. Se presenta una barra de herramientas compacta con opciones básicas.
Figura: Edición en línea con la barra de herramientas básica en la IU táctil
En la IU clásica, un doble clic lento en el componente permite la edición en línea y un contorno naranja resalta el contenido. Si el buscador de contenido está abierto, se muestra una barra de herramientas con las opciones de formato RTE disponibles en la parte superior de la ventana. Si el Buscador de contenido no está abierto, las opciones de formato no se muestran y solo puede realizar ediciones básicas de texto.
AEM componentes se pueden abrir en la vista de pantalla completa que oculta el contenido de la página y ocupa la pantalla disponible. Considere la posibilidad de editar en pantalla completa una versión detallada de la edición en línea, ya que ofrece las mejores opciones de edición. Se puede abrir haciendo clic en , en la barra de herramientas compacta, al utilizar el modo de edición en línea.
El modo de pantalla completa del cuadro de diálogo proporciona, una barra de herramientas RTE detallada y las opciones y los componentes disponibles en el modo de diálogo. Solo es aplicable a un cuadro de diálogo que contenga RTE junto con otros componentes.
Figura: La barra de herramientas detallada de RTE al editar en modo de pantalla completa en la IU táctil
Cuando se hace doble clic en un componente en la IU clásica, se abre un cuadro de diálogo para editar el contenido. El cuadro de diálogo se abre sobre la página existente. En algunos casos específicos, el cuadro de diálogo se abre como una ventana emergente. Por ejemplo, cuando un componente Texto forma parte de una columna en un diseño de página de varias columnas y el área disponible para el cuadro de diálogo es menor.
Figura: Modo de edición de cuadro de diálogo en la IU táctil
Figura: Cuadro de diálogo en la IU clásica que contiene una barra de herramientas detallada para editarla
La funcionalidad está disponible a través de una serie de complementos, cada uno con:
Una propiedad features
:
Cuando corresponda, más propiedades y opciones que requieren una configuración especializada.
Las funciones básicas de RTE se activan o desactivan según el valor de la propiedad features
en un nodo específico del complemento apropiado.
La tabla siguiente muestra los complementos actuales:
features
.ID del complemento | características | Descripción |
---|---|---|
editar | cortar copiar pegar-predeterminado pegar-plaintext pegar-wordhtml | Corte, copie y, los tres modos de pegado. |
findreplace | buscar reemplazar | Busque y reemplace. |
format | subrayado en negrita cursiva | Formato de texto básico. |
image | image | Compatibilidad con imágenes básicas (arrastre desde el contenido o el Buscador de contenido). En función del explorador, la compatibilidad con tiene comportamientos diferentes para los autores |
keys | Para definir este valor, consulte tab size. | |
justify | justifyleft justifycenter justificado | Alineación del párrafo. |
vínculos | modifylink desvincular anclaje | Hipervínculos y anclajes. |
listas | sangría ordenada sin ordenar | Este complemento controla la sangría y las listas; incluir listas anidadas. |
misctools | specialchars sourceedit | Las herramientas varias permiten a los autores introducir caracteres especiales o editar el origen HTML. Además, puede agregar un rango completo de caracteres especiales si desea definir su propia lista. |
Paraformato | paraformat | Los formatos de párrafo predeterminados son Párrafo, Encabezado 1, Encabezado 2 y Encabezado 3 (<p> , <h1> , <h2> y <h3> ). Puede añadir más formatos de párrafo o ampliar la lista. |
ortografía | texto de comprobación | Corrector ortográfico según la lengua. |
estilos | estilos | Compatibilidad con estilos mediante una clase CSS. Añada un nuevo estilo de texto si desea añadir (o ampliar) su propio rango de estilos para utilizarlo con el texto. |
subsuperíndice | superíndice de subíndice | Extensiones a los formatos básicos, adición de subscript y superscript. |
tabla | tabla removible insertrow removerow insertcolumn removecolumn cellprops mergecells separtcell selectrow selectcolumns | Consulte configurar estilos de tabla si desea agregar sus propios estilos para tablas completas o celdas individuales. |
deshacer | deshacer rehacer | Tamaño del historial de operaciones deshacer y rehacer. |
El complemento de pantalla completa no es compatible con el modo de cuadro de diálogo. Uso de la configuración dialogFullScreen
para configurar la barra de herramientas para el modo de pantalla completa.
El modo de edición RTE (y la IU) que proporcione a sus autores decide la ubicación de los detalles de configuración cuando está activando los complementos RTE:
Modo de edición | Ubicación para la IU táctil | Ubicación para la IU clásica |
---|---|---|
En línea | cq:editConfig/cq:inplaceEditing |
cq:editConfig/cq:inplaceEditing |
Pantalla completa | cq:editConfig/cq:inplaceEditing |
No aplicable |
Cuadro de diálogo | cq:dialog |
dialog |
Cuadro de diálogo de pantalla completa | cq:dialog |
No aplicable |
No asigne al nodo cq:inplaceEditing
el nombre config
. En el nodo cq:inplaceEditing
, defina las siguientes propiedades:
configPath
String
No asigne al nodo de configuración RTE el nombre config
. De lo contrario, las configuraciones de RTE surten efecto solo para los administradores y no para los usuarios del grupo content-author
.
Configure las siguientes propiedades que se aplican en el modo de edición de cuadro de diálogo solo en la IU táctil:
useFixedInlineToolbar
: Establezca esta propiedad booleana definida en el nodo RTE (uno con sling:resourceType= cq/gui/components/authoring/dialog/richtext
) en True
, para que la barra de herramientas RTE sea fija en lugar de flotante.
Cuando esta propiedad es verdadera, la edición de Richtext se inicia, de forma predeterminada, en el evento "foundation-contentloaded".
Para evitarlo, establezca la propiedad customStart
en True
y déclencheur el evento 'rte-start' para iniciar la edición RTE. Cuando esta propiedad es 'true', el comportamiento predeterminado, rte start on click, no funciona.
customStart
: Establezca esta propiedad booleana definida en el nodo RTE en True
, para controlar cuándo iniciar RTE activando el evento rte-start
.
rte-start
: Déclencheur este evento en el contenteditable-div
de RTE, cuándo iniciar la edición de RTE. Esto solo funciona si customStart
se ha establecido en true.
Cuando se utiliza RTE en el cuadro de diálogo táctil, es obligatorio establecer la propiedad useFixedInlineToolbar
en true para evitar problemas.
Puede definir en qué selector HTML se inicia el editor de texto configurando las siguientes propiedades:
editElementQuery
: Definida en cq:InplaceEditingConfig
, esta propiedad se utiliza para especificar un selector del elemento HTML en el que se iniciará la edición en línea para el componente de texto. Si no se especifica, la edición en línea se inicia directamente en el HTML del componente de texto.textPropertyName
: Definida en cq:InplaceEditingConfig
, esta propiedad se utiliza para especificar el nombre de la propiedad que se guardará en el nodo de contenido donde el valor HTML del componente de texto persistirá tras la edición en línea.La propiedad correspondiente para el modo de diálogo es name
.
Las funcionalidades de RTE están disponibles a través de una serie de complementos, cada uno con propiedad de características. Puede configurar la propiedad features para habilitar o deshabilitar las distintas funciones de cada complemento.
Para obtener configuraciones detalladas de los complementos RTE, consulte cómo activar y configurar los complementos RTE.
Descargue esta configuración de ejemplo para comprender cómo configurar RTE. En este paquete todas las funciones están habilitadas.
El componente de texto Componentes principales permite que los editores de plantillas configuren muchos complementos RTE en la interfaz de usuario como políticas de contenido, lo que elimina la necesidad de una configuración técnica. Las políticas de contenido pueden funcionar con las configuraciones de la interfaz de usuario de RTE como se describe. Para obtener más información, consulte la configuración de la interfaz de usuario RTE y las políticas de contenido, Creación de plantillas de página y la documentación para desarrolladores de componentes principales.
Para fines de referencia, los componentes de texto predeterminados (entregados como parte de una instalación estándar) se pueden encontrar en:
/libs/wcm/foundation/components/text
/libs/foundation/components/text
Para crear su propio componente de texto, copie el componente anterior en lugar de editar estos componentes.
AEM le permite configurar la IU del Editor de texto enriquecido de forma diferente para los distintos modos de edición. A continuación se proporciona la configuración predeterminada. Puede anular estos valores predeterminados según sus necesidades.
Para obtener la mejor experiencia de creación:
Paste
. Utilice la configuración dialogFullScreen
que se describe a continuación.<uiSettings jcr:primaryType="nt:unstructured">
<cui jcr:primaryType="nt:unstructured">
<inline
jcr:primaryType="nt:unstructured"
toolbar="[format#bold,format#italic,format#underline,#justify,#lists,links#modifylink,links#unlink,#paraformat]">
<popovers jcr:primaryType="nt:unstructured">
<justify
jcr:primaryType="nt:unstructured"
items="[justify#justifyleft,justify#justifycenter,justify#justifyright]"
ref="justify"/>
<lists
jcr:primaryType="nt:unstructured"
items="[lists#unordered,lists#ordered,lists#outdent,lists#indent]"
ref="lists"/>
<paraformat
jcr:primaryType="nt:unstructured"
items="paraformat:getFormats:paraformat-pulldown"
ref="paraformat"/>
</popovers>
</inline>
<dialogFullScreen
jcr:primaryType="nt:unstructured"
toolbar="[format#bold,format#italic,format#underline,justify#justifyleft,justify#justifycenter,justify#justifyright,lists#unordered,lists#ordered,lists#outdent,lists#indent,links#modifylink,links#unlink,table#createoredit,#paraformat,image#imageProps]">
<popovers jcr:primaryType="nt:unstructured">
<paraformat
jcr:primaryType="nt:unstructured"
items="paraformat:getFormats:paraformat-pulldown"
ref="paraformat"/>
</popovers>
</dialogFullScreen>
<tableEditOptions
jcr:primaryType="nt:unstructured"
toolbar="[table#insertcolumn-before,table#insertcolumn-after,table#removecolumn,-,table#insertrow-before,table#insertrow-after,table#removerow,-,table#mergecells-right,table#mergecells-down,table#mergecells,table#splitcell-horizontal,table#splitcell-vertical,-,table#selectrow,table#selectcolumn,-,table#ensureparagraph,-,table#modifytableandcell,table#removetable,-,undo#undo,undo#redo,-,table#exitTableEditing,-]">
</tableEditOptions>
</cui>
</uiSettings>
Para el modo en línea y el modo de pantalla completa se usan distintas configuraciones de interfaz de usuario. La propiedad toolbar se utiliza para especificar los botones de la barra de herramientas. Por ejemplo, si el botón es en sí mismo una función (por ejemplo, Bold
), se especifica como PluginName#FeatureName
(por ejemplo, links#modifylink
). Si el botón es una ventana emergente (que contiene algunas características de un complemento), se especifica como #PluginName
(por ejemplo, #format
). Separadores ( | ) entre un grupo de botones se puede especificar con "-".
El nodo emergente en modo en línea o en pantalla completa contiene una lista de las ventanas emergentes que se utilizan. Cada nodo secundario del nodo popovers
recibe el nombre del complemento (por ejemplo, format
). Tiene una propiedad items
que contiene una lista de características del complemento (por ejemplo, format#bold
).
Los administradores pueden controlar las opciones de RTE mediante políticas de contenido, por ejemplo, en lugar de realizar la configuración como se ha descrito anteriormente. Las políticas de contenido definen las propiedades de diseño de un componente cuando se utilizan como parte de una plantilla editable. Por ejemplo, si se utiliza un componente de texto que utilice el editor de texto enriquecido con una plantilla editable, la política de contenido puede definir que la opción en negrita esté disponible y que haya algunas opciones de formato de párrafo disponibles. Las políticas de contenido se pueden reutilizar y se pueden aplicar en varias plantillas.
A partir de AEM 6.4 Service Pack 3, las opciones disponibles en el flujo RTE descendente desde las configuraciones de interfaz de usuario a las políticas de contenido.
A modo de ejemplo, puede ver la documentación de los componentes principales de texto.
Puede personalizar la asignación entre los iconos de Coral que se muestran en la barra de herramientas de RTE y los comandos disponibles. No puede utilizar ningún otro icono aparte de los iconos de Coral.
Cree un nodo denominado icons
en uiSettings/cui
.
Cree nodos para iconos individuales debajo de él.
En cada uno de los nodos de icono individuales, especifique un icono de Coral y un comando para asignarlo al icono.
A continuación se muestra un fragmento de ejemplo para asignar el comando Bold al icono Coral llamado textItalic
.
<text jcr:primaryType="nt:unstructured" sling:resourceType="cq/gui/components/authoring/dialog/richtext" name="./text" useFixedInlineToolbar="{Boolean}true">
<rtePlugins jcr:primaryType="nt:unstructured">
<format jcr:primaryType="nt:unstructured" features="bold,italic"/>
</rtePlugins>
<uiSettings jcr:primaryType="nt:unstructured">
<cui jcr:primaryType="nt:unstructured">
<inline jcr:primaryType="nt:unstructured"
toolbar="[format#bold,format#italic,format#underline,links#modifylink,links#unlink]">
</inline>
<icons jcr:primaryType="nt:unstructured">
<bold jcr:primaryType="nt:unstructured"
command="format#bold"
icon="textItalic"/>
</icons>
</cui>
</uiSettings>
</text>
En una página, puede incluir la clientlib CoralUI 2 RTE o la clientlib CoralUI 3 RTE . De forma predeterminada, el Editor de texto enriquecido incluye la clientlib CoralUI 3 RTE. Para cambiar a CoralUI 2 RTE, realice los siguientes pasos.
Adobe no recomienda el cambio como práctica recomendada. Cambie a CoralUI 2 RTE como último recurso. Los complementos personalizados para CoralUI 2 RTE funcionan con CoralUI 3 RTE si los complementos no dependen de elementos internos de RTE, como clases. Si utiliza complementos personalizados para CoralUI 3 RTE, utilice la biblioteca rte.coralui3
.
Superponga el nodo /libs/cq/gui/components/authoring/editors/clientlibs/core
en /apps
y haga lo siguiente:
rte.coralui3
por rte.coralui2
para la propiedad dependencias.cq.authoring.editor.core.inlineediting.rte.coralui3
por cq.authoring.editor.core.inlineediting.rte.coralui2
para la propiedad incrustar.cq.authoring.rte.coralui3
por cq.authoring.rte.coralui2
para la propiedad incrustar.Superponga los nodos /libs/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui3
y /libs/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui2
en /apps
.
Elimine la categoría cq.authoring.dialog
de /apps/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui3
y añádala a /apps/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui2
.
Cambie cualquier otra dependencia que se incluya en la página de rte.coralui3
a rte.coralui2
. Por ejemplo, después de superponer el nodo /libs/mcm/campaign/components/touch-ui/clientlibs/rte
en /apps
, cambie cualquier dependencia en él de rte.coralui3
a rte.coralui2
.
Superponga el nodo cq/ui/widgets
en /apps
. Reemplace la dependencia cq.rte
en el nodo /apps/cq/ui/widgets
por cq.coralui2.rte
.
CoralUI 2 RTE utiliza plantillas de controladores para los cuadros de diálogo de los complementos. Por lo tanto, la clientlib RTE de CoralUI 2 tenía una dependencia de la clientlib de controladores. CoralUI 3 RTE no utiliza plantillas de controladores y no tiene ninguna dependencia asociada. Si los complementos personalizados utilizan plantillas de controladores, incluya la clientlib de controladores en la página web.
Para obtener más información sobre la configuración de RTE, consulte la referencia AEM Widget API.
En concreto, para ver los complementos y las opciones relacionadas disponibles:
El componente CQ.form.RichText proporciona un campo de formulario para editar información de texto con estilo (texto enriquecido). Para conocer todos los parámetros disponibles para el formulario de texto enriquecido, consulte las Opciones de configuración.
El componente RichText proporciona una amplia gama de funciones utilizando complementos enumerados en CQ.form.rte.plugins.Plugin. Para cada complemento:
También dispone de más información sobre las reglas HTML para los vínculos.
Las opciones anteriores pueden utilizarse para ampliar y personalizar su propio RTE. Por ejemplo, para enumerar los anclajes disponibles en la página al crear un vínculo, puede proporcionar su propia implementación de LinkPlugin
.
AEM capacidad RTE tiene las siguientes limitaciones:
Las capacidades de RTE solo se admiten en los cuadros de diálogo de AEM componente. RTE no es compatible con asistentes o formularios de base como Propiedades de página y Scaffolding en la IU táctil.
AEM no funciona en Dispositivos híbridos.
No asigne un nombre al nodo de configuración RTE config
. De lo contrario, la configuración de RTE surte efecto solo para los administradores y no para los usuarios del grupo content-author
.
RTE no admite iframe o iframe en línea para incrustar contenido.