PDA

Просмотр полной версии : Проблема с печатью


ProFix
24.09.2006, 19:00
Есть кнопка со следующим кодом:
on (press) {print("text1","bframe");}
где text1 имя текстового поля, в котором находится текст для печати. Но этот текст слишком большой и не помещается в это поле т.е. при чтении его нужно скролить.
Проблема заключается в том, что при распечатке этого текста, печатается только то, что видно в поле text1, а то, что ниже - нет. Как сделать, чтобы печатался весь текст.
P.S. В поле text1 текст загружается из *.txt. Может подскажите как сделать, чтобы текст печатался из этого файла, если это возможно?

miramax
24.09.2006, 19:25
Возможно. Придётся создавать фиктивный, невидимый объект с авторазмером тектового поля.

ProFix
24.09.2006, 19:42
А если текст очень большой, и размер поля не подобрать?
Может у кого-нибудь есть еще варианты?

Хемуль
24.09.2006, 20:53
Может задействовать Ява-скрипт, вывести окно с HTML-документом, выписать туда текст и печатать из окна броузера? о_0

ProFix
24.09.2006, 21:22
Нет, это тоже не вариант.
Можно ли сделать, чтобы текст печатался из внешнего txt файла? Если да, то как?

Хемуль
24.09.2006, 21:43
2 ProFix:
Посмотрите ещё это:
http://www.actionscript.org/tutorials/beginner/the_printjob_class/index.shtml

ProFix
24.09.2006, 22:09
Ничего не понял... :(

Хемуль
25.09.2006, 00:56
Ничего не понял... :(
В чём проблема? Недостаточный уровень владения английским? Или же непонятна суть написанного? Ну вот вам описание класса (впрочем, в предыдущем сообщении я вам указал на класс, а его описание вы могли найти самостоятельно в Google):
http://livedocs.macromedia.com/flash/mx2004/main_7_2/00001639.html
Описание:
"Класс PrintJob позволяет Вам более эффективно печатать содержимое. В дополнение ко всему, этот класс предлагает ряд более функциональных методов, нежели функция print(), позволяя Вам генерировать печатаемое содержимое без вывода на экран, используя знакомое пользователю диалоговое окно Print и печатать неотмаштабированное содержимое. Это особенно полезно при генерировании и выводе на печать содержимого из БД и содержимого динамических текстовых полей." (с)
Если вам и так непонятно, то более я вам помочь не смогу, извините...

AlexSol
25.09.2006, 11:40
создаетс невидимое текстовое поле (как было сказано в первом ответе) и туда помещается текст.
var pintTH:TextField = _root.createTextField('pintTH', _root.getNextHighestDepth(), 0, 0, 500, 100);
pintTH._visible = false;
pintTH.wordWrap = true;
pintTH.multiline = true;
pintTH.autoSize = true;
pintTH.text = 'текстк';

потом он спокойно печатается
print_btn.onRelease = function() {
var pageCount:Number = 0;
var my_pj:PrintJob = new PrintJob();
if (my_pj.start()) {
if (my_pj.addPage("pintTH", {printAsBitmap:true}, 0)) {
pageCount++;
}
}
if (pageCount>0) {
my_pj.send();
}
delete my_pj;
};

SSinyak
07.04.2008, 21:10
Он всё равно печатает только одну страницу, код скопирован полностью, я просто сменил имя исходного текста для печатания, печатает, но только одну...

chingachgoog
07.04.2008, 21:20
Так вы и скажите, что вам нужна многостраничная печать, а то лично я понял, что вы не можете безразмерное текстовое поле сделать.

crucis
12.09.2008, 12:45
Доброго времени суток!
Точно такая же проблема, необходимо выводить на печать содержимое прокручиваемого клипа, но в AS я мало шарю. Если есть у кого исходник с реализацией печати из прокручиваемого поля - киньте плз. Буду безумно благодарен.
С уважением, Александр!