Glam Prestige Journal

Bright entertainment trends with youth appeal.

I'm using windows 7 and have a folder containing a couple of hundreds of images. Some of the image has lower values of Width and Height in pixels. I'm looking for images which have a small multiple product of this two fields. There isn't a field that sums this up in the fields list.

Image file list with width and height columns

I would like to trace down those files by exporting the file list and the width and height attributes to excel spreadsheet.

Is there and straight forword way doing so? If not, is there any workaround?

4

1 Answer

Use the following PowerShell script and then open sorted.csv with Excel, and perform further manipulation as required.

test.ps1:

$image = New-Object -ComObject Wia.ImageFile
echo ("Name,Width,Height,Area") > test.csv
dir *.png | foreach { $fname =$_.FullName $image.LoadFile($fname) $area=$image.Width*$image.Height echo ('"'+$fname+'",'+$image.Width+","+$image.Height+","+$area)
} >> test.csv
# sort the csv by area (ascending)
Import-Csv test.csv | sort Area | Export-Csv -Path sorted.csv -NoTypeInformation

Notes:

  • Uses the Wia.ImageFile Com object.
  • test.csv contains unsorted output
  • sorted.csv contains output sorted (ascending) by "Area" (Width * Height)

Example output:

PS F:\test> dir *.png Directory: F:\test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 01/09/2015 11:45 27156 1.png
-a---- 01/09/2015 11:46 17900 2.png
-a---- 21/05/2015 14:40 114304 3.png
-a---- 15/04/2015 12:56 429394 4.png
PS F:\test> .\test.ps1
PS F:\test> type test.csv
Name,Width,Height,Area
"F:\test\1.png",869,532,462308
"F:\test\2.png",870,344,299280
"F:\test\3.png",328,328,107584
"F:\test\4.png",546,494,269724
PS F:\test> type sorted.csv
"Name","Width","Height","Area"
"F:\test\3.png","328","328","107584"
"F:\test\4.png","546","494","269724"
"F:\test\2.png","870","344","299280"
"F:\test\1.png","869","532","462308"

Further Reading

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy