Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Decorate an expression with a speech bubble frame
ResourceFunction["SpeechBubble"][expr] displays expr wrapped in a speech bubble frame. | |
ResourceFunction["SpeechBubble"][speaker,expr] uses speaker as the source of the speech bubble. | |
ResourceFunction["SpeechBubble"][speaker,expr,offset] specifies that the speech bubble should be shifted by the given amount. | |
ResourceFunction["SpeechBubble"][] gives a nine-patch image that can be used to decorate other boxes as a speech bubble. |
{x,y} | a distance from the top right of expr |
Scaled[{x,y}] | coordinates scaled from 0 to 1 with respect to the size of expr |
Center etc. | {Center,Center} etc. |
Automatic | an offset automatically determined by the rendered edge of expr |
Display an expression styled as a speech bubble:
In[1]:= | ![]() |
Out[1]= | ![]() |
Include a speaker:
In[2]:= | ![]() |
Out[2]= | ![]() |
The speech can be any expression:
In[3]:= | ![]() |
Out[3]= | ![]() |
Specify an offset for the speech frame:
In[4]:= | ![]() |
Out[4]= | ![]() |
In[5]:= | ![]() |
Out[5]= | ![]() |
In[6]:= | ![]() |
Out[6]= | ![]() |
In[7]:= | ![]() |
Out[7]= | ![]() |
Use an automatic offset that pulls the speech frame towards the edge of visible content:
In[8]:= | ![]() |
Out[8]= | ![]() |
In[9]:= | ![]() |
Out[9]= | ![]() |
Don't use any offset:
In[10]:= | ![]() |
Out[10]= | ![]() |
Get a nine-patch image for the speech bubble:
In[11]:= | ![]() |
Out[11]= | ![]() |
Use it as an Appearance for a Panel:
In[12]:= | ![]() |
Out[12]= | ![]() |
Create a custom BirdSay:
In[13]:= | ![]() |
Out[13]= | ![]() |
Create an even better BirdSay:
In[14]:= | ![]() |
Out[12]= | ![]() |
Create a modernized version of cowsay, the original inspiration for BirdSay:
In[15]:= | ![]() |
In[16]:= | ![]() |
Out[16]= | ![]() |
Recreate the Unix command fortune | cowsay:
In[17]:= | ![]() |
Out[17]= | ![]() |
The speech bubble frame automatically resizes to fit content:
In[18]:= | ![]() |
Out[18]= | ![]() |
Offsets are specified with respect to the top-right corner:
In[19]:= | ![]() |
Out[19]= | ![]() |
Only the content in the speech bubble is interactive:
In[20]:= | ![]() |
Out[20]= | ![]() |
Automatic offsets will not work very well for dynamic content:
In[21]:= | ![]() |
In[22]:= | ![]() |
Out[22]= | ![]() |
In these cases, it is best to use a specific offset:
In[23]:= | ![]() |
Out[23]= | ![]() |
This work is licensed under a Creative Commons Attribution 4.0 International License