<?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[TPicture =&amp;gt; TBitmap und dann drucken = Problem]]></title><description><![CDATA[<p>Hallo Hallo,</p>
<p>ich habe ein Problem bei dem Druck eines TBitmaps.<br />
Ich habe ein TPicture das ich ganz leicht via Printer()-&gt;Canvas-&gt;Draw(...)<br />
ausdrucken kann. Kein Problem.</p>
<p>Jetzt möchte ich aber das Bild vor dem Druck drehen oder spiegeln.<br />
Dazu erstelle ich mir dann ein TBitmap und kopiere das Picture-&gt;Bitmap da rein.<br />
(mit eingebauter drehung und spiegelung)<br />
Wenn ich das dann via Printer()-&gt;Canvas-&gt;Draw(...) ausgeben will wird aber<br />
nichts ausgegeben.<br />
Woran kann das liegen?<br />
Fehlt mir da irgendwie eine Einstellung?<br />
Ich habe das auch mit einem TPicture statt eines TBitmaps gemacht, aber leider gleiches Ergebnis.<br />
Wenn ich das eine TPicture dem anderen via Assign zuweise kann ich es aber drucken. Nur eben nicht gespiegelt oder gedreht....<br />
Ich probiere jetzt mal das Assignte TPicture zu drehen und das dann zu drucken...</p>
<p>Aber ne Erklärung hätte ich doch gerne.</p>
<p>jenz</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/115085/tpicture-gt-tbitmap-und-dann-drucken-problem</link><generator>RSS for Node</generator><lastBuildDate>Thu, 23 Jul 2026 07:45:41 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/115085.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 11 Jul 2005 10:37:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to TPicture =&amp;gt; TBitmap und dann drucken = Problem on Mon, 11 Jul 2005 10:37:46 GMT]]></title><description><![CDATA[<p>Hallo Hallo,</p>
<p>ich habe ein Problem bei dem Druck eines TBitmaps.<br />
Ich habe ein TPicture das ich ganz leicht via Printer()-&gt;Canvas-&gt;Draw(...)<br />
ausdrucken kann. Kein Problem.</p>
<p>Jetzt möchte ich aber das Bild vor dem Druck drehen oder spiegeln.<br />
Dazu erstelle ich mir dann ein TBitmap und kopiere das Picture-&gt;Bitmap da rein.<br />
(mit eingebauter drehung und spiegelung)<br />
Wenn ich das dann via Printer()-&gt;Canvas-&gt;Draw(...) ausgeben will wird aber<br />
nichts ausgegeben.<br />
Woran kann das liegen?<br />
Fehlt mir da irgendwie eine Einstellung?<br />
Ich habe das auch mit einem TPicture statt eines TBitmaps gemacht, aber leider gleiches Ergebnis.<br />
Wenn ich das eine TPicture dem anderen via Assign zuweise kann ich es aber drucken. Nur eben nicht gespiegelt oder gedreht....<br />
Ich probiere jetzt mal das Assignte TPicture zu drehen und das dann zu drucken...</p>
<p>Aber ne Erklärung hätte ich doch gerne.</p>
<p>jenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/828351</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/828351</guid><dc:creator><![CDATA[jenz]]></dc:creator><pubDate>Mon, 11 Jul 2005 10:37:46 GMT</pubDate></item><item><title><![CDATA[Reply to TPicture =&amp;gt; TBitmap und dann drucken = Problem on Mon, 11 Jul 2005 11:10:07 GMT]]></title><description><![CDATA[<p>Ich gehe mal davon aus das der Fehler in der drehen bzw spiegeln Routine liegt.<br />
Zeig doch mal code.<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/828383</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/828383</guid><dc:creator><![CDATA[YLIREBUS]]></dc:creator><pubDate>Mon, 11 Jul 2005 11:10:07 GMT</pubDate></item><item><title><![CDATA[Reply to TPicture =&amp;gt; TBitmap und dann drucken = Problem on Mon, 11 Jul 2005 12:09:39 GMT]]></title><description><![CDATA[<p>okay okay,</p>
<p>ich werde mal ein minimalbsp zusammenbasteln, aber ich glaube nicht,<br />
dass es an dem drehen bzw. spiegeln liegt.</p>
<p>bis gleich,<br />
jenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/828437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/828437</guid><dc:creator><![CDATA[jenz]]></dc:creator><pubDate>Mon, 11 Jul 2005 12:09:39 GMT</pubDate></item><item><title><![CDATA[Reply to TPicture =&amp;gt; TBitmap und dann drucken = Problem on Mon, 11 Jul 2005 12:25:16 GMT]]></title><description><![CDATA[<p>so, hier ein bischen code:</p>
<pre><code>if (pd-&gt;Execute()) {
    Printer()-&gt;BeginDoc();
    TPicture *pic(new TPicture);
    pic-&gt;Assign(Image1-&gt;Picture);
    Printer()-&gt;Canvas-&gt;Draw(10,10,pic-&gt;Graphic);
    Graphics::TBitmap *bmap(new Graphics::TBitmap);
    bmap-&gt;PixelFormat = pf32bit;
    bmap-&gt;Width = pic-&gt;Width;
    bmap-&gt;Height = pic-&gt;Height;
    bmap-&gt;Canvas-&gt;Draw(0,0,pic-&gt;Graphic);
    for (int y(0);y&lt;bmap-&gt;Height/2;++y) {   // spiegeln an der horizontalen
      int *a((int*)bmap-&gt;ScanLine[y]);
      int *b((int*)bmap-&gt;ScanLine[bmap-&gt;Height-1-y]);
      for (int x(0);x&lt;bmap-&gt;Width;++x) {
        int h(a[x]);
        a[x] = b[x];
        b[x] = h;
      }
    }
    Printer()-&gt;Canvas-&gt;Draw(10,500,bmap);
    delete bmap;
    delete pic;
    Printer()-&gt;EndDoc();
  }
</code></pre>
<p>Das ist die Click routine irgendeines Buttons.<br />
Auf der Form befindet sich außerdem nur noch ein TImage (Image1) und<br />
ein PrinterDialog (pd).<br />
Das &quot;pic&quot; wird gedruckt. Das bmap leider nicht....</p>
<p>jenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/828447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/828447</guid><dc:creator><![CDATA[jenz]]></dc:creator><pubDate>Mon, 11 Jul 2005 12:25:16 GMT</pubDate></item><item><title><![CDATA[Reply to TPicture =&amp;gt; TBitmap und dann drucken = Problem on Mon, 11 Jul 2005 14:19:48 GMT]]></title><description><![CDATA[<p>Dein Code Funktioniert bei mir,</p>
<p>Dein zweites Bild ist außerhalb des bedruckbaren Bereiches nehme ich an.</p>
<p>Ich habe auch gleich zu Anfang folgendes vermisst.</p>
<p>int dpiX = GetDeviceCaps(Prntr-&gt;Handle, LOGPIXELSX);<br />
int dpiY = GetDeviceCaps(Prntr-&gt;Handle, LOGPIXELSY);</p>
<p>die x und Y Koordinaten beim Drucken mußt Du dann immer mit den aktuellen Drucker - Dpi werten muliplizieren.<br />
(d.H.: wenn du die werte für eien 600*600 DPI drucker hast mußt du den Wert durch 600 * die dpi nehmen.)</p>
<p>Prntr-&gt;Draw(50.00 / 600.00 * dpiX ,60.00 / 600.00 * dpiY,bmap);</p>
<p>P.S.<br />
um schnell ein Ergebnis zu haben stell dein Drucker mal auf 600 dpi um bevor du druckst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/828473</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/828473</guid><dc:creator><![CDATA[YLIREBUS]]></dc:creator><pubDate>Mon, 11 Jul 2005 14:19:48 GMT</pubDate></item><item><title><![CDATA[Reply to TPicture =&amp;gt; TBitmap und dann drucken = Problem on Tue, 12 Jul 2005 18:17:26 GMT]]></title><description><![CDATA[<p>Das ist ja merkwürdig, dass das bei dir funktioniert.<br />
Ich bin mir sicher, dass ich mich im Druckbereich des<br />
Druckers bewege.<br />
Naja ich werde noch ein wenig probieren.</p>
<p>Danke und bis dann,<br />
jenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/829494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/829494</guid><dc:creator><![CDATA[jenz]]></dc:creator><pubDate>Tue, 12 Jul 2005 18:17:26 GMT</pubDate></item></channel></rss>