• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Управление изображениями

KingGLEB

Active member
08.05.2008
30
0
BIT
0
Есть документ. Хочется выводить туда фото. Фото распаковывается в %Temp%\Foto.jpg. Как можно изменить размер картинки при выводе её в документ?
Если использовать

<img src="file://C:\Windows\Temp\Foto.jpg"/>

то картинка выводится в полный рост, а если

<img src="file://C:\Windows\Temp\Foto.jpg" width=10 height=10 />

то лотус игнорирует указанные размеры и выводит в том размере в котором есть. Как масштабировать? Кто подскажет решение без внешних ресайзеров?
 
S

Sandr

а если значения в кавычки брать?
 
S

Sandr

Вопросы:
1. Клиент тонкий или толстый
2. Картинку внедряете прямо на форму? Или еще как-нить?
 

KingGLEB

Active member
08.05.2008
30
0
BIT
0
Вопросы:
1. Клиент тонкий или толстый
2. Картинку внедряете прямо на форму? Или еще как-нить?
1. Клиент толстый.
2. В форме есть таблица, а в одной из ячеек этой таблицы есть хтмл тэг, приведенный выше.

Рассмотрю любые другие варианты вывода картинки с определенными размерами.
 

NetWood

Lotus Team
17.04.2008
545
93
BIT
8
<img src="file://C:\Windows\Temp\Foto.jpg" width=10 height=10 />

то лотус игнорирует указанные размеры и выводит в том размере в котором есть. Как масштабировать? Кто подскажет решение без внешних ресайзеров?
Хм. Фраза "лотус игнорирует" напрягает. Игнорирует где? В вебе? Так там лотус не причем. Он код выдает в браузер и браузер показывает.
В клиенте такие вертеля вообще не катят...

Я делаю так для веба. Два поля. Одно для мелкой картинки и показываю ее так
https://codeby.net/threads/link-na-fotku-v-rt-pole.21397/
В основном доке большую картинку, а мелкую скрываю галкой от WEB.
Все картинки надо заранее готовить под размер.
 
F

fedotxxl

Привет,
нужно при помощи LS изменять изображение jpeg (добавить текст, например). Может кто помочь в документации? OLE / DLL?
 
N

nvyush

Наверное, лучше использовать LS2J и java-библиотеки.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
по-мне адназначна - java :)
зависимо от жвм... берем либо штатный энкодер-декодер, либо заморачиваемся на доп.
для манипуляций юзаем всякие 2D фичи
начать можно отседова , в конце ссылка на sun

ежели речь прокапчу ;) -

вот замбнейлер
зарегаться надо, для прочтения
прям весь бридж расписан (в том числе с кодером/декодером), осталось для работы с текстом расширить
 
K

K-Fire

ImageMagick.

Вроде в составе есть функция которая именно добавляет текст в изображение. Вызываем с помощью командной строки.
 
A

alik86

> #6
Т.е. наиболее верным подходом будет не извращаться с автоматическим подгоном картинки под нужные размеры, а просто проверить ее размер и, если он не подходит, выдать пользователю соответствующее сообщение с предложением обратиться к какому-либо графическому редактору и подготовиться к встрече со звездой (читай с лотусом)? Или всё таки имеются элегантные способы подогнать картинку под нужный размер?
Если я в DXL задам нужные мне размеры XXXxYYY (<picture width='XXXpx' height='YYYpx'>), то картинка подгониться под эти размеры криво или же нормально?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
Если я в DXL задам нужные мне размеры XXXxYYY (<picture width='XXXpx' height='YYYpx'>), то картинка подгониться под эти размеры криво или же нормально?
это уж как напишите :), но если ДХЛ - то можно и препроцессор при загрузке ставить, кот. спокойно отресайзит, штатными ср-вами
 
A

alik86

lmike, ну как напишу? а так и напишу <picture width='100px' height='100px'>... ;)
Вот неужели меня всё таки добьют такие как Вы и я таки сяду за яву? (с универа не доверяю всяким { } да ++ ) :).
А вообще спасибо, на досуге поколупаю -- только не забывайте про "мы в ответе за тех кого приручили", буду приставать с вопросами... :)

