<?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=7958&amp;type=atom" />
	<updated>2013-01-08T13:05:40Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=7958</id>
		<entry>
			<title type="html"><![CDATA[AHK: Определение размеров изображения в PSD/PSB-файлах]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68284#p68284" />
			<content type="html"><![CDATA[<p>Информацию о размерах изображения в <a href="http://www.adobe.com/devnet-apps/photoshop/fileformatashtml/PhotoshopFileFormats.htm">psd/psb-файле</a> можно получить из его <a href="http://www.adobe.com/devnet-apps/photoshop/fileformatashtml/PhotoshopFileFormats.htm#50577409_pgfId-1055726">заголовка</a> (File Header Section). Высота изображения находится по смещению 14 от начала заголовка, ширина по смещению 18. Данные записаны в формате <a href="http://ru.wikipedia.org/wiki/Big_endian#.D0.9F.D0.BE.D1.80.D1.8F.D0.B4.D0.BE.D0.BA_.D0.BE.D1.82_.D1.81.D1.82.D0.B0.D1.80.D1.88.D0.B5.D0.B3.D0.BE_.D0.BA_.D0.BC.D0.BB.D0.B0.D0.B4.D1.88.D0.B5.D0.BC.D1.83">big-endian</a>, для <a href="http://ru.wikipedia.org/wiki/Big_endian#.D0.9A.D0.BE.D0.BD.D0.B2.D0.B5.D1.80.D1.82.D0.B0.D1.86.D0.B8.D1.8F">конвертации</a> в формат little-endian, используемый в процессорах архитектуры x86-64, можно применить api-функцию <a href="http://msdn.microsoft.com/en-us/library/ms740069%28VS.85%29.aspx">ntohl()</a>.<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><p>Авторы скрипта <strong>Irbis</strong> и <strong>teadrinker</strong>.<br /><a href="http://forum.script-coding.com/viewtopic.php?id=7923">Тема для обсуждения</a>.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2013-01-08T13:05:40Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68284#p68284</id>
		</entry>
</feed>
