Code Monkey home page Code Monkey logo

dwbox's Introduction

DWBox

Microsoft Reference Source License

A tool for testing text shaping.

Requires at least Windows 10 build 20348 (in practice that means Windows 11)

DWBox

Text Analysis

Text Analysis

GlyphRun Analysis

GlyphRun Analysis

Using private DirectWrite binary

For details, see Dynamic-link library redirection:

  1. reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options" /v DevOverrideEnable /t REG_DWORD /d 1
  2. Create an empty file called DWBox.exe.local next to the executable
  3. Copy dwrite.dll or dwritecore.dll or textshaping.dll next to the executable. The architecture must match.
  4. Run the executable.

Use taskbar thumbnail buttons to mark different instances for easier distinction:

Thumbnail buttons

DWriteCore if available can be loaded using core as a command line argument. Note that both dwrite.dll and dwritecore.dll will be reported as loaded since DWriteCore is used only for rendering the requested text, while the user interface keeps using DirectWrite.

dwbox's People

Contributors

miloush avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

dwbox's Issues

Font file dates

  • In the tooltip, include last modified date of the font file
  • Made file path wrappable
  • Copy file path
  • Close menu on left click

Hit testing

I hope that you could implement "hovering", i.e., when you hover a glyph, its GID and metrics will be displayed.

You can even do this: when hovering over one sample, other samples' text run of the same "character" will also display GIDs and metrics

Can UAM.Interop.DirectWrite replace the DirectWriteForwarder of wpf?

I find the UAM.Interop.DirectWrite can use DWriteFactory.Shared7.GetSystemFontSet2 to get the font set. And the DWriteFactory.Shared7.CreateTextFormat can create the text format. And the DWriteFactory.Shared7.CreateTextLayout can create the text layout.

Oh, good. This is the core function of DirectWriteForwarder ! You did very well!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.