Last week some readers have kindly supplied ideas and code for a question I had asked around a form of image data compression required for specialized display hardware.
I was able to solve my issues for all but one: The black & white only device (1024 (X) x 1280 (Y)) expects the compressed data based on portrait mode, i.e. 8 pixels combined into one bytes for 1280 rows of 128 bytes. This was working well until the desire came up to be able to tilt the display and use it in landscape mode - now I needed to rotate the text, as Pillow does not seem to support drawing at angles. No big deal - or so I thought after discovering rotate: from PIL import Image, ImageFont, ImageDraw white = 1 black = 0 img = Image.new('1', (1280, 1024), white) # start in landscape mode since we need to calc. based on that draw = ImageDraw.Draw(img) fontname = 'FreeSansBold.ttf' # in real life, x and y are calculated to center or align text both vertically and horizontally x = 10 y = 500 dfont = ImageFont.truetype(fontname, 96) draw.text((x, y), 'Hallo world', black, font = dfont) draw = ImageDraw.Draw(img) rotimg = img.rotate(270) # rotation is counterclockwise # i can almost make it work by resizing rotimg here, but the aspect ratio is then screwed #rotimg = rotimg.resize((1024, 1280)) rotimg.show() imagedata = list(rotimg.getdata()) But grabbing data from the rotimg does not work as it does not seem to return an image with swapped dimensions... What am I missing? -- https://mail.python.org/mailman/listinfo/python-list