А вот я смотрю Rich Text Lite если ему задать Limit Input: Photos всё вжимает в рамки 2,54см Х 0,635см...
Добавлено: про 2,54см Х 0,635см я погорячился, но как-то оно на первый взгляд очень даже неплохой результат даёт (таки уменьшает размер)
 
A

alik86

lmike, что-то я не сильно догоняю как подрубить приведенный по Вашей ссылке код к Лотусу. Создал я явабиблиотеку "JavaLibrary", затолкал туда этот код и что дальше?
Попробовал через LS2J, но пробы завершились ничем:
Код:
'Agent ResizeJPEG(LS2J)
Option Public
Option Declare
Use "JavaLibrary"
Sub Initialize()
Dim jSession As JavaSession 
Dim jClass As JavaClass 
Dim jObject As JavaObject 
Set jSession = New JavaSession() 
Set jClass = jSession.GetClass("JpgImage") 
Set jObject = jClass.CreateObject("D:\\ForResize.jpg") '<--- вот тут я и получил НИЧЕМ! ЧТО НАДО УКАЗЫВАТЬ В КАЧЕСТВЕ ПАРАМЕТРА?
End Sub
Собственно где мне что почитать, чтобы наверняка знать, как подрубить всё это дело к Лотусу?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
Set jObject = jClass.CreateObject("D:\\ForResize.jpg") '<--- вот тут я и получил НИЧЕМ! ЧТО НАДО УКАЗЫВАТЬ В КАЧЕСТВЕ ПАРАМЕТРА?
вот этот фокус я не понял :lovecodeby:
для начала - почитать хэлп... все классы (а String им является) и не только, передаются в конструктор с описанием
потому (лень людям описание создавать :lovecodeby: ), делают конструктор путым, и создают ф-цию инициализации, куда спокойно можно передать "совместимые" параметры, без описания
читаем в хэлпе:
"Data type mappings" перечислены типы, возможна передача фиксированных! массивов с ёваными
"CreateObject method" - это к указанной ошибке ;)
 
A

alik86

Гы. Это не фокус, это я так пустоту заполнил :lovecodeby:
 
A

alik86

Что-то я вообще запутался.
Почитал я Data type mappings, нашел там даже String mapping example который мне не дал ровным счётом ничего.
Почитал так же CreateObject method.
Нигде я не нашёл указаний, что "для того чтобы передать в конструктор String надо то-то и то-то..." (а может нашёл, да не понял?)
Перепробовал кучу всего:
Set jObject = jClass.CreateObject("(Ljava/lang/String)V", "D:\\ForResize.jpg")
Set jObject = jClass.CreateObject("(Ljava/lang/String;)V", "D:\\ForResize.jpg")
Set jObject = jClass.CreateObject("(Ljava.lang.String)V", "D:\\ForResize.jpg")
Set jObject = jClass.CreateObject("(java.lang.String)V", "D:\\ForResize.jpg")
и т.д. и т.п. но на всё получил LS2J Error: Java constructor failed to execute.

Ну пережуйте мне, дремучему, ну пожалуйста! Ну напишите как мне сделать CreateObject для данного примера? (За это я даже готов пообещать подружиться с явой :mellow:)
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 933
609
BIT
177
Код:
	Dim jSession As JavaSession
Dim jClass As JavaClass
Dim jObject As JavaObject
Set jSession = New JavaSession()
Set jClass = jSession.GetClass("JpgImage")
Set jObject = jClass.CreateObject("(Ljava/lang/String;)V","C:\\ForResize.jpg")
бяда м.б. в имени файла :mellow: - его нет там где указано или формат не jpg
резалтом будут не обработанные эксепшены: throws IOException, ImageFormatException
т.к. они в конструкторе - просто вывалит по неудаче и не создаст объект (что у наблюдалось)
 
A

alik86

Ну и как это называется?!
Писал же:
Set jObject = jClass.CreateObject("(Ljava/lang/String;)V", "D:\\ForResize.jpg")
Не работало...
После того как Вы насоветовали того же - заработало. Есть в этом лотусе что-то мистическое... :mellow:
Спасибо!
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!