Показать сообщение отдельно
Старый 18.04.2008, 00:16
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 1  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
По умолчанию printJob, первый лист пуст

такой глюк у меня случился, интересно где я накосячил
товарищи поправили код, но у них работает а у меня нет (у меня виртуальный принтер)

задача:
есть некоторый текст, надо его разбить на страницы + на каждой странице выводить номер её, заголовок, название сайта.

результат: количество распечатанных страниц правильное, но ... первый лист пуст, на втором идет тот текст, который должен быть на первой, за ним идет все правильно по порядку. в итоге из-за вставленного в начало чистого листа пропадает последний.

код:

Код:
// заполнение строки
i=0;
var str = "";
while(i < 300) {str += Math.random() * 425; i++;}
//

var charPerPage:Number = 1800;
var pages:Number = Math.floor(str.length / charPerPage) + 1;

trace("длина распечатываемой строки: " + str.length);
trace("количество страничек: " + pages);

var my_pj:PrintJob = new PrintJob();
var pageCount:Number = 0;

if (my_pj.start())
{
     for(var i:Number=0;i<pages; i++)
     {
          if (my_pj.addPage(mc, {xMin:-50,xMax:600,yMin:-50,yMax:1200})) {
               pageCount++;
               mc.txt._width = 500;
               mc.txt._height = 800;
               
               mc.txt.htmlText = "http://mydomain.com\r";
               mc.txt.htmlText += "Студия \"Рога-Копыта\". Публикации\r\r";
               mc.txt.htmlText += "<b>А это заголовок публикации\r\r</b>";
               mc.txt.htmlText += str.substr(i * charPerPage, charPerPage) + "\r\r";
               mc.txt.htmlText += "<b>Стр." + int(i+1) + "</b>";
               
               
          }     
     }
     
     if (pageCount > 0) my_pj.send();
     delete my_pj;
}
__________________
smival.com