Author Topic: Размер файла bmp в папке в пикселях.  (Read 3016 times)

0 Members and 1 Guest are viewing this topic.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Размер файла bmp в папке в пикселях.
« on: January 05, 2023, 12:37:36 PM »
Доброго времени суток всем. Можем ли мы как-нибудь определить размер файла bmp в пикселях, который лежит в папке? Мне, при нахождении картинки на экране, нужно записать не только координаты X1 и Y1, в которых она была найдена, но и X2-Y2...
Я не ду... Потому и не бу...

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Размер файла bmp в папке в пикселях.
« Reply #1 on: January 05, 2023, 09:01:40 PM »
Сначала соорудил костыль для этого дела, в виде dll, а потом нашел способ сделать это чисто кликером. Интересно... А тут никому это больше не надо?
Я не ду... Потому и не бу...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Размер файла bmp в папке в пикселях.
« Reply #2 on: January 09, 2023, 08:26:08 AM »
Когда-то давно нужно было, обходился костылём с AvtoIt.
Сейчас то можно кликером, но только на версии 4.14, а я ей не пользуюсь, там вывод лога тормозной.

Code: (clickermann) [Select]
#name "Размер картинки BMP"
// Author: Vint
// Version: 0.1 (09.01.2023)
// Скрипт для Clickermann v4.14.003b

FREADDATA("test.bmp", $warr, 18, 2)
FREADDATA("test.bmp", $harr, 22, 2)
$w = $warr[0] + $warr[1] * 256
$h = $harr[0] + $harr[1] * 256

LOGWRITE("Размер изображения: ", $w, " x ", $h)

HALT


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Размер файла bmp в папке в пикселях.
« Reply #3 on: January 09, 2023, 05:17:11 PM »
Когда-то давно нужно было, обходился костылём с AvtoIt.
Сейчас то можно кликером, но только на версии 4.14, а я ей не пользуюсь, там вывод лога тормозной.

Code: (clickermann) [Select]
#name "Размер картинки BMP"
// Author: Vint
// Version: 0.1 (09.01.2023)
// Скрипт для Clickermann v4.14.003b

FREADDATA("test.bmp", $warr, 18, 2)
FREADDATA("test.bmp", $harr, 22, 2)
$w = $warr[0] + $warr[1] * 256
$h = $harr[0] + $harr[1] * 256

LOGWRITE("Размер изображения: ", $w, " x ", $h)

HALT

Ну, я сделал в принципе то же самое, но без "загогулин" ))))

Code: (clickermann) [Select]
FREADDATA ($file, $arr)
$shirina = $arr[18]
$visota = $arr[22]
UNDEFINE ($arr)
Я не ду... Потому и не бу...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Размер файла bmp в папке в пикселях.
« Reply #4 on: January 10, 2023, 08:14:51 AM »
Это не загогулины. Зачем читать в массив весь файл. Нам ни к чему массив на ~5000 элементов ради пары чисел.
А то, что учитывается 2 байта на размер (из 4) это для универсальности. Твой ограничен размером 255px. Я бывает использую больше, например 1x600

Вот компактней
Code: (clickermann) [Select]
FREADDATA("test.bmp", $wh, 18, 6)
$w = $wh[0] + $wh[1] * 256
$h = $wh[4] + $wh[5] * 256
« Last Edit: January 10, 2023, 08:18:55 AM by Vint »


Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Размер файла bmp в папке в пикселях.
« Reply #5 on: January 10, 2023, 08:47:17 AM »
Это не загогулины. Зачем читать в массив весь файл. Нам ни к чему массив на ~5000 элементов ради пары чисел.
А то, что учитывается 2 байта на размер (из 4) это для универсальности. Твой ограничен размером 255px. Я бывает использую больше, например 1x600

Вот компактней
Code: (clickermann) [Select]
FREADDATA("test.bmp", $wh, 18, 6)
$w = $wh[0] + $wh[1] * 256
$h = $wh[4] + $wh[5] * 256

Благодарю!
Я не ду... Потому и не бу...