<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Drucken Schrift ist nicht gleich gross...]]></title><description><![CDATA[<p>Hi</p>
<p>Ich habe die Funktion aus dem Forum um einen Text zu drucken...<br />
Diese funktioniert einwandfrei. Ich habe aber nun bemerkt, dass je nachdem was der Drucker für eine Auflösung hat, die Schrift nicht gleich gross ist!</p>
<p>Kann mir jemand sagen, wie ich dies korrigieren kann?</p>
<pre><code class="language-cpp">CPrintDialog dlgPrint(FALSE,PD_ALLPAGES,this); 
    UpdateData(TRUE); 
    // CString m_sText; 
    // m_AuthAnzeige.GetLine(0,m_sText.GetBuffer(NULL)); 

    int m_iLeft = 15; // in mm 
    int m_iTop = 15; // in mm 
    int m_iRight = 15; // in mm 
    int m_iButton =15; // in mm 
    CString textzudrucken;

	textzudrucken=&quot;Dies ist eine Testseite.&quot;;

    if (dlgPrint.DoModal()==IDOK) 
    { 

        CDC dcPrint; 
        dcPrint.Attach(dlgPrint.GetPrinterDC()); 
        DOCINFO myPrintJob; 
        myPrintJob.cbSize = sizeof(myPrintJob); 
        myPrintJob.lpszDocName = &quot;PrintingTest&quot;; 
        myPrintJob.lpszOutput = NULL; 
        myPrintJob.lpszDatatype = NULL; 
        myPrintJob.fwType = NULL; 
        if (dcPrint.StartDoc(&amp;myPrintJob)&gt;=0) 
        { 
            // Als Hilfe wie man bestimmte Parameter abfragt 
            int te = dcPrint.GetDeviceCaps(ASPECTY); 
            int test = dcPrint.GetDeviceCaps(ASPECTX); 
            int m_iHorizont = dcPrint.GetDeviceCaps(HORZRES); 
            int m_iVerdikal = dcPrint.GetDeviceCaps(VERTRES); 

            dcPrint.StartPage(); 
            RECT rctA; 
            rctA.left = (m_iHorizont/210) * m_iLeft; // 210 Breite DIN A4   
            rctA.top = (m_iVerdikal/297) * m_iTop; // 297 Höhe DIN A4   
            rctA.right  = m_iHorizont - ((m_iHorizont/210) * m_iRight);   
            rctA.bottom = m_iVerdikal - ((m_iVerdikal/297) * m_iButton);

			CFont newFont; 
VERIFY(newFont.CreateFont( 
    300,                       // nHeight 
    0,                         // nWidth 
    0,                         // nEscapement 
    0,                         // nOrientation 
    FW_NORMAL,                 // nWeight 
    FALSE,                     // bItalic 
    FALSE,                     // bUnderline 
    0,                         // cStrikeOut 
    ANSI_CHARSET,              // nCharSet 
    OUT_DEFAULT_PRECIS,        // nOutPrecision 
    CLIP_DEFAULT_PRECIS,       // nClipPrecision 
    DEFAULT_QUALITY,           // nQuality 
    DEFAULT_PITCH | FF_SWISS,  // nPitchAndFamily 
    &quot;Arial&quot;));                 // lpszFacename 

CFont* oldFont = dcPrint.SelectObject(&amp;newFont); 

            // dcPrint.TextOut(0,0,drucken); 
            dcPrint.DrawText(textzudrucken, &amp;rctA, DT_LEFT); 
            dcPrint.EndPage(); 
            dcPrint.EndDoc(); 
        } 
        dcPrint.DeleteDC(); 
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/83065/drucken-schrift-ist-nicht-gleich-gross</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Apr 2026 00:09:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/83065.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 17 Aug 2004 12:44:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Drucken Schrift ist nicht gleich gross... on Tue, 17 Aug 2004 12:44:09 GMT]]></title><description><![CDATA[<p>Hi</p>
<p>Ich habe die Funktion aus dem Forum um einen Text zu drucken...<br />
Diese funktioniert einwandfrei. Ich habe aber nun bemerkt, dass je nachdem was der Drucker für eine Auflösung hat, die Schrift nicht gleich gross ist!</p>
<p>Kann mir jemand sagen, wie ich dies korrigieren kann?</p>
<pre><code class="language-cpp">CPrintDialog dlgPrint(FALSE,PD_ALLPAGES,this); 
    UpdateData(TRUE); 
    // CString m_sText; 
    // m_AuthAnzeige.GetLine(0,m_sText.GetBuffer(NULL)); 

    int m_iLeft = 15; // in mm 
    int m_iTop = 15; // in mm 
    int m_iRight = 15; // in mm 
    int m_iButton =15; // in mm 
    CString textzudrucken;

	textzudrucken=&quot;Dies ist eine Testseite.&quot;;

    if (dlgPrint.DoModal()==IDOK) 
    { 

        CDC dcPrint; 
        dcPrint.Attach(dlgPrint.GetPrinterDC()); 
        DOCINFO myPrintJob; 
        myPrintJob.cbSize = sizeof(myPrintJob); 
        myPrintJob.lpszDocName = &quot;PrintingTest&quot;; 
        myPrintJob.lpszOutput = NULL; 
        myPrintJob.lpszDatatype = NULL; 
        myPrintJob.fwType = NULL; 
        if (dcPrint.StartDoc(&amp;myPrintJob)&gt;=0) 
        { 
            // Als Hilfe wie man bestimmte Parameter abfragt 
            int te = dcPrint.GetDeviceCaps(ASPECTY); 
            int test = dcPrint.GetDeviceCaps(ASPECTX); 
            int m_iHorizont = dcPrint.GetDeviceCaps(HORZRES); 
            int m_iVerdikal = dcPrint.GetDeviceCaps(VERTRES); 

            dcPrint.StartPage(); 
            RECT rctA; 
            rctA.left = (m_iHorizont/210) * m_iLeft; // 210 Breite DIN A4   
            rctA.top = (m_iVerdikal/297) * m_iTop; // 297 Höhe DIN A4   
            rctA.right  = m_iHorizont - ((m_iHorizont/210) * m_iRight);   
            rctA.bottom = m_iVerdikal - ((m_iVerdikal/297) * m_iButton);

			CFont newFont; 
VERIFY(newFont.CreateFont( 
    300,                       // nHeight 
    0,                         // nWidth 
    0,                         // nEscapement 
    0,                         // nOrientation 
    FW_NORMAL,                 // nWeight 
    FALSE,                     // bItalic 
    FALSE,                     // bUnderline 
    0,                         // cStrikeOut 
    ANSI_CHARSET,              // nCharSet 
    OUT_DEFAULT_PRECIS,        // nOutPrecision 
    CLIP_DEFAULT_PRECIS,       // nClipPrecision 
    DEFAULT_QUALITY,           // nQuality 
    DEFAULT_PITCH | FF_SWISS,  // nPitchAndFamily 
    &quot;Arial&quot;));                 // lpszFacename 

CFont* oldFont = dcPrint.SelectObject(&amp;newFont); 

            // dcPrint.TextOut(0,0,drucken); 
            dcPrint.DrawText(textzudrucken, &amp;rctA, DT_LEFT); 
            dcPrint.EndPage(); 
            dcPrint.EndDoc(); 
        } 
        dcPrint.DeleteDC(); 
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/584604</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584604</guid><dc:creator><![CDATA[addict]]></dc:creator><pubDate>Tue, 17 Aug 2004 12:44:09 GMT</pubDate></item><item><title><![CDATA[Reply to Drucken Schrift ist nicht gleich gross... on Tue, 17 Aug 2004 15:03:23 GMT]]></title><description><![CDATA[<p>Indem Du den statischen Wert 300 durch einen dynamisch errechneten Wert ersetzt, der die jeweilige Druckerauflösung mit einbezieht:</p>
<pre><code class="language-cpp">VERIFY(newFont.CreateFont( 
    -MulDiv(10, GetDeviceCaps(dcPrint,LOGPIXELSY), 72), // nHeight 
    0,                         // nWidth 
    0,                         // nEscapement 
    0,                         // nOrientation 
    FW_NORMAL,                 // nWeight 
    FALSE,                     // bItalic 
    FALSE,                     // bUnderline 
    0,                         // cStrikeOut 
    ANSI_CHARSET,              // nCharSet 
    OUT_DEFAULT_PRECIS,        // nOutPrecision 
    CLIP_DEFAULT_PRECIS,       // nClipPrecision 
    DEFAULT_QUALITY,           // nQuality 
    DEFAULT_PITCH | FF_SWISS,  // nPitchAndFamily 
    &quot;Arial&quot;));                 // lpszFacename
</code></pre>
<p>In diesem Fall ist als Schriftgröße 10 gewählt.</p>
<p>Gruß T. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/584750</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584750</guid><dc:creator><![CDATA[Theo]]></dc:creator><pubDate>Tue, 17 Aug 2004 15:03:23 GMT</pubDate></item><item><title><![CDATA[Reply to Drucken Schrift ist nicht gleich gross... on Tue, 17 Aug 2004 15:29:11 GMT]]></title><description><![CDATA[<p>Hi danke!</p>
<p>Noch eine andere Frage...</p>
<p>Wie kann ich Linien und Rechtecke drucken?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/584779</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/584779</guid><dc:creator><![CDATA[addict]]></dc:creator><pubDate>Tue, 17 Aug 2004 15:29:11 GMT</pubDate></item><item><title><![CDATA[Reply to Drucken Schrift ist nicht gleich gross... on Wed, 18 Aug 2004 07:28:50 GMT]]></title><description><![CDATA[<p>Sieh Dir mal CDC::MoveTo und CDC::LineTo für Linien an.<br />
Mit CDC::Rectangle malst Du Rechtecke.</p>
<p>Gruß T. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/585107</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/585107</guid><dc:creator><![CDATA[Theo]]></dc:creator><pubDate>Wed, 18 Aug 2004 07:28:50 GMT</pubDate></item></channel></rss>