Jump to content

Zeichenversatz beim E-Paper Bricklet


Recommended Posts

Hallo TF-Team,

wenn man bei E-Paper Bricklet per e_paper_296x128_draw_text Text an der Position 0,0 ausgibt (links oben), dann ist die Schrift nicht ganz sichtbar, mit Ausnahme des kleinsten Fonts 6x8. Alle Anderen Fonts scheinen die Ziffern um einige Pixel zu hoch anzusetzen.

Ist das gewollt bzw. bekannt?

 

font_6x8.png

font_24x32.png

Link to post
Share on other sites

Mh, in der Tat. Sieht im Code so aus als würden wir bei der 6x8 Schriftgröße oben links starten und dann von da skalieren. Was natürlich nicht besonders intuitiv ist.

void gui_draw_text_horizontal(const uint16_t column, const uint16_t row, const uint8_t text_length, const char *text, const uint8_t col_mul, const uint8_t row_mul, const uint8_t color) {
	for(uint8_t i = 0; i < text_length; i++) {
		for(uint8_t j = 0; j < 6; j++) {
			const uint8_t data = ((j == 5) ? 0 : font[(uint8_t)text[i]*5 + j]);
			for(uint8_t k = 0; k < 8; k++) {
				if(data & (1 << k)) {
					const uint16_t pixel_column = j*col_mul + column + i*6*col_mul;
					const uint16_t pixel_row    = k*row_mul+row;
					if((row_mul == 1) && (col_mul == 1)) {
						gui_set_pixel_color(pixel_column, pixel_row, color);
					} else {
						const int16_t x_end = pixel_column+col_mul-1;
						const int16_t y_end = pixel_row-row_mul+1;
						if((x_end < 0) || (y_end < 0)) {
							continue;
						}
						gui_draw_box(pixel_column, pixel_row, x_end, y_end, true, color);
					}
				}
			}
		}
	}
}

 

Ist echt blöd, wenn ich das jetzt ändere bricht das natürlich bestehenden Code.

Ich habs mir aufgeschrieben mir das nächstes Jahr anzugucken. Ich gehe dann durch und schaue auch ob wir woanders das gleiche Problem noch haben. Jetzt vor den Feiertagen schaffe ich es nicht mehr.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...