|
Me too, Me too!!!
Happy Birthday.
Have lots of them, they are good for you health.
>64
Itβs weird being the same age as old people. Live every day like it is your last; one day, it will be.
|
|
|
|
|
Wordle 1,154 3/6
β¬π¨β¬π¨β¬
π¨β¬π©β¬π©
π©π©π©π©π©
|
|
|
|
|
Wordle 1,154 3/6*
π¨π©β¬β¬π©
π¨π©π©β¬π©
π©π©π©π©π©
Lot of options going on there!
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
π¨π©π©β¬π©
π©π©π©π©π©
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
Wordle 1,154 6/6*
β¬β¬π©β¬π©
β¬β¬π©π¨π©
β¬π©π©β¬π©
π¨π©π©β¬π©
β¬π©π©π©π©
π©π©π©π©π©
|
|
|
|
|
Wordle 1,154 3/6
π¨β¬β¬π¨π©
β¬π©π©π©π©
π©π©π©π©π©
Ok, I have had my coffee, so you can all come out now!
|
|
|
|
|
Wordle 1,154 4/6
β¬β¬β¬β¬π©
β¬β¬β¬π¨π©
π©π©β¬β¬π©
π©π©π©π©π©
Within you lies the power for good - Use it!
|
|
|
|
|
Wordle 1,154 6/6*
π¨β¬β¬β¬π©
β¬β¬π©π¨π©
β¬π©π©β¬π©
β¬π©π©β¬π©
π©π©π©β¬π©
π©π©π©π©π©
|
|
|
|
|
Wordle 1,154 5/6
β¬π¨β¬β¬β¬
π¨π¨β¬π¨π©
π©π©π©β¬π©
π©π©π©β¬π©
π©π©π©π©π©
"A little time, a little trouble, your better day"
Badfinger
|
|
|
|
|
God I hate it. It took me ages to go from this:
Render before fix[^]
Which was wrong, to this
Render after fix[^]
Still not perfect. The red rectangle is the result of "measuring" the space the text will occupy.
It works great for some fonts, but certain Truetype fonts still aren't quite perfect. It's frustrating the heck out of me.
Why does it have to be such a pain? Between ascent, descent, baseline, line height, line advance, and individual glyph offsets and dimensions it's like CSS for text. WTH?
This code... my god, it's full of corner cases! but it works pretty well at this point.
Excerpt just so you understand how nasty it is.
uint16_t em_width = 0;
uint16_t x_ext = 0, y_ext = 0;
uint16_t x = 0,y=0;
uint32_t cp=0, cp_next=0;
size_t advlen = len;
size_t advlen_next = 0;
const uint16_t lineadv = this->line_advance();
gfx_result res = encoding.to_utf32(sz,&cp,&advlen);
if(res!=gfx_result::success) {
return res;
}
sz+=advlen;
len-=advlen;
if(*sz) {
advlen_next = len;
res = encoding.to_utf32(sz,&cp_next,&advlen_next);
if(res!=gfx_result::success) {
return res;
}
sz+=advlen_next;
len-=advlen_next;
y_ext = lineadv;
} else {
out_area->width = 0;
out_area->height = 0;
return gfx_result::success;
}
font_glyph_info em_gi;
uint16_t xo, cw;
bool cached;
int tail;
while(1) {
font_glyph_info gi;
switch(cp) {
case '\t':
if(em_width==0) {
cached = false;
if(cache!=nullptr) {
if(gfx_result::success==cache->find('M',0,&em_gi)) {
cached = true;
}
}
if(!cached) {
res=on_measure('M',0,&em_gi);
if(res!=gfx_result::success) {
return res;
}
if(cache!=nullptr) {
cache->add('M',0,em_gi);
}
}
em_width=em_gi.advance_width;
}
cw = em_width*tab_width;
x=((x/cw)+1)*cw;
if(x>=max_width) {
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
modified 16-Aug-24 4:03am.
|
|
|
|
|
Perhaps Sanskrit would be simpler.
|
|
|
|
|
It probably would be. I think it's effectively monospaced.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
You keep pointing out how you are working on a memory-constrained, embedded system so why in the wide world of sports are you supporting TrueType fonts?
JUST SAY NO!
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
For many reasons.
A) It can be smaller to load a 30KB TTF font like "Telegrama" over at fontsquirrel.com than it would be to render it all out to anti-aliased alpha transparency maps with the requisite kerning tables. Particularly if you need it in several sizes
B) I work with design teams that produce content in a particular style and want it replicated as closely as possible. It's fast for me to just embed a proper TTF from somewhere like fontsquirrel - or even one they give me rather than having to try to prune and create a specific VLW fontset
C) Although this isn't as true of my professional projects, my hobby projects often target multiple pieces of hardware with different display resolutions. TTF scales. Fixed raster fonts do not. And I *have* had to do this professionally a few times when we hadn't finalized the hardware yet.
D) ARM CPUs have pretty decent floating point, and can handle my TTF and SVG rendering with relative ease. The ESP32 struggles a bit, but it's more of a hobbyist chip anyway. Edit: I should add that even then it's very usable in many situations and I employ it several of my hobby projects.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
modified 16-Aug-24 13:47pm.
|
|
|
|
|
This[^] set of time-lapse 8K images is stunning. We live in a beautiful universe.
|
|
|
|
|
Yes, and it's a terrible shame that the distances are so vast that we can't visit more places in it.
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
you haven't ?
CI/CD = Continuous Impediment/Continuous Despair
|
|
|
|
|
Warp 9, Mr. Sulu.
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
Beautiful
We can't be alone in this.
A home without books is a body without soul. Marcus Tullius Cicero
PartsBin an Electronics Part Organizer - Release Version 1.4.0 (Many new features) JaxCoder.com
Latest Article: EventAggregator
|
|
|
|
|
I can imagine someone on a far off planet saying something to effect of,
"Andromeda for the win"
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment
"Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst
"I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
|
|
|
|
|
|
Maybe that was uploaded as an 8K video, but the best YT shows as available is 4K.
[Edit]
Interesting. yt-dlp does show 8K as an available download format.
Not that I have the hardware to view it on...
|
|
|
|
|
I've read a number of books where characters are out sailing in some vast ocean. Most of us have never seen anything like this due to light pollution. But when you are deep into the Atlantic or Pacific, it's supposed to be a different kind of view. Back in the early 80s, I lived in southern Arizona. You could drive west toward Kitt Peak to get away from the light pollution (not too bad then), and the evening skies were spectacular.
I grew up in the southeast, and we have this thing called humidity. In Arizona, I saw stars and bands of stars that I never had seen.
Charlie Gilley
βThey who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.β BF, 1759
Has never been more appropriate.
|
|
|
|
|
So, here I am continuing to get my learn on with Zig (still not crazy about the name, but whatevs). And you have to endure people saying crap that's so annoying to any intelligent person. Given this C example:
#include <stdio.h>
typedef struct {
int bro;
} bruh;
int main() {
bruh dude = { .bro = 42 };
bruh *pDude = &dude;
printf("o.O %i\n", pDude->bro);
return 0;
}
This would be the same thing in Zig:
const std = @import("std");
const bruh = struct { bro: i32 };
pub fn main() !void {
const dude = bruh{ .bro = 42 };
const pDude = &dude;
const stdout = std.io.getStdOut().writer();
// notice the .* syntax, that's the "reason for the OMGs"
// zig will also automatically dereference one level deep
// so the second syntax will work as well
try stdout.print("o.O {} {}\n", .{ pDude.*.bro, pDude.bro });
}
Then you here people say, "OMG OMG OMG OMG THIS IS THE BEST THING EVER COMPARED TO C", because they can type .* rather than -> . The automatic dereferencing of one level deep is cool, but ya know... peeps acting like this is the cure for cancer.
I dunno about you guys, but I instantly question someone's seniority and talent as a dev when I hear that nonsense. Don't get me wrong, Zig has some really, really nice things. But... bruh.
Jeremy Falcon
|
|
|
|
|
Why can't it dereference N-deep?
That can't be so hard to make happen?
How does -> work on a deeper nest? Or does it?
|
|
|
|