Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - eRXeTe

#1
.NET (C#, VB.NET, ASP) / Division Silabas Texto
10 Febrero 2017, 08:41 AM
Buenas. Me gustaría que alguien me pudiese ayudar con este tema. Necesito en código C# la división de un texto por carácteres saltando de línea. Pero en esa division se debe evitar (en la medida de lo posible) la división por sílabas. Añadiendo un -. Ejemplo:
lorem ipsum dolor sit amet consectetur adipiscing elit
Columnas: 5

Lorem
ipsum
dolor
sit
amet
con-
secte-
tur a-
dipis-
cing
elit


El código que tengo de momento es éste, esta hecho en PHP que me es más facil:

Código (php) [Seleccionar]
<?php

// Texto (Introducido por el usuario)
$text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam accumsan mattis diam vitae finibus. Maecenas id sagittis arcu. Mauris ac augue turpis. Vestibulum rhoncus ultrices placerat. Proin egestas pulvinar velit, a dignissim massa convallis non. Aliquam mi neque, sagittis ac auctor porta, luctus at ligula. Donec tortor diam, consectetur eget turpis id, finibus hendrerit lacus. Vivamus tempus eros sed accumsan venenatis.";

// Número de columnas (Introducidas por el usuario)
$columns = 10;

// Calcular la longitud del texto
$length = strlen($text);

/**
* $i - Permite ir imprimendo el caracter dentro del texto
* $j - Permite controlar el salto de línea
*/
for ($i = $j = 0; $i < $length; $i++) {
                
// Comprobar si hay que realizar un salto de línea
                
if ($j == $columns) {
                               
// Imprimir salto de línea
                              
echo $text[$i];
                               echo 
"<br/>";
                               
// Reiniciar el contador para el salto de línea
                               
$j = 0;
                               
// Saltar a la siguiente iteración del bucle
                               
continue;
                }
                
// El siguiente IF sustituye los espacios por guiones bajos
                // para verlos mejor. Se puede quitar.
                
if ($text[$i] == ' ') {
                               echo 
" ";
                } else {
                               
// Imprimir el caracter correspondiente
                               
echo $text[$i];
                }
                
// Incrementar el contador para el salto de línea
                
$j++;
}

?>


Muchisimas gracias de antemano.




· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex