El dijous, 16 d’octubre del 2025, a les 15:45:26 (Hora d’estiu d’Europa 
central), Martin Owens va escriure:
> Thank you Albert,
> 
> On Thu, 2025-10-16 at 01:11 +0200, Albert Astals Cid wrote:
> > We can not make CairoFontEngine public, it uses GfxFont and PDFDoc on
> > its API.
> 
> I don't believe it's needed.
> 
> > That would mean basically mean all poppler core public and it's not
> > what we
> > want.
> > 
> > What you would need to do is add some API (would you use the glib
> > frontend? or
> > the cpp one?) that exercises CairoFontEngine internally and returns
> > classes
> > that don't have dependency on the poppler internals, i.e. something
> > like
> > poppler_page_get_text_page that uses TextOutputDev internally but the
> > user of
> > the API never sees that.
> 
> If like state->getFont() -> GfxFont there was a state->getCairoFont() -
> CairoFont, we could then pass that to `cairo_set_font_face`.

What is "state" in that pseudocode? a GfxState? It can not conjure cairo fonts 
from thin air, poppler does not use cairo (unless you're using a 
CairoOutputDev).

Cheers,
  Albert

> There's not a lot we can move into poppler though as we'd be doing the
> oposite of moving Inkscape's code into yours in order to output
> correctly transformed pathvectors. I'm not sure how much of that you'd
> like to hold.
> 
> Best Regards, Martin Owens




Reply via email to