![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 164 Pomógł: 21 Dołączył: 21.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Mam problem z php gd, a doklaniej z funkcja imagefontwidth() i imagefontheight(), gdy zrobie tak:
to wszystko dziala jak nalezy, ale gdy zmienie imagestring, na imagettftext i $font zamiast 5 bedzie rowny 'arial.ttf';, to funkcje imagefontwidth i height nie dzialaja.
oczywiscie plik arial.ttf jest tam gdzie powinien byc, bo gdy pomine funkcje imagefontwidth i height, to wszystko jest ok, ale sa mi one niezbedne do centrowania tekstu w pionie i poziomie, wiec co mam zrobic? Sa jakies podobne funkcje dla fontow ttf? Moglbym oczywiscie pozostac przy imagestring zamiast imagettftext, ale nawet jesli uda mi sie znalesc interesujace mnie kroje czcionek w formacie gdf, to i tak nie wiem jak zmieniac rozmiar tych czcionek, bo szukajac w manualu nic na ten temat nie znalazlem. Takze najprosciej jest uzyc do tego imagettftext, tylko jak te funkcje imagefontwidth i height "przystosowac" do czcionek tff? Ps. nie moge edytowac, bo dziwne krzaczki mi sie pokazauja, zamiast mojego tekstu. ![]() |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 6 Dołączył: 15.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Według manuala PHP: int imagefontheight ( int $font )
Z tego wynika, że nie można sobie ot tak podać nazwy czcionki jako parametru, tylko numer załadowanej już czcionki. Natomiast ładować możesz sobie bez problemu czcionki .gdf (znów za manualem: $font = imageloadfont('anonymous.gdf'); echo 'Font height: ' . imagefontheight($font); Dla ttf pewnie bedziesz musiał użyć imagettfbbox() http://www.php.net/manual/pl/function.imagettfbbox.php Funkcja zwraca współrzędne boxa okalającego wybrany przez Ciebie tekst z użyciem fontu TTF. Z tablicy wyciągasz interesujące Ciebie współrzędne i odejmujesz od siebie (zależnie od tego który rozmiar Cie interesuje), ale nie testowałem tego ![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 164 Pomógł: 21 Dołączył: 21.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
o imageloadfont dobrze wiem, czytalem manuala, ale nie znalazlem jak tak zaladowanej czcionce ustawic rozmiar (font size).
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 6 Dołączył: 15.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Pisałem o czcionkach .gdf .
Ty pisałeś, że masz czcionke TTF, więc musisz użyć funkcji W parametrach podajesz rozmiar fontu, kąt nachylenia, link do czcionki, i sam tekst. Nie wiem czy wcześniej przeczytałeś imagettfbbox jako imagettftext, czy coś? ![]() Sprawdz:
Trochę zamieszane jak na same wyciąganie rozmiaru zajmowanego przez tekst - może jest łatwiejsza opcja, ale powinno działać. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 164 Pomógł: 21 Dołączył: 21.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Tak czytalem juz o tym imagettfbox (czy jakos tak), ale w poprzednim poscie zapytalem sie, czy da sie ustawic rozmiar czcionki w imagestring tak jak w imagettftext, czy jakos w podobie.
Bo w sumie do tego co chce zrobic, wystarczyl by mi imagestring nawet z ta default'owa czcionka, ale rozmiar musi byc min. 20px takze nie wiem czy da sie ustawic w tym font size. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 6 Dołączył: 15.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy przypadkiem imagestring() nie wykorzystuje czcionek o stałym rozmiarze. Domyślnie jest chyba ich zdefiniowanych 5 z czego najwieksza to ta o identyfikatorze 5.
O ile nie zrobisz sobie własnej (większej) czcionki w formacie gdf (albo nie znajdziesz takiej) to bedziesz chyba musiał używać metody z ttf. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.05.2025 - 12:54 |