HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Beitrag von Velindos »

Hallo Leute,
bei meiner HTML-Page werden die Umlaute falsch angezeigt unter PB 6.00, obwohl der Code unter PB 5.71 funktioniert!

Code: Alles auswählen

; ------------------------
DataSection
  Plugin_Velindos_Ziegensauger:
  IncludeBinary "D:\[Pure@API]\[STORE]\PLUGIN\Ziegensauger.html": Data.s 0
EndDataSection
; ------------------------
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  WebGadget(0, 10, 10, 580, 280, "")
  SetGadgetItemText(0, #PB_Web_HtmlCode, PeekS(?Plugin_Velindos_Ziegensauger,-1,#PB_Ascii)) 
  Repeat 
  Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
; ------------------------

Was müsste man ändern ... Jemand einen Tip?

Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
Bisonte
Beiträge: 2427
Registriert: 01.04.2007 20:18

Re: HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Beitrag von Bisonte »

da die datei fehlt, und da es sich bei einer HTML Seite meist um eine UTF8 Kodierung handelt....

probiere einfach mal :

Code: Alles auswählen

SetGadgetItemText(0, #PB_Web_HtmlCode, PeekS(?Plugin_Velindos_Ziegensauger, -1, #PB_UTF8)) 
oder

Code: Alles auswählen

SetGadgetItemText(0, #PB_Web_HtmlCode, PeekS(?Plugin_Velindos_Ziegensauger, -1, #PB_UTF8|#PB_BYTELENGTH)) 
PureBasic 6.04 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Beitrag von Velindos »

Hallo Bisonte,

Habe ich gemacht, ändert aber nichts!

Nun, die html habe ich mal Online gestellt unter:

Code: Alles auswählen

; ------------------------
DataSection
  Plugin_Velindos_Ziegensauger:
  IncludeBinary "D:\[Pure@API]\[STORE]\PLUGIN\Ziegensauger.html": Data.s 0
EndDataSection
; ------------------------
If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  WebGadget(0, 10, 10, 580, 280, "http://www.velindos.com/Austausch/")
;   SetGadgetItemText(0, #PB_Web_HtmlCode, PeekS(?Plugin_Velindos_Ziegensauger,-1,#PB_Ascii)) 
  Repeat 
  Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
; ------------------------
Hier läuft das mit den Umlauten! Ist die selbe die ich Lade!

Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Nino
Beiträge: 1300
Registriert: 13.05.2010 09:26
Wohnort: Berlin

Re: HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Beitrag von Nino »

In der HTML-Datei steht:
charset=windows-1252
Ändere das am besten in utf-8 (alles andere ist aus dem letzten Jahrhundert).
Speichere dann die HTML-Datei auch in dem Format ab, und benutze in PureBasic das #PB_UTF8-Flag.

Eine HTML-Datei kann übrigens nur 1 <title>-Element haben.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Beitrag von Velindos »

Hallo Nino,
Danke für den Tip!

Sollte ich wohl so machen!
Zeigt die Page im Webgadget nachwievor falsch an!
Im Browser aber nicht!

Nochmals Danke für den Tip mit dem Titel! Hat sich wohl einfach so eingeschlichen!

Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Nino
Beiträge: 1300
Registriert: 13.05.2010 09:26
Wohnort: Berlin

Re: HTML Page mit Umlauten wird falsch angezeigt unter PB 6.00

Beitrag von Nino »

Bei mir funktioniert es prima.

HTML-Datei, lokal gespeichert im Format UTF-8 ohne BOM:

Code: Alles auswählen

<!DOCTYPE html>
<html lang="de">

<head>
  <meta charset="utf-8">
  <title>Umlaut-Demo mit UTF-8</title>
</head>

<body>
  A-Umlaut = Ä<br>
  O-Umlaut = Ö<br>
  U-Umlaut = Ü<br>
  <br>
  a-Umlaut = ä<br>
  o-Umlaut = ö<br>
  u-Umlaut = ü<br>
</body>
</html>
PB-Code:

Code: Alles auswählen

; getestet mit PB 6.00 LTS unter Windows 11

DataSection
   MyPage:
   IncludeBinary "C:\Users\Nino\Desktop\Umlaut-Demo.htm"
   Data.i 0
EndDataSection


If OpenWindow(0, 0, 0, 600, 300, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) = 0
   MessageRequester("Fatal error", "Program terminated.")
   End
EndIf

WebGadget(0, 10, 10, 580, 280, "")
SetGadgetItemText(0, #PB_Web_HtmlCode, PeekS(?MyPage, -1, #PB_UTF8)) 

Repeat 
Until WaitWindowEvent() = #PB_Event_CloseWindow
Ergebnis:
Bild
Antworten