Имя: Пароль:
1C
 
Печати как картинки в табл документе...
0 Vovik
 
19.12.07
10:33
Хочу хранить в контрагенте картинку печати и потом ее выводить. Проблемма в том что есть картинки в екселе - где они "прозрачные" (видно текст под ними). Никак не получаеться сделать это в 1С.

Никто не делал подобного? Есть советы , ссылки?
1 Vovik
 
19.12.07
10:34
Причем пару раз получилось вставить в таблицу 1с вручную картинку - получилось так же прозрачно. Пробовал еще 10 раз на том же рисунке, не получаеться:(. В чем тут дело?
2 Конь в пальто
 
19.12.07
10:35
мухлюет автор-то...
3 Vovik
 
19.12.07
10:42
ап, ничего криминального
4 PaulBC
 
19.12.07
10:46
5 Defender aka LINN
 
19.12.07
10:48
(3) ОБЭПУ потом расскажешь :)
6 Vovik
 
19.12.07
10:50
(4)Спасибо, сам похожим образом присобачился в ОЛЕ из Ворда вручную прозрачно вставлять:)
А как теперь автоматически. Тоесть в зависимости от выбранного контрагента. В каком файле хранить? Как выводить?
7 Vovik
 
19.12.07
12:26
А как в OLE объект загрузить рисунок из файла? Примерчиков нет?
8 Vovik
 
19.12.07
13:13
OLE объект - рисунок WORD!!! ПРием...
Как хотя бы в 1с можно прочитать объектную модель этого объекта?
9 Vovik
 
19.12.07
13:42
Что такое Shapes -  что это?
10 PaulBC
 
19.12.07
14:08
(7) см ТекущийОбъект
11 smaharbA
 
19.12.07
14:11
ненужен тебе ворд, в (4) все расказано и показано...
12 Vovik
 
19.12.07
15:04
(11)Мне не надо ручками. Мне надо автоматически. Есть путь к файлу, есть ОЛЕ объект типа  рисунок word. Надо что бы из файла рисунок загружался в этот объект.
13 Vovik
 
19.12.07
16:45
АП
14 smaharbA
 
19.12.07
17:02
(12) и не будет ручками
на Таблица ресуешь картинку, ничего в качестве файла не указываешь, а в ней пишешь Таб.ТекущийОбъект.Загрузить(Карт), в свойствах, в тексте
а в модуле

Процедура Сформировать()
   Перем Файл,Каталог;
   Карт="";
   Если ФС.ВыбратьФайлКартинки(0,Файл,Каталог,"","","")=1 Тогда
       Карт=Каталог+Файл;
   Иначе
       Возврат;
   КонецЕсли;
   Таб=СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Таблица");
   Таб.Вывести();
   Таб.Показать();
КонецПроцедуры
15 Vovik
 
19.12.07
17:19
(14)Это мы умеем:( Она от не прозрачная - вот в чем проблемма. Поэтому я пытаюсь сделать рисунок МС Ворд - так как он прозрачно вставляется.
16 Kalen Towr
 
19.12.07
17:39
Создавай объект оле Ворда и кури его методы.
Я обычно делаю так: открываю Ворд/Ёксель, начинаю запись макроса вручную, делаю что мне нужно, останавливаю запись и смотрю в Васик-редакторе (что по alt-F11) что он там назаписывал. Потом разбираюсь с этими объектами и методами к ним в ObjectBrowser'e. Это работает и с неофисными объектами (см. Tools\Referenses), но с офисом проще - по его объектам хелп есть.
Таки образом я получил по твоей теме:

Sub Макрос1()
   Selection.InlineShapes.AddPicture FileName:= _
       "D:\Документы\Мои рисунки\PHOTOS\02.jpg", LinkToFile:=False, _
       SaveWithDocument:=True
End Sub
Sub Макрос2()
   Selection.ShapeRange.PictureFormat.TransparentBackground = msoTrue
   Selection.ShapeRange.PictureFormat.TransparencyColor = RGB(255, 255, 255)
   Selection.ShapeRange.Fill.Visible = msoFalse
End Sub
17 Vovik
 
19.12.07
17:40
Вообщем делаю так:

1)Вставляю ОЛЕ объект рисунок ворд
2)В нем пишу Печать_(Таб.ТекущийОбъект)

Функция Печать_(Картинка)
   Картинка.InlineShapes.AddPicture(pathname,1, 1);
КонецФункции

//на первый взгляд результат нулевой. Только когда я начинаю редактировать выходную таблицу вручную, он показывает мне нужную печать. Я так понимаю надо что то вроде Картинка.InlineShapes.Activate()... и все пойдет???
18 Kalen Towr
 
19.12.07
17:41
+(16) в первом открываю картинку из файла, а во втором делаю ее прозрачной
19 Vovik
 
19.12.07
17:59
Блин я замучился уже. Вобщем глючит все по страшному.

Картинка.InlineShapes.AddPicture(pathname,0, 1);
   
Картинка.InlineShapes(1).PictureFormat.TransparentBackground = 1;
Картинка.InlineShapes(1).Fill.Visible = 1;

На такой код выводил картинку но не прозрачную.

Картинка.InlineShapes(1).Fill.Visible = 1; - писал что ошибка, но если в отладчике вычислить картинка появлялась.

Теперь на первой строчке даже после перегзагрузки пишет - " Неизвестная ошибка"
20 Kalen Towr
 
19.12.07
18:00
Fill.Visible = 1 это msoFalse по-твоему?
21 Vovik
 
19.12.07
18:05
(20)Найчи как надо. Спасибо тебе за помощь, хоть как то продвинулся
22 Vovik
 
19.12.07
18:07
И какого х.. появиласть эта ошибка, не было ведь ее:

Картинка.InlineShapes.AddPicture(pathname,0, 1);
{E:\ПЕЧАТЬ.ERT(12)}: Неизвестная ошибка
23 Vovik
 
19.12.07
18:10
(22)Когда открыт ворд - нет такой ошибки, что за х... как обойти?
24 Vovik
 
19.12.07
19:46
Я решил проблемму. Без ОЛЕ. Прикинте. Кто догадаеться как? Все прозрачно как никогда:)))
25 Vovik
 
19.12.07
19:48
Завтра посмотрю догадался ли кто. Решение простое:))).
26 Vovik
 
20.12.07
09:08
АП
27 PaulBC
 
20.12.07
10:40
колись уже
28 Vovik
 
20.12.07
12:10
Я думал все забили уже:)
29 Vovik
 
20.12.07
12:14
Ладно. Колюсь:

Делаем все как в (14). А что бы подпись не заслоняла печать, делаем подпись в тексте (таблица-вставить рисунок-текст). Делаем и то и другое прозрачным, а печать на задний план. Получаеться прозрачный текст над печатью. Также можно нарисовать печать и "под таблице" просто придеться делать табличку из того же таекста с рамочкой.

Вот так вот:)
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн