Версия для печати темы (https://pro1c.org.ua/index.php?s=27760a80cc49f6a2617ef1b85acbfdfd&showtopic=12574)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Водяной знак на изображениях в номенклатуре

Автор: bereznoy 23.05.13, 21:51

Есть ли возможность в 1с на картинках в номенклатуре нанести массово название фирмы ну и цену например, может кто то делал, или при сохранении на локальный диск как то обрабатывать

Автор: logist 23.05.13, 22:20

Пользоваться поиском конечно не для вас? http://pro1c.org.ua/index.php?showtopic=4290

Автор: bereznoy 23.05.13, 22:30

Цитата(logist @ 23.05.13, 23:20) http://pro1c.org.ua/index.php?act=findpost&pid=69557

Спасибо огромное, но мне надо нанести водяной знак = цене, конечно можно в одной обработке выгружать, потом наносить все что надо,потом загружать обратно к номенклатуре,но мне кажется это секс в гамаке, есть возможность выгрузить уже с водяным знаком

Автор: logist 23.05.13, 22:53

Цитата(bereznoy @ 23.05.13, 23:30) *
есть возможность выгрузить уже с водяным знаком

Так если знаете, что есть, в чем тогда проблема? Я лично не знаю ни одного стандартного метода 1с который позволял бы наносить водяные знаки на изображения, поделитесь информацией.

Автор: bereznoy 24.05.13, 10:02

Цитата(logist @ 23.05.13, 23:53) *
Так если знаете, что есть, в чем тогда проблема? Я лично не знаю ни одного стандартного метода 1с который позволял бы наносить водяные знаки на изображения, поделитесь информацией.

Извиняюсь, это вопросительно, уже переискал везде, наносить при выгрузке можно только через внешние компоненты, причем надо именно при выгрузке реализовать, как у меня все получить или если получить, то обязательно сюда выложу

Автор: bereznoy 27.05.13, 22:17

Нашел вот такой код

КВФ = Лев(КаталогВременныхФайлов(), 3)  + "SlideShowTemp\";
    СоздатьКаталог(КВФ);
    КаталогКонвертатора = КаталогВременныхФайлов() + "SlideShow\ImageMagick\";
    WScript = Новый COMОбъект("WScript.Shell");

    ИмяФайлаТекста = КВФ + "txt.txt";
    Текст = Новый ТекстовыйДокумент;
    Текст.УстановитьТекст(Надпись);
    Текст.Записать(ИмяФайлаТекста, "windows-1251", Символы.ВК);

    Темп_ИмяФайлаШрифта = КаталогВременныхФайлов() + "SlideShow\Fonts\AGCROWO.TTF";
    ИмяФайлаШрифта = КВФ + "font.TTF";
    КопироватьФайл(Темп_ИмяФайлаШрифта, ИмяФайлаШрифта);

    ИмяФайлаСлайда =КВФ +  "text." + Строка(БиблиотекаКартинок[ИмяКартинки].Формат());
    ИмяФайлаКартинки = КВФ +  "img.bmp";
    ИмяФайлаНовойКартинки = КВФ +  "img." + Строка(БиблиотекаКартинок[ИмяКартинки].Формат());
    БиблиотекаКартинок[ИмяКартинки].Записать(ИмяФайлаКартинки);

    КомандаКонвертацииКартинки = """" + КаталогКонвертатора + "convert.exe"" -background transparent -font """ + ИмяФайлаШрифта + """ -pointsize 18 -page A2 -fill #000000ff text:""" + ИмяФайлаТекста + """ -trim -bordercolor transparent -border 24 """ + ИмяФайлаСлайда + """";
    WScript.Run(КомандаКонвертацииКартинки, 0, Истина);

    ИмяФайлаПодложки = КВФ +  "source.png";
    КопироватьФайл(ИмяФайлаКартинки, ИмяФайлаПодложки);

    КомандаКонвертацииКартинки = """" + КаталогКонвертатора + "convert.exe"" """ + ИмяФайлаПодложки + """ -compose over -gravity South """ + ИмяФайлаСлайда + """ -composite -alpha off """ + ИмяФайлаКартинки + """";
    WScript.Run(КомандаКонвертацииКартинки, 0, Истина);

    Возврат ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ИмяФайлаКартинки), УникальныйИдентификатор);


У меня есть в цикле при выгрузке картинок из номенклатуры путь к картинкам, название и т.д., как мне просто наложить названия на картинки в цикле,
WScript = Новый COMОбъект("WScript.Shell");
Затем как я понимаю convert.exe уже обрабатывает изображение, вообщем нужна помощь

Автор: bereznoy 28.05.13, 23:19

Спасибо никто получить не хотел = не подсказал, вообщем то вот так сделал, теперь все ок, теперь осталось допилить (цену,артикул нанести), но это уже мелочи ))), вот код, может кому пригодиться

 КВФ = Лев(КаталогВременныхФайлов(), 3)  + "SlideShowTemp\";
    СоздатьКаталог(КВФ);
    КаталогКонвертатора = КаталогВременныхФайлов() + "SlideShow\ImageMagick\";
    WScript = Новый COMОбъект("WScript.Shell");

    ИмяФайлаТекста = КВФ + "txt.txt";
    Текст = Новый ТекстовыйДокумент;
    Текст.УстановитьТекст(Изображение1.Номенклатура.Наименование);
    Текст.Записать(ИмяФайлаТекста, "windows-1251", Символы.ВК);

    Темп_ИмяФайлаШрифта = "C:\Users\Администратор\Desktop\AGBENGR.TTF";
    ИмяФайлаШрифта = КВФ + "font.TTF";
    КопироватьФайл(Темп_ИмяФайлаШрифта, ИмяФайлаШрифта);

   ИмяФайлаСлайда =КВФ +  "text.png";
   ИмяФайлаКартинки = КВФ +  "img.jpg";
   ИмяФайлаНовойКартинки = КВФ +  "img." + Файл.Формат();
   Файл.Записать(ИмяФайлаКартинки);
   КопироватьФайл(КаталогИзображений+"\"+СокрЛП(Папки1.Папка.Родитель)+"\"+СокрЛП(Папки1.Папка.Наименование)+"\"+ИмяФайла,ИмяФайлаСлайда);
  
  
   ИмяФайлаПодложки = КВФ +  "source.png";
   КопироватьФайл(ИмяФайлаКартинки, ИмяФайлаПодложки);

    
    КомандаКонвертацииКартинки = """" + КаталогКонвертатора + "convert.exe"" -background transparent -font """ + ИмяФайлаШрифта + """ -pointsize 18 -page A2 -fill #00000fff text:""" + ИмяФайлаТекста + """ -trim -bordercolor transparent -border 24 """ + ИмяФайлаСлайда + """";
      WScript.Run(КомандаКонвертацииКартинки, 0, Истина);

    
    

    КомандаКонвертацииКартинки = """" + КаталогКонвертатора + "convert.exe"" """ + ИмяФайлаПодложки + """ -compose over -gravity South """ + ИмяФайлаСлайда + """ -composite -alpha off """ + ИмяФайлаКартинки + """";
    WScript.Run(КомандаКонвертацииКартинки, 0, Истина);
    
     КопироватьФайл(ИмяФайлаКартинки, КаталогИзображений+"\"+СокрЛП(Папки1.Папка.Родитель)+"\"+СокрЛП(Папки1.Папка.Наименование)+"\"+ИмяФайла);

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua