<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3890933</guid>
        <pubDate>Mon, 15 May 2023 16:45:40 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3890933</link>
        <description><![CDATA[macomics: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=434221&view=findpost&p=3890919'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>ЫукпШ &#064; <time class="tag-quote__quoted-time" datetime="2023-05-15T13:21:40+03:00">15.05.23, 10:21</time></span><div class='quote '>Эта книга может быть интересна для решения такой задачи:<br>
Том 4</div></div><br>
А теперь тоже самое, но под Lazarus на Linux.]]></description>
        <author>macomics</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3890919</guid>
        <pubDate>Mon, 15 May 2023 10:21:40 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3890919</link>
        <description><![CDATA[ЫукпШ: <strong class='tag-b'>macomics</strong>, можно попытаться использовать<br>
эти функции:<br>
<a class='tag-url' href='https://learn.microsoft.com/ru-ru/windows/win32/api/winuser/nf-winuser-physicaltologicalpointforpermonitordpi' target='_blank'>PhysicalToLogicalPointForPerMonitorDPI</a><br>
<a class='tag-url' href='https://learn.microsoft.com/ru-ru/windows/win32/api/winuser/nf-winuser-physicaltologicalpointforpermonitordpi' target='_blank'>LogicalToPhysicalPointForPerMonitorDPI</a><br>
<a class='tag-url' href='https://learn.microsoft.com/ru-ru/windows/win32/api/winuser/nf-winuser-physicaltologicalpoint' target='_blank'>PhysicalToLogicalPoint</a><br>
<a class='tag-url' href='https://learn.microsoft.com/ru-ru/windows/win32/api/winuser/nf-winuser-logicaltophysicalpoint' target='_blank'>LogicalToPhysicalPoint</a><br>
Эта книга может быть интересна для решения такой задачи:<br>
<a class='tag-url' href='https://frolov-lib.ru/books/bsp/v14/ch2_2.htm?ysclid=lhop6du65w143702782' target='_blank'>Том 4</a>]]></description>
        <author>ЫукпШ</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889254</guid>
        <pubDate>Sat, 08 Apr 2023 07:20:49 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889254</link>
        <description><![CDATA[macomics: За 5 минут набросал примерную форму калибровки<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">object Form1: TForm1</div><div class="code_line">&nbsp;&nbsp;Left = 192</div><div class="code_line">&nbsp;&nbsp;Top = 124</div><div class="code_line">&nbsp;&nbsp;Width = 570</div><div class="code_line">&nbsp;&nbsp;Height = 463</div><div class="code_line">&nbsp;&nbsp;Caption = &#39;Form1&#39;</div><div class="code_line">&nbsp;&nbsp;Color = clBtnFace</div><div class="code_line">&nbsp;&nbsp;Font.Charset = DEFAULT_CHARSET</div><div class="code_line">&nbsp;&nbsp;Font.Color = clWindowText</div><div class="code_line">&nbsp;&nbsp;Font.Height = -11</div><div class="code_line">&nbsp;&nbsp;Font.Name = &#39;MS Sans Serif&#39;</div><div class="code_line">&nbsp;&nbsp;Font.Style = []</div><div class="code_line">&nbsp;&nbsp;OldCreateOrder = False</div><div class="code_line">&nbsp;&nbsp;OnCreate = FormCreate</div><div class="code_line">&nbsp;&nbsp;OnPaint = FormPaint</div><div class="code_line">&nbsp;&nbsp;PixelsPerInch = 96</div><div class="code_line">&nbsp;&nbsp;TextHeight = 13</div><div class="code_line">&nbsp;&nbsp;object ScrollBar1: TScrollBar</div><div class="code_line">&nbsp;&nbsp; &nbsp;Left = 160</div><div class="code_line">&nbsp;&nbsp; &nbsp;Top = 8</div><div class="code_line">&nbsp;&nbsp; &nbsp;Width = 385</div><div class="code_line">&nbsp;&nbsp; &nbsp;Height = 17</div><div class="code_line">&nbsp;&nbsp; &nbsp;LargeChange = 10</div><div class="code_line">&nbsp;&nbsp; &nbsp;Max = 385</div><div class="code_line">&nbsp;&nbsp; &nbsp;Min = 1</div><div class="code_line">&nbsp;&nbsp; &nbsp;PageSize = 0</div><div class="code_line">&nbsp;&nbsp; &nbsp;Position = 1</div><div class="code_line">&nbsp;&nbsp; &nbsp;TabOrder = 0</div><div class="code_line">&nbsp;&nbsp; &nbsp;TabStop = False</div><div class="code_line">&nbsp;&nbsp; &nbsp;OnScroll = ScrollBar2Scroll</div><div class="code_line">&nbsp;&nbsp;end</div><div class="code_line">&nbsp;&nbsp;object ScrollBar2: TScrollBar</div><div class="code_line">&nbsp;&nbsp; &nbsp;Left = 160</div><div class="code_line">&nbsp;&nbsp; &nbsp;Top = 32</div><div class="code_line">&nbsp;&nbsp; &nbsp;Width = 17</div><div class="code_line">&nbsp;&nbsp; &nbsp;Height = 385</div><div class="code_line">&nbsp;&nbsp; &nbsp;Kind = sbVertical</div><div class="code_line">&nbsp;&nbsp; &nbsp;LargeChange = 10</div><div class="code_line">&nbsp;&nbsp; &nbsp;Max = 385</div><div class="code_line">&nbsp;&nbsp; &nbsp;Min = 1</div><div class="code_line">&nbsp;&nbsp; &nbsp;PageSize = 0</div><div class="code_line">&nbsp;&nbsp; &nbsp;Position = 10</div><div class="code_line">&nbsp;&nbsp; &nbsp;TabOrder = 1</div><div class="code_line">&nbsp;&nbsp; &nbsp;TabStop = False</div><div class="code_line">&nbsp;&nbsp; &nbsp;OnScroll = ScrollBar2Scroll</div><div class="code_line">&nbsp;&nbsp;end</div><div class="code_line">end</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">unit Unit1;</div><div class="code_line">&nbsp;</div><div class="code_line">interface</div><div class="code_line">&nbsp;</div><div class="code_line">uses</div><div class="code_line">&nbsp;&nbsp;Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,</div><div class="code_line">&nbsp;&nbsp;Dialogs, ScktComp, Menus, StdCtrls;</div><div class="code_line">&nbsp;</div><div class="code_line">type</div><div class="code_line">&nbsp;&nbsp;TForm1 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp;ScrollBar1: TScrollBar;</div><div class="code_line">&nbsp;&nbsp; &nbsp;ScrollBar2: TScrollBar;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure FormPaint(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure FormCreate(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Private declarations }</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Public declarations }</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Form1: TForm1;</div><div class="code_line">&nbsp;</div><div class="code_line">implementation</div><div class="code_line">&nbsp;</div><div class="code_line">{$R *.dfm}</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.FormCreate(Sender: TObject);</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp; SDC: HDC;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp; SDC := GetDC(0);</div><div class="code_line">&nbsp;&nbsp; ScrollBar1.Position := Round(10 * GetDeviceCaps(SDC, LOGPIXELSX) / 25.4);</div><div class="code_line">&nbsp;&nbsp; ScrollBar2.Position := Round(10 * GetDeviceCaps(SDC, LOGPIXELSY) / 25.4);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.FormPaint(Sender: TObject);</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp; with Canvas do begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;MoveTo(10, 10);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;LineTo(10 + ScrollBar1.Position, 10);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;MoveTo(20, 20);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;LineTo(20, 20 + ScrollBar2.Position);</div><div class="code_line">&nbsp;&nbsp; end;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.ScrollBar2Scroll(Sender: TObject; ScrollCode: TScrollCode;</div><div class="code_line">&nbsp;&nbsp;var ScrollPos: Integer);</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp; Repaint;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">end.</div></ol></div></div></div></div>]]></description>
        <author>macomics</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889251</guid>
        <pubDate>Fri, 07 Apr 2023 21:49:31 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889251</link>
        <description><![CDATA[The_Immortal: <strong class='tag-b'>macomics</strong>, я даже не могу нагуглить как вручную откалибровать монитор свой, а уж тем паче как это делать через дельфик... :(<br>
Вот, к примеру, как люди &quot;<a class='tag-url' href='https://forum.ixbt.com/topic.cgi?id=28:29053' target='_blank'>развлекаются</a>&quot; с калибровкой через переустановку драйверов. О каком тут взаимодействии с пользователем может идти речь?..]]></description>
        <author>The_Immortal</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889249</guid>
        <pubDate>Fri, 07 Apr 2023 20:02:37 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889249</link>
        <description><![CDATA[macomics: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=434221&view=findpost&p=3889243'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Majestio &#064; <time class="tag-quote__quoted-time" datetime="2023-04-07T14:53:29+00:00">07.04.23, 14:53</time></span><div class='quote '>предусмотри свою калибровку&#33;</div></div><br>
Поддерживаю. Сделать это не так сложно, но придётся взаимодействовать с пользователем. Иначе не узнать истинный размер.]]></description>
        <author>macomics</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889243</guid>
        <pubDate>Fri, 07 Apr 2023 14:53:29 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889243</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=434221&view=findpost&p=3889207'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>The_Immortal &#064; <time class="tag-quote__quoted-time" datetime="2023-04-07T07:20:10+00:00">07.04.23, 07:20</time></span><div class='quote '>Ну DPI и размеры можно же узнавать?</div></div><br>
DPI корректны <strong class='tag-b'>исключительно</strong> из технических характеристик матриц, а не то, что отображает венда. <br>
При этом следует понимать, что монитор/дисплей/панель/возможно смартфон - не обязаны работать в предопределенным оптимальном заводском видио-режиме. Андестенд?<br>
<br>
P.S. В свое дело я было занялся идентификацией CPU ... но вовремя бросил это неблагодарное дело, когда список CPU превысил 30шт.<br>
P.PS. Если тебе нужен &quot;строгий&quot; сантиметр сетки на экране - предусмотри свою калибровку&#33; Самый надёжный варик - имхо.]]></description>
        <author>Majestio</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889207</guid>
        <pubDate>Fri, 07 Apr 2023 07:20:10 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889207</link>
        <description><![CDATA[The_Immortal: <strong class='tag-b'>Majestio</strong>, <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=434221&view=findpost&p=3889200'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Majestio &#064; <time class="tag-quote__quoted-time" datetime="2023-04-07T07:10:10+00:00">07.04.23, 07:10</time></span><div class='quote '>Это зависит от заявленной DPI и физических размеров отображаемой области экрана</div></div>Ну DPI и размеры можно же узнавать? Касательно DPI, кстати, тоже проблема - Венда всегда возвращает значением 96, такой некий baseline. Как узнать это значение реальное - не ясно.]]></description>
        <author>The_Immortal</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889200</guid>
        <pubDate>Fri, 07 Apr 2023 07:10:10 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889200</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=434221&view=findpost&p=3889195'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>The_Immortal &#064; <time class="tag-quote__quoted-time" datetime="2023-04-06T19:20:27+00:00">06.04.23, 19:20</time></span><div class='quote '>Проблема ж, как я понимаю, в невозможности определить размер экрана?</div></div><br>
Все упирается в вопрос определения <a class='tag-url' href='https://lcdtech.info/data/pixel.size.htm' target='_blank'>размеров &quot;пикселя&quot;</a>. Это зависит от заявленной DPI и физических размеров отображаемой области экрана. По-скольку мы имеем дело с дискретными сущностями, о строгой точности можно забыть. А если принять за экран, к примеру, рекламное табло 20м x 6м, то может и о точности можно забыть, ибо там размер &quot;пикселя&quot; размеру размеру светодиода (а возможно и трех).]]></description>
        <author>Majestio</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889198</guid>
        <pubDate>Fri, 07 Apr 2023 06:18:11 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889198</link>
        <description><![CDATA[The_Immortal: <strong class='tag-b'>macomics</strong>, мне кажется, дело не в калибровке. Да и как на ноуте калибровать монитор?)<br>
Кстати, у Вас на Lazarus почему-то подлиннее вышло, но у меня все равно это не см.]]></description>
        <author>The_Immortal</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889196</guid>
        <pubDate>Thu, 06 Apr 2023 22:08:13 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889196</link>
        <description><![CDATA[macomics: Кажется стоит откалибровать монитор. У меня тоже самое рисует линию строго в 1 см.<br>
<br>
Как по горизонтали так и по вертикали. Как на Lazarus под Linux, так и на Delphi7 под Windows 7 на VirtualBox под Linux.<br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body"><br>
VirtualBox Win7<br>
<span class="b-attach" data-size="22805" data-hits="109" data-attach-id="64851" data-attach-post-id="0">
			<span class="b-attach__title"></span><a class='b-attach-link' href='https://forum.sources.ru/index.php?act=Attach&amp;type=post&amp;id=0&amp;attach_id=64851' title='Скачать файл' target='_blank'>Screenshot_20230407_005539.png</a> (, : 109)
		</span></div></div><br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body">Linux wine<br>
<span class="b-attach" data-size="5409" data-hits="98" data-attach-id="64852" data-attach-post-id="0">
			<span class="b-attach__title"></span><a class='b-attach-link' href='https://forum.sources.ru/index.php?act=Attach&amp;type=post&amp;id=0&amp;attach_id=64852' title='Скачать файл' target='_blank'>Screenshot_20230407_005716.png</a> (, : 98)
		</span></div></div><br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body">Linux lazarus<br>
<span class="b-attach" data-size="46942" data-hits="116" data-attach-id="64853" data-attach-post-id="0">
			<span class="b-attach__title"></span><a class='b-attach-link' href='https://forum.sources.ru/index.php?act=Attach&amp;type=post&amp;id=0&amp;attach_id=64853' title='Скачать файл' target='_blank'>Screenshot_20230407_010547.png</a> (, : 116)
		</span></div></div>]]></description>
        <author>macomics</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889195</guid>
        <pubDate>Thu, 06 Apr 2023 19:20:27 +0000</pubDate>
        <title>Как нарисовать сантиметр</title>
        <link>https://forum.sources.ru/index.php?showtopic=434221&amp;view=findpost&amp;p=3889195</link>
        <description><![CDATA[The_Immortal: Приветствую&#33;<br>
<br>
Рубрика глупых вопросов продолжается. Подскажите, пожалуйста, возможно ли на TImage нарисовать линию длиною ровно одим см, чтобы этот см. соответствовал через экран реальному 1см? При этом, чтобы это был см. на любом мониторе? Как я понимаю, Windows в 100% масштабе возвращает 96 DPI и с этим ничего не поделать? Проблема ж, как я понимаю, в невозможности определить размер экрана?<br>
<br>
<img class='tag-img' src='https://www.linkpicture.com/q/msg457541435-324772_2.jpg' alt='user posted image'>]]></description>
        <author>The_Immortal</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      </channel>
      </rss>
	