Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Печать повёрнутого текста - не отображается. (http://www.flasher.ru/forum/showthread.php?t=203896)

Androidwww 11.10.2013 15:10

Печать повёрнутого текста - не отображается.
 
Создаю TextField запихиваю его в спрайт вывожу на принтер!
Работает замечательно! только если не делать rotationZ а мне он нужен!!!
Вращение самого спрайта с текстом тоже не вариант даже на экране не отображается!

Есть мысль разделить текст на элементы потом объединить буквы и тогда уже повернуть...
но что то я не нашел как программно это сделать. Благодарю за подсказку!

Код AS3:

/*
импорт классов
*/

import flash.printing.PrintJob;
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFieldType;
import flash.geom.Rectangle;
import flash.events.MouseEvent;
/*
спрайт, содержимое которого будем выводить на печать
*/

var sprite:Sprite = new Sprite();
addChild(sprite);
/*
динамическое текстовое поле, помещённое внутрь спрайта
*/

var txtField:TextField = new TextField();
txtField.type = TextFieldType.INPUT;
txtField.x = 50;
txtField.y = 50;
txtField.text = "Ваш текст";
txtField.rotationZ = 90;
 
sprite.addChild(txtField);
 
/*
кнопка PRINT
*/

btnPrint.addEventListener(MouseEvent.CLICK, printSprite);
function printSprite(event:MouseEvent):void
{
        /*
        создаём объект класса PrintJob
        */

        var printJob:PrintJob = new PrintJob();
        /*
        начинаем процесс печати
        */

        printJob.start();
        /*
        добавляем спрайт на печать
        */

        printJob.addPage(sprite, new Rectangle(0, 0, 550, 400));
        /*
        отправляем принтеру на печать
        */

        printJob.send();
}


Akopalipsis 11.10.2013 15:20

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

ObOs 11.10.2013 15:35

Нужно внедрить шрифт, используемый в текстовом поле.

Androidwww 11.10.2013 17:32

Цитата:

Сообщение от Akopalipsis (Сообщение 1148391)
там вроде говорилось, что текст вертеть нельзя.

rotationZ - чудесно это делает
Цитата:

Сообщение от Akopalipsis (Сообщение 1148391)
Можно растрировать и повернуть битмапу.

если можно пример как это сделать - или команду хотя бы...

Цитата:

Сообщение от ObOs;
Нужно внедрить шрифт, используемый в текстовом поле.

А внедрить куда? )) нескромный вопрос... если есть пример дай пожалста...

GrafMine 11.10.2013 18:00

Цитата:

Сообщение от Androidwww (Сообщение 1148405)
если можно пример как это сделать - или команду хотя бы...

Код AS3:

var tf:TextField = new TextField();                        
tf.text = "bitmap text";
var myBitmapData:BitmapData = new BitmapData(80, 80, false, 0x0000FF00);
myBitmapData.draw(tf);
var bmp:Bitmap = new Bitmap(myBitmapData);
bmp.rotationZ = 10;
this.addChild(bmp);


Androidwww 11.10.2013 19:47

2GrafMine как вариант подходит... (тут уже просто rotation используем )
Bitmap конечно преображает текст до неузнаваемости ) но это лучше чем ничего!

Будут еще варианты буду признателен!

maincode 11.10.2013 20:06

Цитата:

Сообщение от Androidwww (Сообщение 1148405)
А внедрить куда? )) нескромный вопрос... если есть пример дай пожалста...

Создаете файл шрифта в библиотеке Flash Pro, даете ему имя класса, например MyFont. После чего в коде необходимо зарегистрировать этот шрифт методом Font.registerFont(MyFont); (http://help.adobe.com/ru_RU/FlashPla...sterFont%28%29)

Androidwww 12.10.2013 19:36

Благодарю джентльмены!


Часовой пояс GMT +4, время: 05:37.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.