<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=7923&amp;type=atom" />
	<updated>2013-01-08T13:57:13Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=7923</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68287#p68287" />
			<content type="html"><![CDATA[<p>Благодарствую <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" />.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-01-08T13:57:13Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68287#p68287</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68285#p68285" />
			<content type="html"><![CDATA[<p><a href="http://forum.script-coding.com/viewtopic.php?pid=68284#p68284">Добавил</a>.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2013-01-08T13:06:50Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68285#p68285</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68237#p68237" />
			<content type="html"><![CDATA[<p>Как насчёт Коллекции?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-01-07T07:42:50Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68237#p68237</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68046#p68046" />
			<content type="html"><![CDATA[<p>Изменил название темы на более подходящее.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2012-12-30T15:18:15Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68046#p68046</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68045#p68045" />
			<content type="html"><![CDATA[<p>Существует <a href="http://msdn.microsoft.com/en-us/library/ms740069%28VS.85%29.aspx">WinApi-функция</a> для инвертирования порядка байтов 32-битного числа:<br /></p><div class="codebox"><pre><code>psb := &quot;C:\Users\User\Desktop\Untitled-1.psb&quot;
file := FileOpen(psb, 0x100)
file.Seek(14)

H := DllCall(&quot;Ws2_32\ntohl&quot;, UInt, file.ReadUInt(), UInt)
W := DllCall(&quot;Ws2_32\ntohl&quot;, UInt, file.ReadUInt(), UInt)
file.Close()

MsgBox % &quot;Ширина - &quot; . W . &quot;`nВысота - &quot; . H
return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2012-12-30T14:52:58Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68045#p68045</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68043#p68043" />
			<content type="html"><![CDATA[<p>А, да, точно! <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Отредактирую.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2012-12-29T21:19:48Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68043#p68043</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68042#p68042" />
			<content type="html"><![CDATA[<p>Я к тому написал, что пример из поста #18, при всех его несомненных достоинствах, выдает W&lt;-&gt;H</p>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-12-29T21:17:42Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68042#p68042</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68041#p68041" />
			<content type="html"><![CDATA[<p>Хорошо, что хоть спецификацию открыли <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />. В русской <a href="http://ru.wikipedia.org/wiki/Photoshop_Document#.D0.9D.D0.B5.D0.B4.D0.BE.D1.81.D1.82.D0.B0.D1.82.D0.BA.D0.B8_.D1.84.D0.BE.D1.80.D0.BC.D0.B0.D1.82.D0.B0">WIKI</a>:<br /></p><div class="quotebox"><blockquote><p>Недостатки формата<br />...<br />&nbsp; &nbsp; Закрытые спецификации, что мешает полноценной поддержке в других программах.</p></blockquote></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2012-12-29T20:58:42Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68041#p68041</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68040#p68040" />
			<content type="html"><![CDATA[<p><strong>teadrinker</strong>, по одной им известной логике, создатели формата первым в заголовок поместили высоту изображения (Н) <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-12-29T20:46:04Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68040#p68040</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68039#p68039" />
			<content type="html"><![CDATA[<p>Или так:<br /></p><div class="codebox"><pre><code>psb := &quot;C:\Users\User\Desktop\Untitled-1.psb&quot;
file := FileOpen(psb, 0x100)
file.Seek(14)

W := H := 0
Loop 4
   H := (H &lt;&lt; 8)|file.ReadUChar()

Loop 4
   W := (W &lt;&lt; 8)|file.ReadUChar()

file.Close()
MsgBox % &quot;Ширина - &quot; . W . &quot;`nВысота - &quot; . H
return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2012-12-29T20:35:41Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68039#p68039</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68038#p68038" />
			<content type="html"><![CDATA[<p>Следующий код должен работать с любым допустимым разрешением &gt; 65К пикселей по обоим направлениям.<br /></p><div class="codebox"><pre><code>psd := &quot;d:\temp\1.psd&quot;
file := FileOpen(psd, 0x100)
File.Seek(14)
Y := Swap(file.ReadUInt())
X := Swap(file.ReadUInt())
File.Close()
MsgBox % &quot;Ширина - &quot; . X . &quot;`nВысота - &quot; . Y
return

Swap(N)
{
   Return ((0xFF0000 &amp; N)  &gt;&gt; 8)
         |((0xFF000000 &amp; N) &gt;&gt; 24)
         |((0xFF00 &amp; N)  &lt;&lt; 8)
         |((0xFF &amp; N) &lt;&lt; 24)
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-12-29T20:30:18Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68038#p68038</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68035#p68035" />
			<content type="html"><![CDATA[<p><strong>Irbis</strong>, сделаете?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2012-12-29T18:11:59Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68035#p68035</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68033#p68033" />
			<content type="html"><![CDATA[<p>Да я, собственно, с сабжем познакомился, только открыв тему. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />Сразу почему-то пришла мысль извлечь информацию из заголовка - больше времени ушло на разбирательство с big-endian порядком байтов, чем с поиском информации о формате PSD. (Кстати, мне самому не нравится такое приведение к нормальному виду, наверняка можно улучшить)<br /><strong>alexii</strong>, для работы с файлами PSB шириной/высотой до 300000 пикселей переделка скрипта будет минимальна, надо просто не отсекать старшую половину оператором &quot; &gt;&gt; 16 &quot;, а тоже обрабатывать.</p>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-12-29T16:46:51Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68033#p68033</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68022#p68022" />
			<content type="html"><![CDATA[<p>Видимо, всё же, <a href="http://en.wikipedia.org/wiki/Adobe_Photoshop#File_format">не бывает</a>. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br /></p><div class="quotebox"><blockquote><p>A PSD file has a maximum height and width of 30,000 pixels...</p></blockquote></div><p><strong>Irbis</strong>, а откуда информация, если не секрет?<br /></p><div class="codebox"><pre><code>...
File.Seek(14)
...</code></pre></div><p>upd<br />А, уже <a href="http://www.adobe.com/devnet-apps/photoshop/fileformatashtml/PhotoshopFileFormats.htm#50577409_pgfId-1055726">нашёл</a>.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2012-12-29T13:41:17Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68022#p68022</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68021#p68021" />
			<content type="html"><![CDATA[<p>Редко. Но бывает. Мне интересен код, который будет уметь работать с любыми psd.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2012-12-29T13:24:38Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68021#p68021</id>
		</entry>
</feed>
