Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
24 Май 2017, 20:41
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 

Автор Тема: Конвертация Exsel  (Прочитано 2305 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Feliks1961

  • *
  • Сообщений: 19
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-04-08
  • Сайт: 
Конфигурация:
1С:Комплексная автоматизация
//Есть файл екселя. На нем пользователь размещает картинки, схемы, надписи и т.д. в произвольном порядке как ему захочется. Как это все убожество перевести в картинку.
Как конвертировать в PDF знаю.

НовыйПринтер = "Bullzip PDF Printer (Ne05:)";
   
   ИмяФайла = "D:\A\List_1";
   
   xlsФайл = ИмяФайла+".xls";
   JPGФайл = ИмяФайла+".PDF";
   
   Эксель = Новый COMОбъект("Excel.Application");
   Эксель.DisplayAlerts = False;
   Книга = Эксель.WorkBooks.Open(xlsФайл);
   Книга = Эксель.ActiveWorkbook;
   Лист = Книга.WorkSheets(1);
   Лист.PageSetup.Zoom = False;
   Лист.PageSetup.FitToPagesWide = 1; // По ширине листа
   Лист.PageSetup.FitToPagesTall = False;
   Лист.PageSetup.Orientation = 1; // xlPortrait
   
   Эксель.Visible = True;
   
   СтарыйПринтер = Эксель.ActivePrinter;
   Сообщить("Старый - " + Эксель.ActivePrinter);
   
   Эксель.ActivePrinter = НовыйПринтер;
   
   Сообщить("Новый - " + Эксель.ActivePrinter);
   
   Попытка
      ПДФПринтер = Новый ComObject("Bullzip.PDFPrinterSettings");
      ПДФПринтер.SetValue("output", JPGФайл);
      ПДФПринтер.SetValue("ShowSaveAS", "never");
      ПДФПринтер.SetValue("ShowProgress", "no");
      ПДФПринтер.SetValue("ShowProgressFinished", "no");
      ПДФПринтер.SetValue("ShowSettings", "never");
      ПДФПринтер.SetValue("ShowPDF", "no");
      ПДФПринтер.SetValue("ConfirmOverwrite","no");
      ПДФПринтер.WriteSettings();
      Эксель.ActivePrinter = НовыйПринтер;
      Эксель.Worksheets.PrintOut();

   Исключение
      
      Сообщить(ОписаниеОшибки());
      Сообщить("Скорее всего необходимо установить или переустановить ""Bullzip PDF Printer");
   КонецПопытки;
   
   
   Эксель.ActivePrinter =  СтарыйПринтер;
   Сообщить("Новый -Старый -  " + Эксель.ActivePrinter);
   
   Эксель.Quit();

 Но как только ставлю JPGФайл = ИмяФайла+".JPG"; При открытии файла пишет "Файл поврежден или большого размера". Как это побороть?


Оффлайн Feliks1961

  • *
  • Сообщений: 19
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-04-08
  • Сайт: 
Re: Конвертация Exsel
« Ответ #1: 17 Дек 2015, 13:21 »
Решил но не совсем корректно.

Эксель.Worksheets.PrintOut(1,1,2,True);
Эксель.Worksheets.PrintOut();

При настройке Bullzip в качестве файлы указал JPG в качестве временной папки "C:\TEMP\". Единственное интересно, что к имени файла принтер добавляет "1". То есть искать файл надо "C:\TEMP\List_11.JPG".

Оффлайн Ulugbek Kirgizbaew

  • *
  • Сообщений: 2
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-12-28
  • Сайт: 
Re: Конвертация Exsel
« Ответ #2: 28 Дек 2015, 18:47 »
Привет всем. Помогите начинающим, у меня тоже проблема с печатью.
   Попытка
      ОбъектВорд = Новый COMОбъект("Word.Application");
   Исключение
      Сообщить("Ошибка при запуске Microsoft Word: " + ОписаниеОшибки(), СтатусСообщения.Внимание);
      //Возврат Неопределено;
   КонецПопытки;                                                  
   
   
    ОбъектВорд.Documents.Open("D:\1.doc");
   ШаблонВорд = ОбъектВорд.ActiveDocument;

   ШаблонВорд.Application.PrintOut(0,0,0,"","","",0,1,"2");
   //ШаблонВорд.Application.PrintOut(0,0,0,"","","",0,1,Нужное страница пример "2,8-10");
   ОбъектВорд.Application.Quit();
 
Код все нормально работает и даже печатает, но все страницы сразу печатается, а  мне нужно конкретное страница 


Теги:
 


* Реклама

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal