summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/raylib.h1
-rw-r--r--src/rtextures.c19
2 files changed, 20 insertions, 0 deletions
diff --git a/src/raylib.h b/src/raylib.h
index 4ec44b48..34b8cce4 100644
--- a/src/raylib.h
+++ b/src/raylib.h
@@ -1244,6 +1244,7 @@ RLAPI Image GenImageChecked(int width, int height, int checksX, int checksY, Col
RLAPI Image GenImageWhiteNoise(int width, int height, float factor); // Generate image: white noise
RLAPI Image GenImagePerlinNoise(int width, int height, int offsetX, int offsetY, float scale); // Generate image: perlin noise
RLAPI Image GenImageCellular(int width, int height, int tileSize); // Generate image: cellular algorithm, bigger tileSize means bigger cells
+RLAPI Image GenImageText(int width, int height, const char *text); // Generate image: grayscale image from text data
// Image manipulation functions
RLAPI Image ImageCopy(Image image); // Create an image duplicate (useful for transformations)
diff --git a/src/rtextures.c b/src/rtextures.c
index ceca1a30..45a96a16 100644
--- a/src/rtextures.c
+++ b/src/rtextures.c
@@ -893,6 +893,25 @@ Image GenImageCellular(int width, int height, int tileSize)
return image;
}
+
+// Generate image: grayscale image from text data
+Image GenImageText(int width, int height, const char *text)
+{
+ Image image = { 0 };
+
+ int textLength = TextLength(text);
+ int imageViewSize = width*height;
+
+ image.width = width;
+ image.height = height;
+ image.format = PIXELFORMAT_UNCOMPRESSED_GRAYSCALE;
+ image.data = RL_CALLOC(imageViewSize, 1);
+ image.mipmaps = 1;
+
+ memcpy(image.data, text, (textLength > imageViewSize)? imageViewSize : textLength);
+
+ return image;
+}
#endif // SUPPORT_IMAGE_GENERATION
//------------------------------------------------------------------------------------