Page 1 of 1

Emojis [MULTI SYS]

Posted: Wed Nov 19, 2025 8:48 pm
by minimy
Emojis for windows, mac and linux using the right font.

Code: Select all

; Emoji fonts
CompilerIf #PB_Compiler_OS= #PB_OS_Windows
  fontEmoji.s= "Segoe UI Emoji"
CompilerElseIf #PB_Compiler_OS= #PB_OS_MacOS
  fontEmoji.s= "Apple Color Emoji"
CompilerElseIf #PB_Compiler_OS= #PB_OS_Linux
  fontEmoji.s= "Noto Color Emoji"
CompilerEndIf
LoadFont(0,fontEmoji,20,#PB_Font_HighQuality)

winMain= OpenWindow(#PB_Any,0,0,1400,800,"test",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  canvas= CanvasGadget(#PB_Any,5,5,1400,800)

StartDrawing(CanvasOutput(canvas))
  DrawingMode(#PB_2DDrawing_Transparent)
  FrontColor(0):BackColor($ffffff)
  DrawingFont(FontID(0))

  h=50
  y=-h
  Box(0,0,h-1,h-1,$88ff88)
  y+h:DrawText(0, y,"โ—€๏ธ ๐Ÿ”ผ ๐Ÿ”ฝ โ–ถ๏ธ ๐Ÿ—บ๏ธ โ˜ขโ˜ฃโ˜•โ˜”โ˜ฏโ˜ฎโ˜ชโ˜ฆโ˜ธโ™Ÿโ™ โ™ฃโ™ฅโ™ฆโ›ฝโœ‚โœ—โœ“โœ”โœ˜โœจโœตโฃโคดโคต")
  y+h:DrawText(0, y,"๐Ÿงฉ โŒ โœ… โš  ๐ŸŽฏ ๐Ÿ” ๐Ÿ›ก๏ธ ๐ŸŒ ๐Ÿงญ ๐Ÿ’ป ๐Ÿ“Š ๐Ÿ’ฌ ๐Ÿ”’ ๐Ÿ”ช ๐ŸŽ™๏ธ ๐ŸŽน ๐Ÿ”ด")
  y+h:DrawText(0, y,"๐Ÿง  ๐Ÿ˜Ž ๐Ÿงช ๐Ÿ” ๐Ÿ“œ ๐Ÿ”ง ๐Ÿ”ค โฑ๏ธ ๐Ÿ“ฆ ๐ŸŒ ๐Ÿ“‚ ๐Ÿงผ ๐Ÿ“ ๐Ÿงฌ ๐ŸŽต ๐ŸŽผ ๐ŸŒฟ ๐Ÿƒ ๐Ÿ€๐Ÿข ๐Ÿ  ๐Ÿ›๏ธ ๐Ÿฌ ๐Ÿ—๏ธ๐Ÿ’ก ๐Ÿช” ๐Ÿ•ฏ๏ธ๐ŸŒณ ๐ŸŒฒ๐Ÿšง")
  y+h:DrawText(0, y,"โžก๏ธ โฌ…๏ธ โฌ†๏ธ โฌ‡๏ธ โ†”๏ธ โ†•๏ธ โ†–๏ธ โ†—๏ธ โ†˜๏ธ โ†™๏ธ ๐Ÿ”„ ๐Ÿ” ๐Ÿ”ƒ ๐Ÿ”™ ๐Ÿ”š ๐Ÿ”› ๐Ÿ”œ ๐Ÿ”ผ ๐Ÿ”ฝ ๐Ÿ ๐Ÿšฆ๐Ÿ›ž๐Ÿ›‘๐Ÿ›ฃ๏ธ๐Ÿงโ€โ™‚๏ธ๐Ÿšถโ€โ™€๏ธ")
  y+h:DrawText(0, y,"๐Ÿ” ๐Ÿ”Ž ๐Ÿ”ฌ ๐Ÿ”ญ ๐Ÿง ๐Ÿ‘๏ธ ๐Ÿ‘€ ๐Ÿงฟ ๐ŸŽž๏ธ ๐Ÿ“ฝ๏ธ ๐ŸŽฌ ๐Ÿ–ผ๏ธ ๐ŸชŸ โ›ฝโœŠโœ‹โœŒโœโŽโœ…โคดโ†™โ†˜โ†—โ†–โ†•โ†”โ˜ โ˜‘โ†ฐโ†ฑโ†ฒโ†ณโ†ด โ†ฉ โ†ชโ†บโ†ป")
  y+h:DrawText(0, y,"๐Ÿ”„ ๐Ÿ”ƒ ๐Ÿ” ๐Ÿ”‚ ๐Ÿ”€ ๐Ÿง‘โ€๐ŸŽค ๐Ÿง‘โ€ ๐ŸŽง ๐Ÿง‘โ€๐Ÿ’ป ๐Ÿง‘โ€๐ŸŽจ ๐Ÿง‘โ€๐Ÿซ ๐Ÿง‘โ€๐Ÿ”ฌ ๐Ÿง‘โ€๐Ÿš€ ๐Ÿง‘โ€โœˆ๏ธ โœˆ๐Ÿš— ๐Ÿš™ ๐Ÿš• ๐Ÿšš ๐Ÿšœ ๐Ÿ›ป ๐Ÿš˜")
  y+h:DrawText(0, y,"๐Ÿ”Œ ๐Ÿ”‹ ๐Ÿ”‹โšก ๐Ÿ“ด ๐Ÿ”˜ โป โผ โน๏ธ โฏ๏ธ โบ๏ธ โ๏ธ ๐Ÿ“ป ๐Ÿ“บ ๐Ÿ“ท ๐Ÿ“ธ ๐ŸŽฅ")
  y+h:DrawText(0, y,"โš™๏ธ ๐Ÿ› ๏ธ ๐Ÿ”ง ๐Ÿ”ฉ ๐Ÿงฐ ๐Ÿงฒ ๐Ÿช› ๐Ÿชš ๐Ÿชœ ๐Ÿฉน ๐Ÿ“‹ ๐Ÿ“Ž ๐Ÿงท ๐Ÿ“ฅ โฒโฑโฐโŒจโณ โ–ฆ โš”๏ธ๐Ÿ”ฅ")
  y+h:DrawText(0, y,"โœ‚๏ธ ๐Ÿ“ ๐Ÿ“‚ ๐Ÿ—‚๏ธ ๐Ÿ—ƒ๏ธ ๐Ÿ—„๏ธ ๐Ÿ—‘๏ธ ๐Ÿ“– ๐Ÿงพ ๐Ÿ“„ ๐Ÿ— ๐Ÿ“ โœ๏ธ ๐Ÿ–Š๏ธ ๐Ÿ–‹๏ธ ๐Ÿ–Œ๏ธ ๐Ÿ–๏ธ๐ŸŒˆ๐ŸŽจ ๐Ÿ‘‰๐Ÿชก")
  y+h:DrawText(0, y,"โœ… โŒ โš ๏ธ โ„น๏ธ ๐Ÿ”” ๐Ÿ”• ๐Ÿ—๏ธ ๐Ÿ”’ ๐Ÿ”“ ๐Ÿ” ๐Ÿ›‘ โ›” ๐Ÿšซ ๐Ÿท๏ธ ๐Ÿ–ฅ๏ธ ๐ŸŒ ๐Ÿ“ ๐ŸŽž๏ธ ๐ŸŽถ ๐Ÿ–ผ๏ธ ๐Ÿง‘โ€๐Ÿ’ป โš™๏ธ ๐ŸงŠ ๐Ÿงฉ")
  y+h:DrawText(0, y,"๐ŸŽš๏ธ ๐ŸŽ›๏ธ ๐ŸŽ™๏ธ ๐ŸŽž๏ธ ๐Ÿ“ธ ๐Ÿ–ผ๏ธ ๐Ÿงญ ๐Ÿงฎ ๐ŸงŠ ๐Ÿงฑ ๐Ÿงฌ ๐Ÿงช ๐Ÿงซ โ–ฆ โ—ฎ โ˜Ž โ˜น โ˜บ โ™Ÿ โ™ป โ™ผ โš” โš’ โš• โšช ๐ŸงŠ ๐ŸŒ€ ๐Ÿ›ฐ๏ธ")
  y+h:DrawText(0, y,"๐Ÿ”Š ๐Ÿ”‰ ๐Ÿ”ˆ ๐Ÿ”‡ ๐Ÿ”” ๐Ÿ”• ๐Ÿ” ๐Ÿ”Ž ๐Ÿ•น๏ธ ๐ŸŽฎ ๐Ÿ–ฒ๏ธ ๐Ÿ–ฑ๏ธ ๐Ÿ’ป ๐Ÿ–ฅ๏ธ ๐Ÿ’ฝ ๐Ÿ’พ ๐Ÿ’ฟ ๐Ÿ“€๐Ÿ”–๐Ÿ“œ๐Ÿ“ƒโ˜‘๏ธโœ…")
  y+h:DrawText(0, y,"โ–ถ๏ธ โธ๏ธ โน๏ธ โบ๏ธ โญ๏ธ โฎ๏ธ โฉ โช ๐Ÿ” ๐Ÿ”‚ ๐Ÿ”€ ๐Ÿ”„ ๐Ÿ”ƒ ๐ŸŽต ๐ŸŽถ ๐ŸŽผ ๐ŸŽง ๐ŸŽค ๐ŸŽ™๏ธ ๐ŸŽš๏ธ ๐ŸŽ›๏ธ")
  y+h:DrawText(0, y,"๐Ÿšถ ๐Ÿšถโ€โ™‚๏ธ ๐Ÿšถโ€โ™€๏ธ ๐Ÿƒ ๐Ÿƒโ€โ™‚๏ธ ๐Ÿƒโ€โ™€๏ธ ๐Ÿง ๐Ÿงโ€โ™‚๏ธ ๐Ÿงโ€โ™€๏ธ ๐ŸงŽ ๐ŸงŽโ€โ™‚๏ธ ๐ŸงŽโ€โ™€๏ธ ๐Ÿ•บ ๐Ÿ’ƒ ๐Ÿง˜ ๐Ÿง‘โ€๐Ÿฆฏ ๐Ÿง‘โ€๐Ÿฆผ ๐Ÿง‘โ€๐Ÿฆฝ")
  y+h:DrawText(0, y,"โ™ผโ™ฝโš—โšœโšกโšฐโšฝโ™ปโ›„โšพโ›โ›‘โ›“โ›”โ›ฝโœ‚โญ")
  
StopDrawing()

Repeat
  ev= WindowEvent()
  Select ev
    Case #PB_Event_Gadget
      eg=  EventGadget()
      et=    EventType()
      Select eg
        Case 0
      EndSelect
    Case #PB_Event_CloseWindow
      Break
  EndSelect
  Delay(1)
ForEver

Re: Emojis [MULTI SYS]

Posted: Wed Nov 19, 2025 11:10 pm
by Mindphazer
There were some typo errors inside the loop :mrgreen:
Here's the portion of the code corrected

Code: Select all

Repeat
  ev= WaitWindowEvent()
  Select ev
    Case #PB_Event_Gadget
      eg=  EventGadget()
      et=    EventType()
      Select eg
        Case 0
      EndSelect
    Case #PB_Event_CloseWindow
      Break
  EndSelect
  ;Delay(1)
ForEver

Re: Emojis [MULTI SYS]

Posted: Thu Nov 20, 2025 2:47 am
by minimy
Fixed!
I dont know how appear the # before ev?? :shock:
Its crazy! :lol:
Thanks for correction! :oops:

Re: Emojis [MULTI SYS]

Posted: Thu Nov 20, 2025 8:12 am
by infratec
Your code is still not running correct (not stopable)
Use EnableExplicit to see why not :wink:

Re: Emojis [MULTI SYS]

Posted: Thu Nov 20, 2025 10:04 am
by Piero
More fixes for Mac (tested on Sequoia):

Code: Select all

  DrawingMode(#PB_2DDrawing_NativeText)

  ;Box(0,0,h-1,h-1,$88ff88)

Re: Emojis [MULTI SYS]

Posted: Thu Nov 20, 2025 11:14 am
by Piero
Wowโ€ฆ FrontColor absence confused me on windows (I had removed it on Mac)โ€ฆ works well if set to non-dpiawareโ€ฆ

Code: Select all

; Emoji fonts
CompilerIf #PB_Compiler_OS= #PB_OS_Windows
   fontEmoji.s= "Segoe UI Emoji"
CompilerElseIf #PB_Compiler_OS= #PB_OS_MacOS
   fontEmoji.s= "Apple Color Emoji"
CompilerElseIf #PB_Compiler_OS= #PB_OS_Linux
   fontEmoji.s= "Noto Color Emoji"
CompilerEndIf
LoadFont(0,fontEmoji,20,#PB_Font_HighQuality)

BackgndColor= RGB(255,255,223)

OpenWindow(0,0,0,1400,800,"Emoji test",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
canvas= CanvasGadget(#PB_Any,0,0,1400,800)
StartDrawing(CanvasOutput(canvas))
Box(0,0,1400,800,BackgndColor)
DrawingMode(#PB_2DDrawing_NativeText)
FrontColor(0):BackColor(BackgndColor) ; FrontColor not needed on Mac
DrawingFont(FontID(0))
h=50
y=-h
y+h:DrawText(5, y,"โ—€๏ธ ๐Ÿ”ผ ๐Ÿ”ฝ โ–ถ๏ธ ๐Ÿ—บ๏ธ โ˜ขโ˜ฃโ˜•โ˜”โ˜ฏโ˜ฎโ˜ชโ˜ฆโ˜ธโ™Ÿโ™ โ™ฃโ™ฅโ™ฆโ›ฝโœ‚โœ—โœ“โœ”โœ˜โœจโœตโฃโคดโคต")
y+h:DrawText(5, y,"๐Ÿงฉ โŒ โœ… โš  ๐ŸŽฏ ๐Ÿ” ๐Ÿ›ก๏ธ ๐ŸŒ ๐Ÿงญ ๐Ÿ’ป ๐Ÿ“Š ๐Ÿ’ฌ ๐Ÿ”’ ๐Ÿ”ช ๐ŸŽ™๏ธ ๐ŸŽน ๐Ÿ”ด")
y+h:DrawText(5, y,"๐Ÿง  ๐Ÿ˜Ž ๐Ÿงช ๐Ÿ” ๐Ÿ“œ ๐Ÿ”ง ๐Ÿ”ค โฑ๏ธ ๐Ÿ“ฆ ๐ŸŒ ๐Ÿ“‚ ๐Ÿงผ ๐Ÿ“ ๐Ÿงฌ ๐ŸŽต ๐ŸŽผ ๐ŸŒฟ ๐Ÿƒ ๐Ÿ€๐Ÿข ๐Ÿ  ๐Ÿ›๏ธ ๐Ÿฌ ๐Ÿ—๏ธ๐Ÿ’ก ๐Ÿช” ๐Ÿ•ฏ๏ธ๐ŸŒณ ๐ŸŒฒ๐Ÿšง")
StopDrawing()

While WaitWindowEvent() <> #PB_Event_CloseWindow : Wend

Re: Emojis [MULTI SYS]

Posted: Fri Nov 21, 2025 3:20 pm
by minimy
LOL! yes, now is fixed. :lol: