change Ascii Text Font to Unicode font in Python

Question:

I’m want to make normal text like this:

Hello

Into This:

 

In python.
What should I do ?

Asked By: God

||

Answers:

Your desired string is (character by character):

  • (U+1D4D7, MATHEMATICAL BOLD SCRIPT CAPITAL H (0xd835,0xdcd7))
  • (U+1D4EE, MATHEMATICAL BOLD SCRIPT SMALL E (0xd835,0xdcee))
  • (U+1D4F5, MATHEMATICAL BOLD SCRIPT SMALL L (0xd835,0xdcf5))
  • (U+1D4F5, MATHEMATICAL BOLD SCRIPT SMALL L (0xd835,0xdcf5))
  • (U+1D4F8, MATHEMATICAL BOLD SCRIPT SMALL O (0xd835,0xdcf8))

Apply str.translate method e.g. as follows:

import string

# mathematical bold script letters
mat_b_letters = ''.join([chr(x) for x in range(0x1D4D0, 0x1D503 + 1)])
# ascii letters
ascii_letters = string.ascii_uppercase + string.ascii_lowercase

trans_table   = ascii_letters.maketrans( ascii_letters, mat_b_letters)

print( 'Hello, StackOverflow user 19594133/God'.translate(trans_table))

Result: .SO73426687.py

 ,     19594133/ 

Edit: You could choose another Latin letters script (
) using their Unicode numeric values derived from the following table when computing the mat_b_letters variable – having in mind that some Unicode script does not cover all Latin letters (currently, there are holes in Unicode database version 14, for instance U+1D506 MATHEMATICAL FRAKTUR CAPITAL C or U+1D51D MATHEMATICAL FRAKTUR CAPITAL Z):

  • (U+1D400, MATHEMATICAL BOLD CAPITAL A (0xd835,0xdc00))
  • (U+1D419, MATHEMATICAL BOLD CAPITAL Z (0xd835,0xdc19))
  • (U+1D41A, MATHEMATICAL BOLD SMALL A (0xd835,0xdc1a))
  • (U+1D433, MATHEMATICAL BOLD SMALL Z (0xd835,0xdc33))
  • (U+1D434, MATHEMATICAL ITALIC CAPITAL A (0xd835,0xdc34))
  • (U+1D44D, MATHEMATICAL ITALIC CAPITAL Z (0xd835,0xdc4d))
  • (U+1D44E, MATHEMATICAL ITALIC SMALL A (0xd835,0xdc4e))
  • (U+1D467, MATHEMATICAL ITALIC SMALL Z (0xd835,0xdc67))
  • (U+1D468, MATHEMATICAL BOLD ITALIC CAPITAL A (0xd835,0xdc68))
  • (U+1D481, MATHEMATICAL BOLD ITALIC CAPITAL Z (0xd835,0xdc81))
  • (U+1D482, MATHEMATICAL BOLD ITALIC SMALL A (0xd835,0xdc82))
  • (U+1D49B, MATHEMATICAL BOLD ITALIC SMALL Z (0xd835,0xdc9b))
  • (U+1D49C, MATHEMATICAL SCRIPT CAPITAL A (0xd835,0xdc9c))
  • (U+1D4B5, MATHEMATICAL SCRIPT CAPITAL Z (0xd835,0xdcb5))
  • (U+1D4B6, MATHEMATICAL SCRIPT SMALL A (0xd835,0xdcb6))
  • (U+1D4CF, MATHEMATICAL SCRIPT SMALL Z (0xd835,0xdccf))
  • (U+1D4D0, MATHEMATICAL BOLD SCRIPT CAPITAL A (0xd835,0xdcd0))
  • (U+1D4E9, MATHEMATICAL BOLD SCRIPT CAPITAL Z (0xd835,0xdce9))
  • (U+1D4EA, MATHEMATICAL BOLD SCRIPT SMALL A (0xd835,0xdcea))
  • (U+1D503, MATHEMATICAL BOLD SCRIPT SMALL Z (0xd835,0xdd03))
  • (U+1D504, MATHEMATICAL FRAKTUR CAPITAL A (0xd835,0xdd04))
  • (U+1D51E, MATHEMATICAL FRAKTUR SMALL A (0xd835,0xdd1e))
  • (U+1D537, MATHEMATICAL FRAKTUR SMALL Z (0xd835,0xdd37))
  • (U+1D538, MATHEMATICAL DOUBLE-STRUCK CAPITAL A (0xd835,0xdd38))
  • (U+1D552, MATHEMATICAL DOUBLE-STRUCK SMALL A (0xd835,0xdd52))
  • (U+1D56B, MATHEMATICAL DOUBLE-STRUCK SMALL Z (0xd835,0xdd6b))
  • (U+1D56C, MATHEMATICAL BOLD FRAKTUR CAPITAL A (0xd835,0xdd6c))
  • (U+1D585, MATHEMATICAL BOLD FRAKTUR CAPITAL Z (0xd835,0xdd85))
  • (U+1D586, MATHEMATICAL BOLD FRAKTUR SMALL A (0xd835,0xdd86))
  • (U+1D59F, MATHEMATICAL BOLD FRAKTUR SMALL Z (0xd835,0xdd9f))
  • (U+1D5A0, MATHEMATICAL SANS-SERIF CAPITAL A (0xd835,0xdda0))
  • (U+1D5B9, MATHEMATICAL SANS-SERIF CAPITAL Z (0xd835,0xddb9))
  • (U+1D5BA, MATHEMATICAL SANS-SERIF SMALL A (0xd835,0xddba))
  • (U+1D5D3, MATHEMATICAL SANS-SERIF SMALL Z (0xd835,0xddd3))
  • (U+1D5D4, MATHEMATICAL SANS-SERIF BOLD CAPITAL A (0xd835,0xddd4))
  • (U+1D5ED, MATHEMATICAL SANS-SERIF BOLD CAPITAL Z (0xd835,0xdded))
  • (U+1D5EE, MATHEMATICAL SANS-SERIF BOLD SMALL A (0xd835,0xddee))
  • (U+1D607, MATHEMATICAL SANS-SERIF BOLD SMALL Z (0xd835,0xde07))
  • (U+1D608, MATHEMATICAL SANS-SERIF ITALIC CAPITAL A (0xd835,0xde08))
  • (U+1D621, MATHEMATICAL SANS-SERIF ITALIC CAPITAL Z (0xd835,0xde21))
  • (U+1D622, MATHEMATICAL SANS-SERIF ITALIC SMALL A (0xd835,0xde22))
  • (U+1D63B, MATHEMATICAL SANS-SERIF ITALIC SMALL Z (0xd835,0xde3b))
  • (U+1D63C, MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL A (0xd835,0xde3c))
  • (U+1D655, MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Z (0xd835,0xde55))
  • (U+1D656, MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL A (0xd835,0xde56))
  • (U+1D66F, MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Z (0xd835,0xde6f))
  • (U+1D670, MATHEMATICAL MONOSPACE CAPITAL A (0xd835,0xde70))
  • (U+1D689, MATHEMATICAL MONOSPACE CAPITAL Z (0xd835,0xde89))
  • (U+1D68A, MATHEMATICAL MONOSPACE SMALL A (0xd835,0xde8a))
  • (U+1D6A3, MATHEMATICAL MONOSPACE SMALL Z (0xd835,0xdea3))
Answered By: JosefZ
Categories: questions Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.