<?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[IE-Explorer ActiveX, Metafilezugriff bzw. freie Ausgabeskalierung]]></title><description><![CDATA[<p>Hallo,</p>
<p>vielleicht hat einer von euch ja schon einmal die ActiveX Schnittstelle des IE intensiver benutzt und ein paar Stichwörter wonach ich suchen kann.</p>
<p>Konkret geht es darum ein HTML das im Control gerendert wird auslesen zu können und möglichst ohne große Informationsverluste auf eine einzelne Seite die als Metafile zugreifbar ist darzustellen (Hintergrund: Alle Ausgaben, HTML eingeschlossen, möglichst über eine Druckansicht; zudem soll eine Komplettskalierung möglich sein).</p>
<p>Was ich bereits zum Laufen bekommen habe ist eine Notlösung (Ich kopiere den Inhalt in Teilschritten in ein ebenso großes Bild und skaliere dies entsprechend) was aber zwangsweise zu einem mehr oder weniger großen Darstellungsverlust führt. Nun ist die Frage ob man irgendwie direkt auf die gerenderte Seite als (vektorbasierten) Metafile kommt, oder zumindestens eine andere (bessere) Form der Skalierung möglich ist.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/229499/ie-explorer-activex-metafilezugriff-bzw-freie-ausgabeskalierung</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Apr 2026 05:37:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/229499.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Dec 2008 16:21:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to IE-Explorer ActiveX, Metafilezugriff bzw. freie Ausgabeskalierung on Fri, 12 Dec 2008 16:21:52 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>vielleicht hat einer von euch ja schon einmal die ActiveX Schnittstelle des IE intensiver benutzt und ein paar Stichwörter wonach ich suchen kann.</p>
<p>Konkret geht es darum ein HTML das im Control gerendert wird auslesen zu können und möglichst ohne große Informationsverluste auf eine einzelne Seite die als Metafile zugreifbar ist darzustellen (Hintergrund: Alle Ausgaben, HTML eingeschlossen, möglichst über eine Druckansicht; zudem soll eine Komplettskalierung möglich sein).</p>
<p>Was ich bereits zum Laufen bekommen habe ist eine Notlösung (Ich kopiere den Inhalt in Teilschritten in ein ebenso großes Bild und skaliere dies entsprechend) was aber zwangsweise zu einem mehr oder weniger großen Darstellungsverlust führt. Nun ist die Frage ob man irgendwie direkt auf die gerenderte Seite als (vektorbasierten) Metafile kommt, oder zumindestens eine andere (bessere) Form der Skalierung möglich ist.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1629562</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1629562</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Fri, 12 Dec 2008 16:21:52 GMT</pubDate></item><item><title><![CDATA[Reply to IE-Explorer ActiveX, Metafilezugriff bzw. freie Ausgabeskalierung on Sun, 14 Dec 2008 00:36:27 GMT]]></title><description><![CDATA[<p>Suche nach IHTMLElementRenderer oder OleDraw.</p>
<pre><code class="language-cpp">HRESULT ElementGetBitmap(IDispatch *object, HBITMAP *ppv)
{
	IHTMLElementRender *renderer;
	IHTMLElement       *element;

	HRESULT hr = E_FAIL;

	if (!object-&gt;QueryInterface(IID_IHTMLElement, &amp;element))
	{
		if (!object-&gt;QueryInterface(IID_IHTMLElementRender, &amp;renderer))
		{
			// element.border and .style.border should be removed
			RECT rc;

			rc.left = 0;
			rc.top = 0;
			element-&gt;get_offsetWidth(&amp;rc.right);
			element-&gt;get_offsetHeight(&amp;rc.bottom);

			HDC     hdc = GetDC(0);
			HDC     cdc = CreateCompatibleDC(hdc);
			HBITMAP hbm = CreateCompatibleBitmap(hdc, rc.right, rc.bottom);

			hbm  = SelectObject(cdc, hbm);
			FillRect(cdc, &amp;rc, GetStockObject(WHITE_BRUSH));
			hr   = renderer-&gt;DrawToDC(cdc);
			hbm  = SelectObject(cdc, hbm);
			*ppv = hbm;

			DeleteDC(cdc);
			ReleaseDC(0, hdc);

			if (hr &lt; 0) DeleteObject(hbm);
			renderer-&gt;Release();
		}
		element-&gt;Release();
	}
	return hr;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1630182</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1630182</guid><dc:creator><![CDATA[sapero]]></dc:creator><pubDate>Sun, 14 Dec 2008 00:36:27 GMT</pubDate></item></channel></rss>