0

On this website, I can copy the Unicode laptop 💻 to my clipboard via a "Copy" button:

When I paste that Laptop into a text field in PowerPoint, the laptop appears.

However: When I try to do that manually, I fail. The decimal value of that Unicode laptop is 128187.

First, I try it in Word for proof of concept: I type Alt and 128187 on the NumPad. Result: the Font changes (I'm assuming it changes automatically to whatever font covers the needed Unicode point via its code page) and the Laptop appears. Works! So it should work in PowerPoint too, but ...

When I try the same in my PowerPoint text field: it fails! Instead I see the replacement character (black square with question mark inside). How is it possible that I can copy the laptop via the website into PowerPoint? Why doesn't it work via Alt (which works in Word)? Technically what's the difference?

0

How is it possible that I can copy the Laptop via the website into PowerPoint?

I was able to enter the character into a Word document then copy/paste into PPT. You might try that.

Why doesn't it work via ALT (which works in Word)?

Unless they've changed this in very recent updates, PPT can't enter Unicode characters via Alt+xxxx the way Word can.

Why in Word and not in PowerPoint? Different products written by different teams in different locations. Unless the Ubermanagement insists that both products behave the same, each team responds to its own customers in its own way.

0

Obviously when copying the string it'll work correctly everywhere as long as the destination supports Unicode properly because the correct characters has been pasted. However typing is an entirely different thing whose results depends on the input method and the target app, because which code points being entered depends on them

By default Alt+Decimal codes are used to input characters in ANSI or OEM code pages only and won't work for code points larger than 255. Only the last byte of the input value will be taken, i.e. modulo 256. Alt+128187 will be equivalent to Alt+187 because 128187 ≡ 187 (mod 256)

However some apps do capture the Alt shortcut and treat the decimal value differently instead of using the default Windows behavior. Some apps simply takes the first 3 digits and throw away the others. MS Word also captures the shortcut but treats the whole decimal value as the Unicode code point without modulo. Wordpad also does the same. That's why you can type 💻 that way in those applications but not others

PowerPoint doesn't do anything special to the Alt codes so you can't use that way. The standard method in Windows to type code points larger than 255 is to use the hex numpad. Create a registry key named EnableHexNumpad with type REG_SZ in HKCU\Control Panel\Input Method, set its value to 1 then reboot. After that you can type Unicode characters inside the BMP (i.e. smaller than 65536) as Alt+Numpad + then type the hex Unicode value (not decimal)

However since 💻 (U+1F4BB) is outside the BMP (128187 = 0x1F4BB > 0xFFFF = 65535), you can't type it directly. In some apps you can type it using UTF-16 surrogate pair. U+1F4BB is encoded as U+D83D U+DCBB in UTF-16 so you can get it by typing Alt+Numpad +, D83D then Alt+Numpad +, DCBB. PowerPoint however seems to discard the invalid high surrogate pair if it doesn't see a low surrogate pair right away in any applications

But why go that difficult path? Just press Windows+. (period) (or Windows+; (semicolon)) to open the emoji picker then type "laptop" and you'll get that emoji right away

If you need to type arbitrary characters from the Unicode code points then there are many other ways depending on the app you use. For example in Word, Wordpad and Libre Office you can type the hex codepoint with the optional U+ prefix then press Alt+X. For example to get the above laptop type U+1F4BB or 1F4BB then Alt+X. For many other ways see

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.