Latex za izvoze: izvoz Analiz z besedilom, ki je zelo dolgo

This commit is contained in:
patrik2020 2020-08-28 11:43:06 +02:00
parent 4b7a3b7ef1
commit b599116b2c

View File

@ -10,6 +10,7 @@
//include('../../function.php'); //include('../../function.php');
include('../../vendor/autoload.php'); include('../../vendor/autoload.php');
define("MAX_STRING_LENGTH", 12, true);
class LatexAnalysisElement{ class LatexAnalysisElement{
@ -842,6 +843,23 @@ class LatexAnalysisElement{
//$text = html_entity_decode($text, ENT_NOQUOTES, 'UTF-8'); //$text = html_entity_decode($text, ENT_NOQUOTES, 'UTF-8');
//$text = str_replace("š","š",$text); //$text = str_replace("š","š",$text);
//echo "Encoding ".$text."</br>"; //echo "Encoding ".$text."</br>";
//resevanje razbirajanja predolgih neprekinjenih besed in URL - spremenljivke za kasnejsi prilagojen izpis
$numOfWords = str_word_count($text, 0); //stevilo besed v besedilu
$numOfSpacesPrej = substr_count($text, ' '); //stevilo presledkov v besedilu
$stringLength = strlen($text); //dolzina besedila
$findSpace = ' ';
$findHttp = 'http://';
$findHttps = 'https://';
$posHttp = strpos($text, $findHttp);
$posHttps = strpos($text, $findHttps);
$isURL = 0;
/* if($posHttp !== false || $posHttps !== false) { //imamo URL naslov
$isURL = 1;
} */
//resevanje razbirajanja predolgih neprekinjenih besed in URL - konec
if($text == ''){ //ce ni teksta, vrni se if($text == ''){ //ce ni teksta, vrni se
return; return;
} }
@ -993,44 +1011,27 @@ class LatexAnalysisElement{
return strip_tags($text); //vrni tekst brez html tag-ov */ return strip_tags($text); //vrni tekst brez html tag-ov */
} }
//preveri, ce je url v besedilu (http:// ... ) in uredi Latex izpis le-tega tako, da se ga doda v \url{} //ureditev odstranjevanja presledkov, ce so na zacetku ali koncu besedila
$findHttp = 'http://'; if(($numOfSpacesPrej)){ //ce so prisotni presledki
$findHttps = 'https://'; for($numPresledkovTmp = 1; $numPresledkovTmp <= $numOfSpacesPrej; $numPresledkovTmp++){ //za vsak presledek
$posHttp = strpos($text, $findHttp); $posSpace = strpos($text, $findSpace); //najdi pozicijo presledka v besedilu//preveri, kje se nahaja
$posHttps = strpos($text, $findHttps); if($posSpace==0){ //ce je presledek na zacetku besedila
$isURL = 0; $text = substr_replace($text, '', $posSpace, 1); //odstrani presledek iz besedila
$stringLength = strlen($text);
if($posHttp !== false || $posHttps !== false) { //imamo URL naslov }elseif($posSpace==$stringLength){ //ce je presledek na koncu besedila
//$text = "\url{".$text."}"; $text = substr_replace($text, '', $posSpace, 1); //odstrani presledek iz besedila
$text = "\seqsplit{".$text."}"; $stringLength = strlen($text);
$isURL = 1; }
} }
//preveri, ce je url v besedilu (http:// ... ) in uredi Latex izpis le-tega tako, da se ga doda v \url{} - konec
//odstranitev presledkov na zacetku in koncu besedila kot predpriprava za razbijanja zelo dolgih neprekinjenih besedil
$findSpace = ' ';
$posSpace1 = strpos($text, $findSpace); //najdi pozicijo prvega presledka v besedilu
$posSpace2 = strripos($text, $findSpace); //najdi pozicijo zadnjega presledka v besedilu
/* echo "posSpace1: $posSpace1 </br>";
echo "posSpace2: $posSpace2 </br>"; */
if(($posSpace1 == 0) && $isURL == 0){
$numOfSpacesPrej = substr_count($text, ' '); //stevilo presledkov v besedilu $numOfSpacesPrej = substr_count($text, ' '); //stevilo presledkov v besedilu
//$text = str_replace(' ','',$text); //nadomesti presledke
$textLength = strlen($text);
//echo $text."</br>";
//$text = str_replace(' ','X',$text); //nadomesti presledke
//echo $text."</br>";
} }
//odstranitev presledkov na zacetku in koncu besedila kot predpriprava za razbijanja zelo dolgih neprekinjenih besedil - konec //ureditev odstranjevanja presledkov, ce so na zacetku ali koncu besedila - konec
//ureditev razbijanja zelo dolgih neprekinjenih besedil s seqsplit //priprava izpisa zelo dolgega besedila brez presledkov s seqsplit (URL, email, ...)
if($numOfSpacesPrej && $isURL == 0 && $textLength > 20){ if( ($numOfSpacesPrej == 0 && $stringLength >= MAX_STRING_LENGTH) ){ //ce v besedilu ni presledkov in je besedilo daljse od max dovoljene dolzine
$text = "\seqsplit{".$text."}"; $text = "\seqsplit{".$text."}"; //ni v redu seqsplit, ker ne dela, če so posebni znaki
//echo $text."</br>";
} }
//ureditev razbijanja zelo dolgih neprekinjenih besedil s seqsplit - konec //priprava izpisa zelo dolgega besedila brez presledkov - konec
return strip_tags($text); //vrni tekst brez html tag-ov return strip_tags($text); //vrni tekst brez html tag-ov
} }