-
30.11.10 11:31 #1
- Registriert seit
- Nov 2007
- Beiträge
- 255
Hallo,
ist es möglich den text in einer Zelle zu kürzen,...
ja ich kenn die lösung von zeichen zählen,... aber die ist für mich nicht gut genug, da ich erstens nicht weiß wie lange die zelle ist und zweitens wenn ich einen "i" und "l" reichen Text schreibe ist der Text nach gleichvielen Zeichen kürzer wenn ich einen "m" und "w" reichen Text schreibe,...
ich möchte gerne das der Text, sobald er zu lange ist, mindestens drei "..." vor Zellen ende aufhört und in diesen Falle drei "."e hinten hingesetzt werden.
|Das ist ein Text der kurz genug ist |
|Dieser Text ist viel zu Lange deshalb wird er gek...|
ist das technisch machbar****?
Danke für eure hilfe
-
Dass einige Zeichen länger als andere sind, hängt von der Schrift ab. Du müsstest nun wissen wie die Breitenverhältnisse derm Buchstaben in der entsprechenden Schrift ist. Da man aber in CSS meistens eine ganze Schriftfamilie oder halt Alternativschriften anbietet, ist es für PHP eigentlich unmöglich zu wissen wie der Text in der Ausgabe aussieht.
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
30.11.10 12:48 #3
- Registriert seit
- Nov 2007
- Beiträge
- 255
gibt es die Möglichkeit den Text zu kürzen****?
bei Bildern gibt es die Möglichkeit overflow:hidden; damit kann ich alles was übersteht rausnehmen,... dies wäre für mich zumindest schon mal ein Anfang,...
wenn ich mal Zeit habe, versuch ich mal eine klasse zu schreiben die die Buchstaben ausmisst und dann einfach die Länge der Buchstaben im Text addiert,... mal schauen ob ich so was hinbekomme (vor allem in einer vertretbaren Zeit)
edit:
sehe gerade das overflow:hidden; nur für divs geeignet ist,... gibt es für tabellen sowas****?
kannich einen Zeilen umbruch verbieten? und was passiert dann****?Geändert von JesusFreak777 (30.11.10 um 12:50 Uhr)
-
30.11.10 12:53 #4
Bitte achte auf Groß- und Kleinschreibung.
Was nützt dir das dann aber? Ich verstehe die Anwendung nicht richtig.wenn ich mal Zeit habe, versuch ich mal eine klasse zu schreiben die die Buchstaben ausmisst und dann einfach die Länge der Buchstaben im Text addiert,... mal schauen ob ich so was hinbekomme (vor allem in einer vertretbaren Zeit)mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
30.11.10 12:57 #5
- Registriert seit
- Nov 2007
- Beiträge
- 255
naja, jetzt brauche ich eine Lösung in einer Zelle das ich möglichst viel Text in einer Zelle habe ohne Zeilenumbruch und ohne automatischen vergrößern der Zelle,... weiß aber noch nicht wie,...
später dann möchte ich das wie oben beschrieben haben,... z.B. ich weiß meine Zelle ist 100px groß,... mein Text 12x i + 17x e + 3x m,... = 120px dann wird der Text bei 95px abgeschnitten und ein ... dahinter gesetzt,... das wäre schön,...
-
Ansatz:
Du speicherst die Schrift auf dem Server
Du ermittelst die Textgrösse deines Textes über imagettfbbox().
Du entfernst von Hinten Wort um Wort und prüfst erneut, bis die Breite unterhalb deiner Limite ist.
Alternativ kann auch der ganze Text als Grafik generiert werden, ist aber nicht umbedingt von Vorteil was die Ladezeit der Seite angeht
Es wird verschiessen aussehen wenn (Ohne Gewähr auf Vollständigkeit):
item: Der User die Schrift nicht hat
item: Der User die Textgrössendarstellung an seinem Browser ändert---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
30.11.10 18:33 #7
- Registriert seit
- Sep 2004
- Ort
- Möglingen (BaWü)
- Beiträge
- 3.109
Yaslaws Idee etwas ausgebaut:
Geht so wie ich es verstanden habe nur mit True Typ Fonts und der Pfad zur Schrift muss exakt angegeben werden. Aber dann geht es wohl.PHP-Code:<?php
function breite ($text) {
$pfad = 'Pfad\ARIAL.TTF';
$punkt = "";
$coordinates = imagettfbbox ( 12, 0, $pfad, $text);
while ($coordinates[4] > 200) {
$punkt = "...";
$coordinates = imagettfbbox ( 12, 0, $pfad, $text);
$pos = strrpos($text, " ");
$text = substr($text, 0, $pos);
}
echo $text .$punkt;
}
$text = "Der ist kurz";
echo breite($text);
echo "<br />";
$text = "Das ist ein ziemlich langer Text";
echo breite($text);
?>
Im Beispiel wird der Text gekürzt wenn er Breiter als 200 Pixel ist.Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.
Ähnliche Themen
-
Text kürzen lassen
Von truckdriver im Forum PHPAntworten: 14Letzter Beitrag: 07.07.07, 20:00 -
Text in eine variable kürzen
Von Trasher im Forum PHPAntworten: 1Letzter Beitrag: 06.03.07, 21:50 -
Text in Grafik kürzen
Von webraccoon im Forum PHPAntworten: 2Letzter Beitrag: 23.04.05, 13:39 -
Text mit BB-Codes kürzen
Von Sunray im Forum PHPAntworten: 0Letzter Beitrag: 17.02.05, 23:24 -
Text kürzen
Von CyberMax im Forum PHPAntworten: 6Letzter Beitrag: 06.11.03, 12:39



1Danke

Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren