Automatic Font Handling Class

A while back ago, I realized that I didn't want to fill in the LOGFONT structure anymore, so I created the CAutoFont class, derived from CFont, so it can be used in place of any CFont objects that you may already have in your code. The benifit of the class is that you don't have to fill in a LOGFONT structure, or write out a huge CreateFont command. Simply define a variable of type CAutoFont, with the name of the font you want as its single parameter (Times New Roman, for example), then set its parameters as necessary:

CAutoFont font("Comic Sans MS");
font.SetBold(TRUE);
font.SetEscapement(900);
font.SetHeight(24);
CAutoFont does all of the LOGFONT and CreateFont work in the background, freeing the developer from them. Besides font manipulation functions, CAutoFont also has a function for converting its internal LOGFONT structure into a single string, which is useful if you want to store the font to the registry, for example, and a function to convert the string back. In my opinion, very useful.

I've included a sample project file with the class. Hope it serves somebody as well as it's served me.

Downloads

Download source - 3 Kb
Download demo - 24 Kb


Comments

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • On-demand EventEvent Date: March 21, 2017 With the rise in ransomware attacks, bank heists that reached new levels of sophistication, and extortion plots that were beyond anything we could have imagined, 2016 certainly was an eventful year for cybersecurity. Going into 2017, no business can afford to be uninformed about cybersecurity or unprepared for an attack. Watch this informative webinar, presented by Andrey Pozhogin, Senior B2B Product Marketing Manager at Kaspersky Lab, as he examines predictions for …

  • Microsoft® Office 365 is a top choice for enterprises that want a cloud–based suite of productivity collaboration applications. With Office 365, you get access to Microsoft™ Office solutions practically anytime, anywhere, on virtually any device. It's a great option for current Microsoft users who can now build on their experience with Microsoft™ solutions while enjoying the flexibility of a cloud-based delivery. But even organizations with no previous investment in Microsoft will find that …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date