<div dir="ltr"><div>Hey Simon,</div>I think it doesn't use rand feature, because it never gets to that part of the code or at least not to the random_number() function which is the only rng function I could find in Harfbuzz :D.<div>I did some debugging and it goes into some coverage functions inside hb-ot-layout-common.hh from hb-ot-layout-gsub-table.hh, it's too deep for me to be able to understand it though.</div><div>So, as far as I can understand all of this either one of Indesign or Harfbuzz is doing it wrong.</div><div><br></div><div>Best,</div><div>Ales</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Feb 14, 2020 at 1:04 PM Simon Cozens <<a href="mailto:simon@simon-cozens.org">simon@simon-cozens.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 12/02/2020 19:28, Aleš Mlakar wrote:<br>
> I did a quick debug through that part of HarfBuzz and it seems it's <br>
> doing lookups and never gets to the random code.<br>
<br>
OpenType randomization on the whole isn't *really* random. Most fonts <br>
implement pseudo-random selection of alternate glyphs by going through a <br>
series of lookup rules (see e.g. the bottom of <br>
<a href="http://opentypecookbook.com/common-techniques.html" rel="noreferrer" target="_blank">http://opentypecookbook.com/common-techniques.html</a> ). As you can see, <br>
none of the techniques there actually use any source of randomness; they <br>
just apply deterministic rules to the input stream.<br>
<br>
There *is* a "rand" feature in the OpenType standard, which asks the <br>
shaper for non-deterministic random selection, but for this to work, two <br>
things need to be in place: the shaper needs to support it, and the font <br>
needs to define it. Harfbuzz as a shaper supports it, but no others do. <br>
Because of this, few fonts define it.<br>
<br>
Even then, Harfbuzz's random number implementation is only pseudorandom <br>
with a fixed random seed, so you get the same results each time anyway.<br>
<br>
I don't know whether Daft Brush uses the "rand" feature. It probably <br>
doesn't. Although if you are seeing differences between harfbuzz and <br>
InDesign, it might be that it does.<br>
<br>
In short it is down to the font.<br>
<br>
S<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Aleš Mlakar, </div><div>Programmer/Consultant</div><div><b>am.bits</b></div></div></div></div></div>