Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [pear] Spreadsheet_Excel_Writer przełamanie linii w komentarzu dla komórki
DuduS
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 30.06.2003

Ostrzeżenie: (0%)
-----


Witam,

chcę wygenerować plik XLS, do tego celu używam: Spreadsheet_Excel_Writer.
Chodzi o to że muszę wstawić do komórki dość rozbudowany komentarz poprzez Worksheet::writeNote który przydało by się jakoś sensownie sformatować, wstawiając przełamania linii.
Niestety nie wiem jaki znak za to odpowiada, próbowałem do komentarza wstawiać: \n, \r\n, Chr(10), jednak zawsze wyświetlane są one jako zwykły tekst.

Może ktoś już spotkał się z tym problemem ?
Go to the top of the page
+Quote Post
Pilsener
post
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Spróbuj dać:
  1. $komentarz = 'abc'."\r\n".'xyz';


Jak nie pomoże to spróbuj zakodować to w windows i dopiero wtedy dodać. Gdy i to nie pomoże to widocznie się nie da, tak samo jak formatowanie tekstu komentarza etc. Przecież nikt nie przepisze wszystkich możliwości excela do spreadsheet writera (IMG:style_emoticons/default/smile.gif)

Ten post edytował Pilsener 17.12.2009, 10:10:44
Go to the top of the page
+Quote Post
skowron-line
post
Post #3





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Ja się spotkałem (IMG:style_emoticons/default/smile.gif) i z rozwiązaniem też się spotkałem
http://pear.php.net/manual/en/package.file...writestring.php tu w komentarzach jest napisane.
  1. $fmt = $xls->addFormat(array('TextWrap' => 1));


Ten post edytował skowron-line 17.12.2009, 10:13:14
Go to the top of the page
+Quote Post
DuduS
post
Post #4





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 30.06.2003

Ostrzeżenie: (0%)
-----


Dzięki panowie, naprowadziliście mnie na rozwiązanie.
Wystarczy że dodam php'owy znak chr(10) nie zakodowany:

  1. $note .= $comment.Chr(10);
  2. $worksheet->writeNote ($row, $col, $note);


Nie będę otwierał kolejnego temat więc napiszę tutaj.

Kodowanie w MySQL mam w UTF-8 i przy pobieraniu danych z bazy ustawiam: "SET NAMES 'utf8'"

Jako kodowanie dokumentu ustawiam:
  1. $worksheet->setInputEncoding('utf-8');


Oczywiście wszystkie narodowe znaczki po wygenerowaniu do XLS zostają przerobione na krzaczki więc ustawiam:
  1. $workbook->setVersion(8);
i wszystko zaczęło się wyświetlać jak należy.

Niestety wtedy nie działa polecenie wstawiania komentarzy:
  1. $worksheet->writeNote
co zresztą cały czas funkcjonuje jako bug: http://pear.php.net/bugs/bug.php?id=5347

Próbowałem przekonwertować wyświetlane stringi za pomocą iconv, jednak bez powodzenia przy polskich znaczkach.

Czy ktoś może spotkał się z jakimś patchem który poprawnie generuje komentarze przy ustawionej zmiennej setVersion(8) (typ dokumentu BIFF), a może znacie jakiś inny sposób na wyświetlenie wszystkich znaków narodowych w jednym dokumencie?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 12:33